Spec-Zone.ru › Ansible 2.10

ansible.builtin.systemd – Управление службами

Примечание

Этот модуль входит в состав ansible-base и включён во все установки Ansible. В большинстве случаев вы можете использовать короткое имя модуля systemd, даже не указывая ключевое слово collections:. Тем не менее, рекомендуется использовать полное имя FQCN для удобной ссылки на документацию модуля и для избежания конфликтов с другими коллекциями, которые могут иметь то же имя модуля.

Новое в версии 2.2: от ansible.builtin

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата

Краткое описание

  • Управляет службами systemd на удалённых хостах.

Требования

Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.

  • Система, управляемая systemd.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
daemon_reexec
boolean
добавлен в 2.8 от ansible.builtin
    Варианты:
  • no ←
  • yes
Выполнить команду daemon_reexec перед выполнением других операций. Управляющий systemd сериализует состояние менеджера.

алиасы: daemon-reexec
daemon_reload
boolean
    Варианты:
  • no ←
  • yes
Выполнить daemon-reload перед выполнением других операций, чтобы убедиться, что systemd прочитал все изменения.
Когда установлено yes, выполняет daemon-reload, даже если модуль ничего не запускает или не останавливает.

алиасы: daemon-reload
enabled
boolean
    Варианты:
  • no
  • yes
Указывает, должна ли служба запускаться при загрузке. Необходимо указать хотя бы одно из state или enabled.
force
boolean
добавлен в 2.6 от ansible.builtin
    Варианты:
  • no
  • yes
Переопределить существующие символические ссылки.
masked
boolean
    Варианты:
  • no
  • yes
Указывает, должна ли единица быть замаскированной или нет. Замаскированная единица не может быть запущена.
name
string
Имя службы. Этот параметр принимает имя ровно одной службы для работы.
При использовании в среде chroot всегда необходимо указывать полное имя, например (crond.service).

алиасы: service, unit
no_block
boolean
добавлен в 2.3 от ansible.builtin
    Варианты:
  • no ←
  • yes
Не ждать завершения запрошенной операции синхронно. Запущенная задача продолжит выполнение, не ожидая завершения Ansible.
scope
string
добавлен в 2.7 от ansible.builtin
    Варианты:
  • system ←
  • user
  • global
Запуск systemctl в заданном диапазоне управления службами, либо в стандартном системном диапазоне system, в диапазоне текущего пользователя user, либо в диапазоне всех пользователей global.
Для работы systemd с 'user', исполняющий пользователь должен иметь свой экземпляр dbus (требование systemd). Процесс dbus пользователя обычно запускается во время обычного входа в систему, но не во время выполнения задач Ansible. В противном случае, вероятно, будет получена ошибка 'Failed to connect to bus: no such file or directory'.
state
string
    Варианты:
  • reloaded
  • restarted
  • started
  • stopped
started/stopped — идемпотентные действия, которые не будут запускать команды, если это не нужно. restarted всегда перезапускает службу. reloaded всегда перезагружает.
user
boolean
    Варианты:
  • no
  • yes
(устарело) запустить ``systemctl``, обращаясь к менеджеру служб вызывающего пользователя, а не менеджеру служб системы.
Этот параметр устарел и в конечном итоге будет удалён в версии 2.11. Вместо него следует использовать параметр ``scope``.
Значение по умолчанию — false.

Примечания

Примечание

  • Начиная с версии 2.4, требуется один из следующих параметров: ‘state’, ‘enabled’, ‘masked’, ‘daemon_reload’, (‘daemon_reexec’ начиная с 2.8), и все, кроме ‘daemon_reload’ (и ‘daemon_reexec’ начиная с 2.8), также требуют ‘name’.
  • До версии 2.4 всегда требовалось ‘name’.
  • Подстановочные знаки не поддерживаются в name, т.е postgres*.service.
  • Поддерживает check_mode.

Примеры

- name: Make sure a service is running
  ansible.builtin.systemd:
    state: started
    name: httpd

- name: Stop service cron on debian, if running
  ansible.builtin.systemd:
    name: cron
    state: stopped

- name: Restart service cron on centos, in all cases, also issue daemon-reload to pick up config changes
  ansible.builtin.systemd:
    state: restarted
    daemon_reload: yes
    name: crond

- name: Reload service httpd, in all cases
  ansible.builtin.systemd:
    name: httpd
    state: reloaded

- name: Enable service httpd and ensure it is not masked
  ansible.builtin.systemd:
    name: httpd
    enabled: yes
    masked: no

- name: Enable a timer for dnf-automatic
  ansible.builtin.systemd:
    name: dnf-automatic.timer
    state: started
    enabled: yes

- name: Just force systemd to reread configs (2.4 and above)
  ansible.builtin.systemd:
    daemon_reload: yes

- name: Just force systemd to re-execute itself (2.8 and above)
  ansible.builtin.systemd:
    daemon_reexec: yes

Значения возврата

Общие значения возврата документированы здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
status
complex
success
Словарь со парами ключ=значение, возвращёнными из `systemctl show`.

Пример:
{'ActiveEnterTimestamp': 'Вс 2016-05-15 18:28:49 EDT', 'ActiveEnterTimestampMonotonic': '8135942', 'ActiveExitTimestampMonotonic': '0', 'ActiveState': 'active', 'After': 'auditd.service systemd-user-sessions.service time-sync.target systemd-journald.socket basic.target system.slice', 'AllowIsolate': 'no', 'Before': 'shutdown.target multi-user.target', 'BlockIOAccounting': 'no', 'BlockIOWeight': '1000', 'CPUAccounting': 'no', 'CPUSchedulingPolicy': '0', 'CPUSchedulingPriority': '0', 'CPUSchedulingResetOnFork': 'no', 'CPUShares': '1024', 'CanIsolate': 'no', 'CanReload': 'yes', 'CanStart': 'yes', 'CanStop': 'yes', 'CapabilityBoundingSet': '18446744073709551615', 'ConditionResult': 'yes', 'ConditionTimestamp': 'Вс 2016-05-15 18:28:49 EDT', 'ConditionTimestampMonotonic': '7902742', 'Conflicts': 'shutdown.target', 'ControlGroup': '/system.slice/crond.service', 'ControlPID': '0', 'DefaultDependencies': 'yes', 'Delegate': 'no', 'Description': 'Планировщик команд', 'DevicePolicy': 'auto', 'EnvironmentFile': '/etc/sysconfig/crond (ignore_errors=no)', 'ExecMainCode': '0', 'ExecMainExitTimestampMonotonic': '0', 'ExecMainPID': '595', 'ExecMainStartTimestamp': 'Вс 2016-05-15 18:28:49 EDT', 'ExecMainStartTimestampMonotonic': '8134990', 'ExecMainStatus': '0', 'ExecReload': '{ path=/bin/kill ; argv[]=/bin/kill -HUP $MAINPID ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }', 'ExecStart': '{ path=/usr/sbin/crond ; argv[]=/usr/sbin/crond -n $CRONDARGS ; ignore_errors=no ; start_time=[n/a] ; stop_time=[n/a] ; pid=0 ; code=(null) ; status=0/0 }', 'FragmentPath': '/usr/lib/systemd/system/crond.service', 'GuessMainPID': 'yes', 'IOScheduling': '0', 'Id': 'crond.service', 'IgnoreOnIsolate': 'no', 'IgnoreOnSnapshot': 'no', 'IgnoreSIGPIPE': 'yes', 'InactiveEnterTimestampMonotonic': '0', 'InactiveExitTimestamp': 'Вс 2016-05-15 18:28:49 EDT', 'InactiveExitTimestampMonotonic': '8135942', 'JobTimeoutUSec': '0', 'KillMode': 'process', 'KillSignal': '15', 'LimitAS': '18446744073709551615', 'LimitCORE': '18446744073709551615', 'LimitCPU': '18446744073709551615', 'LimitDATA': '18446744073709551615', 'LimitFSIZE': '18446744073709551615', 'LimitLOCKS': '18446744073709551615', 'LimitMEMLOCK': '65536', 'LimitMSGQUEUE': '819200', 'LimitNICE': '0', 'LimitNOFILE': '4096', 'LimitNPROC': '3902', 'LimitRSS': '18446744073709551615', 'LimitRTPRIO': '0', 'LimitRTTIME': '18446744073709551615', 'LimitSIGPENDING': '3902', 'LimitSTACK': '18446744073709551615', 'LoadState': 'loaded', 'MainPID': '595', 'MemoryAccounting': 'no', 'MemoryLimit': '18446744073709551615', 'MountFlags': '0', 'Names': 'crond.service', 'NeedDaemonReload': 'no', 'Nice': '0', 'NoNewPrivileges': 'no', 'NonBlocking': 'no', 'NotifyAccess': 'none', 'OOMScoreAdjust': '0', 'OnFailureIsolate': 'no', 'PermissionsStartOnly': 'no', 'PrivateNetwork': 'no', 'PrivateTmp': 'no', 'RefuseManualStart': 'no', 'RefuseManualStop': 'no', 'RemainAfterExit': 'no', 'Requires': 'basic.target', 'Restart': 'no', 'RestartUSec': '100ms', 'Result': 'success', 'RootDirectoryStartOnly': 'no', 'SameProcessGroup': 'no', 'SecureBits': '0', 'SendSIGHUP': 'no', 'SendSIGKILL': 'yes', 'Slice': 'system.slice', 'StandardError': 'inherit', 'StandardInput': 'null', 'StandardOutput': 'journal', 'StartLimitAction': 'none', 'StartLimitBurst': '5', 'StartLimitInterval': '10000000', 'StatusErrno': '0', 'StopWhenUnneeded': 'no', 'SubState': 'running', 'SyslogLevelPrefix': 'yes', 'SyslogPriority': '30', 'TTYReset': 'no', 'TTYVHangup': 'no', 'TTYVTDisallocate': 'no', 'TimeoutStartUSec': '1min 30s', 'TimeoutStopUSec': '1min 30s', 'TimerSlackNSec': '50000', 'Transient': 'no', 'Type': 'simple', 'UMask': '0022', 'UnitFileState': 'enabled', 'WantedBy': 'multi-user.target', 'Wants': 'system.slice', 'WatchdogTimestampMonotonic': '0', 'WatchdogUSec': '0'}


Авторы

  • Команда Ansible Core

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/ansible/builtin/systemd_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API