centos:ansible:basics

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
centos:ansible:basics [28.06.2020 12:10. ] – [Variablen] djangocentos:ansible:basics [28.06.2020 13:53. ] – [adhoc - Befehle] django
Zeile 790: Zeile 790:
    $ ansible intranet -m yum -a "name = chrony state = latest"     $ ansible intranet -m yum -a "name = chrony state = latest" 
  
 +==== Module - Dokumentation ====
 +Ansible bringt bei der Installation eine Vielzahl von Modulen, die sich im Verzeichnis **''../ansible/modules/''** befinden, mit, mit deren Hilfe wir uns die Abrit mit unseren Playbooks wesentlich vereinfachen können. 
 +
 +Wie diese **[[https://docs.ansible.com/ansible/latest/modules/list_of_all_modules.html|Module]]** zu verwenden sind, kann man entweder über die Ansible-Dokuseite im **[[https://docs.ansible.com/ansible/latest/modules/modules_by_category.html|WEB]]** erkunden oder auch mit Hilfe des Befehls **''ansible#doc''** erfragen.
 +
 +Also entweder im Falle des Modules**dnf** die Webseite https://docs.ansible.com/ansible/latest/modules/dnf_module.html besuchen oder auf der Konsole den Befehl **''ansible-doc dnf''** bemühen.
 +   $ ansible-doc dnf
 +<code>> DNF    (/usr/lib/python3.6/site-packages/ansible/modules/packaging/os/dnf.py)
 +
 +        Installs, upgrade, removes, and lists packages and groups with the `dnf' package
 +        manager.
 +
 +  * This module is maintained by The Ansible Core Team
 +OPTIONS (= is mandatory):
 +
 +- allow_downgrade
 +        Specify if the named package and version is allowed to downgrade a maybe already
 +        installed higher version of that package. Note that setting allow_downgrade=True can
 +        make this module behave in a non-idempotent way. The task could end up with a set of
 +        packages that does not match the complete list of specified packages to install
 +        (because dependencies between the downgraded package and others can cause changes to
 +        the packages which were in the earlier transaction).
 +        [Default: no]
 +        type: bool
 +        version_added: 2.7
 +
 +- autoremove
 +        If `yes', removes all "leaf" packages from the system that were originally installed as
 +        dependencies of user-installed packages but which are no longer required by any such
 +        package. Should be used alone or when state is `absent'
 +        [Default: no]
 +        type: bool
 +        version_added: 2.4
 +
 +- bugfix
 +        If set to `yes', and `state=latest' then only installs updates that have been marked
 +        bugfix related.
 +        [Default: no]
 +        type: bool
 +        version_added: 2.7
 +
 +- conf_file
 +        The remote dnf configuration file to use for the transaction.
 +        [Default: (null)]
 +
 +- disable_excludes
 +        Disable the excludes defined in DNF config files.
 +        If set to `all', disables all excludes.
 +        If set to `main', disable excludes defined in [main] in dnf.conf.
 +        If set to `repoid', disable excludes defined for given repo id.
 +        [Default: (null)]
 +        version_added: 2.7
 +
 +- disable_gpg_check
 +        Whether to disable the GPG checking of signatures of packages being installed. Has an
 +        effect only if state is `present' or `latest'.
 +        [Default: no]
 +        type: bool
 +
 +- disable_plugin
 +        `Plugin' name to disable for the install/update operation. The disabled plugins will
 +        not persist beyond the transaction.
 +        [Default: (null)]
 +        version_added: 2.7
 +
 +- disablerepo
 +        `Repoid' of repositories to disable for the install/update operation. These repos will
 +        not persist beyond the transaction. When specifying multiple repos, separate them with
 +        a ",".
 +        [Default: (null)]
 +
 +- download_dir
 +        Specifies an alternate directory to store packages.
 +        Has an effect only if `download_only' is specified.
 +        [Default: (null)]
 +        type: str
 +        version_added: 2.8
 +
 +- download_only
 +        Only download the packages, do not install them.
 +        [Default: no]
 +        type: bool
 +        version_added: 2.7
 +
 +- enable_plugin
 +        `Plugin' name to enable for the install/update operation. The enabled plugin will not
 +        persist beyond the transaction.
 +        [Default: (null)]
 +        version_added: 2.7
 +
 +- enablerepo
 +        `Repoid' of repositories to enable for the install/update operation. These repos will
 +        not persist beyond the transaction. When specifying multiple repos, separate them with
 +        a ",".
 +        [Default: (null)]
 +
 +- exclude
 +        Package name(s) to exclude when state=present, or latest. This can be a list or a comma
 +        separated string.
 +        [Default: (null)]
 +        version_added: 2.7
 +
 +- install_repoquery
 +        This is effectively a no-op in DNF as it is not needed with DNF, but is an accepted
 +        parameter for feature parity/compatibility with the `yum' module.
 +        [Default: yes]
 +        type: bool
 +        version_added: 2.7
 +
 +- install_weak_deps
 +        Will also install all packages linked by a weak dependency relation.
 +        [Default: yes]
 +        type: bool
 +        version_added: 2.8
 +
 +- installroot
 +        Specifies an alternative installroot, relative to which all packages will be installed.
 +        [Default: /]
 +        version_added: 2.3
 +
 +- list
 +        Various (non-idempotent) commands for usage with `/usr/bin/ansible' and `not'
 +        playbooks. See examples.
 +        [Default: (null)]
 +
 +- lock_timeout
 +        Amount of time to wait for the dnf lockfile to be freed.
 +        [Default: 30]
 +        type: int
 +        version_added: 2.8
 +
 += name
 +        A package name or package specifier with version, like `name-1.0'. When using
 +        state=latest, this can be '*' which means run: dnf -y update. You can also pass a url
 +        or a local path to a rpm file. To operate on several packages this can accept a comma
 +        separated string of packages or a list of packages.
 +        (Aliases: pkg)
 +        elements: str
 +        type: list
 +
 +- releasever
 +        Specifies an alternative release from which all packages will be installed.
 +        [Default: (null)]
 +        version_added: 2.6
 +
 +- security
 +        If set to `yes', and `state=latest' then only installs updates that have been marked
 +        security related.
 +        [Default: no]
 +        type: bool
 +        version_added: 2.7
 +
 +- skip_broken
 +        Skip packages with broken dependencies(devsolve) and are causing problems.
 +        [Default: no]
 +        type: bool
 +        version_added: 2.7
 +
 +- state
 +        Whether to install (`present', `latest'), or remove (`absent') a package.
 +        Default is `None', however in effect the default action is `present' unless the
 +        `autoremove' option is enabled for this module, then `absent' is inferred.
 +        (Choices: absent, present, installed, removed, latest)[Default: (null)]
 +
 +- update_cache
 +        Force dnf to check if cache is out of date and redownload if needed. Has an effect only
 +        if state is `present' or `latest'.
 +        (Aliases: expire-cache)[Default: no]
 +        type: bool
 +        version_added: 2.7
 +
 +- update_only
 +        When using latest, only update installed packages. Do not install packages.
 +        Has an effect only if state is `latest'
 +        [Default: no]
 +       type: bool
 +        version_added: 2.7
 +
 +- validate_certs
 +        This only applies if using a https url as the source of the rpm. e.g. for localinstall.
 +        If set to `no', the SSL certificates will not be validated.
 +        This should only set to `no' used on personally controlled sites using self-signed
 +        certificates as it avoids verifying the source site.
 +        [Default: yes]
 +        type: bool
 +        version_added: 2.7
 +
 +
 +NOTES:
 +      * When used with a `loop:` each package will be processed individually, it is much
 +        more efficient to pass the list directly to the `name` option.
 +      * Group removal doesn't work if the group was installed with Ansible because
 +        upstream dnf's API doesn't properly mark groups as installed, therefore upon
 +        removal the module is unable to detect that the group is installed
 +        (https://bugzilla.redhat.com/show_bug.cgi?id=1620324)
 +
 +
 +REQUIREMENTS:  python >= 2.6, python-dnf, for the autoremove option you need dnf >= 2.0.1"
 +
 +AUTHOR: Igor Gnatenko (@ignatenkobrain) <i.gnatenko.brain@gmail.com>, Cristian van Ee (@DJMuggs) <cristian at cvee.org>
 +        METADATA:
 +          status:
 +          - stableinterface
 +          supported_by: core
 +        
 +
 +EXAMPLES:
 +
 +- name: install the latest version of Apache
 +  dnf:
 +    name: httpd
 +    state: latest
 +
 +- name: install the latest version of Apache and MariaDB
 +  dnf:
 +    name:
 +      - httpd
 +     - mariadb-server
 +    state: latest
 +
 +- name: remove the Apache package
 +  dnf:
 +    name: httpd
 +    state: absent
 +
 +- name: install the latest version of Apache from the testing repo
 +  dnf:
 +    name: httpd
 +    enablerepo: testing
 +    state: present
 +
 +- name: upgrade all packages
 +  dnf:
 +    name: "*"
 +    state: latest
 +
 +- name: install the nginx rpm from a remote repo
 +  dnf:
 +    name: 'http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm'
 +    state: present
 +
 +- name: install nginx rpm from a local file
 +  dnf:
 +    name: /usr/local/src/nginx-release-centos-6-0.el6.ngx.noarch.rpm
 +    state: present
 +
 +- name: install the 'Development tools' package group
 +  dnf:
 +    name: '@Development tools'
 +    state: present
 +
 +- name: Autoremove unneeded packages installed as dependencies
 +  dnf:
 +    autoremove: yes
 +
 +- name: Uninstall httpd but keep its dependencies
 +  dnf:
 +    name: httpd
 +    state: absent
 +    autoremove: no
 +
 +- name: install a modularity appstream with defined stream and profile
 +  dnf:
 +    name: '@postgresql:9.6/client'
 +    state: present
 +
 +- name: install a modularity appstream with defined stream
 +  dnf:
 +    name: '@postgresql:9.6'
 +    state: present
 +
 +- name: install a modularity appstream with defined profile
 +  dnf:
 +    name: '@postgresql/client'
 +    state: present
 +
 +</code>
  
 ===== Installation ===== ===== Installation =====