Модуль ansible.builtin.systemd_service — управление модулями systemd
Примечание
Этот модуль входит в ansible-core и включен во все установки Ansible. В большинстве случаев можно использовать краткое имя модуля systemd_service, даже не указывая ключевое слово collections. Однако мы рекомендуем использовать полное имя коллекции (FQCN) ansible.builtin.systemd_service, чтобы упростить переход к документации модуля и избежать конфликтов с другими коллекциями, в которых может быть модуль с таким же именем.
Краткое описание
- Управляет модулями systemd (службами, таймерами и т. д.) на удаленных узлах.
- ansible.builtin.systemd переименован в ansible.builtin.systemd_service, чтобы точнее отражать область применения модуля. ansible.builtin.systemd сохранен в качестве псевдонима для обратной совместимости.
Псевдонимы: systemd
Требования
На узле, на котором выполняется этот модуль, необходимы следующие компоненты.
- Система под управлением systemd.
Параметры
Параметр | Комментарии |
|---|---|
daemon_reexec псевдонимы: daemon-reexec логический добавлен в Ansible 2.8 | Выполнить команду daemon_reexec перед любыми другими операциями; диспетчер systemd сериализует свое состояние. Варианты:
|
daemon_reload псевдонимы: daemon-reload логический | Выполнить Если задано значение Варианты:
|
enabled логический | |
force логический | Следует ли переопределять существующие символические ссылки. Варианты:
|
masked логический | Следует ли маскировать модуль. Маскированный модуль невозможно запустить. Если задано значение, требуется Варианты:
|
name псевдонимы: service, unit строка | Имя модуля. Этот параметр принимает имя ровно одного модуля, с которым нужно работать. Если расширение не указано, подразумевается При использовании в среде chroot необходимо всегда указывать имя модуля вместе с расширением. Например, |
no_block логический | Не дожидаться синхронно завершения запрошенной операции. Поставленная в очередь задача продолжит выполняться, а Ansible не будет блокировать выполнение в ожидании ее завершения. Варианты:
|
scope строка добавлен в Ansible 2.7 | Выполнить Чтобы systemd мог работать с Процесс dbus пользователя обычно запускается при обычном входе в систему, но не во время выполнения задач Ansible. В противном случае, вероятно, возникнет ошибка «Failed to connect to bus: no such file or directory». У пользователя должен быть доступ, который обычно предоставляется путем установки переменной Варианты:
|
state строка |
Если задано значение, требуется Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Модуль может работать в режиме check_mode и возвращать прогноз изменения состояния, не изменяя целевой узел; если режим не поддерживается, действие будет пропущено. |
diff_mode | Поддержка: нет | В режиме diff возвращает сведения об изменениях (или об изменениях, которые могут потребоваться в режиме check_mode). |
platform | Платформа: posix | Целевые ОС и семейства ОС, с которыми можно работать |
Примечания
Примечание
-
state,enabled,maskedтребуетname. - До версии 2.4 всегда требовался
name. - Шаблоны glob не поддерживаются в параметре name; другими словами,
postgres*.service. - Названия служб могут различаться в зависимости от ОС или дистрибутива.
- При наличии нескольких свойств сначала выполняется включение или отключение, затем маскирование или снятие маски, а после этого обрабатывается состояние службы. Сообщалось, что
systemctlможет вести себя по-разному в зависимости от порядка операций, если выполнить их вручную в том же порядке.
Примеры
- name: Make sure a service unit is running
ansible.builtin.systemd_service:
state: started
name: httpd
- name: Stop service cron on debian, if running
ansible.builtin.systemd_service:
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_service:
state: restarted
daemon_reload: true
name: crond
- name: Reload service httpd, in all cases
ansible.builtin.systemd_service:
name: httpd.service
state: reloaded
- name: Enable service httpd and ensure it is not masked
ansible.builtin.systemd_service:
name: httpd
enabled: true
masked: no
- name: Enable a timer unit for dnf-automatic
ansible.builtin.systemd_service:
name: dnf-automatic.timer
state: started
enabled: true
- name: Just force systemd to reread configs (2.4 and above)
ansible.builtin.systemd_service:
daemon_reload: true
- name: Just force systemd to re-execute itself (2.8 and above)
ansible.builtin.systemd_service:
daemon_reexec: true
- name: Run a user service when XDG_RUNTIME_DIR is not set on remote login
ansible.builtin.systemd_service:
name: myservice
state: started
scope: user
environment:
XDG_RUNTIME_DIR: "/run/user/{{ myuid }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
status словарь | Словарь с парами ключ=значение, возвращаемыми командой Возвращается: при успешном выполнении Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/ansible/builtin/systemd_service_module.html