community.windows.win_nssm – Установка службы с помощью NSSM
Примечание
Этот плагин входит в коллекцию community.windows (версия 1.2.0).
Для его установки используйте: ansible-galaxy collection install community.windows.
Для использования в playbook укажите: community.windows.win_nssm.
Обзор
- Установка службы Windows с помощью оболочки NSSM.
- NSSM — это помощник службы, который не отстой. Дополнительная информация доступна по адресу https://nssm.cc/.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- nssm >= 2.24.0 # (установка с помощью chocolatey.chocolatey.win_chocolatey)
win_chocolatey: name=nssm
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| app_environment словарь добавлен в 1.2.0 в community.windows | Ключевые пары, которые будут добавлены в среду приложения службы. | |
| app_parameters строка | Строка, представляющая словарь параметров, передаваемых приложению при запуске. УСТЕРЕЖДЁН с версии v2.8, используйте вместо этого параметр arguments. Взаимоисключающий с arguments. | |
| app_rotate_bytes целое число | По умолчанию: 104858 | NSSM не будет производить ротацию файла, размер которого меньше заданного значения в байтах. |
| app_rotate_online целое число |
0 | Если установлено значение 1, nssm может производить ротацию файлов, размер которых достигает заданного лимита, в то время как служба работает. |
| app_stop_method_console целое число | Время ожидания после отправки Control-C. | |
| app_stop_method_skip целое число |
| Для отключения методов завершения работы службы, задайте сумму одного или нескольких чисел 1 - Не отправлять Control-C в консоль. 2 - Не отправлять WM_CLOSE в Windows. 4 - Не отправлять WM_QUIT в потоки. 8 - Не вызывать TerminateProcess(). |
| application путь | Исполняемый файл приложения для запуска в качестве службы Требуется, когда state равен present, started, stopped, или restarted. | |
| arguments строка | Параметры, передаваемые приложению при запуске. Может быть простой строкой или списком. Взаимоисключающий с app_parameters. псевдонимы: app_parameters_free_form | |
| dependencies список / элементы=строка | Зависимости службы, которые должны быть запущены для запуска, разделенные запятой. УСТЕРЕЖДЁН, будет удален в основной версии после 2021-07-01, используйте вместо этого модуль ansible.windows.win_service. | |
| description строка | Описание для установки службы. | |
| display_name строка | Отображаемое имя службы. | |
| executable путь | По умолчанию: "nssm.exe" | Расположение утилиты NSSM (если она не находится в вашем PATH). |
| name строка / обязательно | Имя службы для работы. | |
| password строка | Пароль, используемый для запуска службы. УСТЕРЕЖДЁН, будет удален в основной версии после 2021-07-01, используйте вместо этого модуль ansible.windows.win_service. | |
| start_mode строка |
| Если выбрано auto, служба запустится при загрузке.delayed приводит к задержке, но автоматическому запуску после загрузки.manual означает, что служба запустится только тогда, когда это потребуется другой службе.disabled означает, что служба останется выключенной, независимо от необходимости.УСТЕРЕЖДЁН, будет удален в основной версии после 2021-07-01, используйте вместо этого модуль ansible.windows.win_service. |
| state строка |
| Состояние службы в системе. Значения started, stopped, и restarted устарели и будут удалены в следующей основной версии после 2021-07-01. Используйте модуль ansible.windows.win_service для запуска, остановки или перезапуска службы. |
| stderr_file путь | Путь для получения выходных данных об ошибках. | |
| stdout_file путь | Путь для получения выходных данных. | |
| user строка | Пользователь, используемый для запуска службы. УСТЕРЕЖДЁН, будет удален в основной версии после 2021-07-01, используйте вместо этого модуль ansible.windows.win_service. | |
| working_directory путь | Рабочая директория для запуска исполняемого файла службы (по умолчанию — директория, содержащая исполняемый файл приложения). псевдонимы: app_directory, chdir |
Примечания
Примечание
- Служба НЕ будет запущена после её создания, если
state=present. - После создания службы вы можете использовать модуль ansible.windowswin_service для её запуска или настройки дополнительных свойств, таких как тип запуска, зависимости, учетная запись службы и так далее.
См. также
См. также
- ansible.windows.win_service
-
Официальная документация модуля ansible.windows.win_service.
Примеры
- name: Install the foo service
community.windows.win_nssm:
name: foo
application: C:\windows\foo.exe
# This will yield the following command: C:\windows\foo.exe bar "true"
- name: Install the Consul service with a list of parameters
community.windows.win_nssm:
name: Consul
application: C:\consul\consul.exe
arguments:
- agent
- -config-dir=C:\consul\config
# This is strictly equivalent to the previous example
- name: Install the Consul service with an arbitrary string of parameters
community.windows.win_nssm:
name: Consul
application: C:\consul\consul.exe
arguments: agent -config-dir=C:\consul\config
# Install the foo service, and then configure and start it with win_service
- name: Install the foo service, redirecting stdout and stderr to the same file
community.windows.win_nssm:
name: foo
application: C:\windows\foo.exe
stdout_file: C:\windows\foo.log
stderr_file: C:\windows\foo.log
- name: Configure and start the foo service using win_service
ansible.windows.win_service:
name: foo
dependencies: [ adf, tcpip ]
username: foouser
password: secret
start_mode: manual
state: started
- name: Install a script based service and define custom environment variables
community.windows.win_nssm:
name: <ServiceName>
application: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
arguments:
- <path-to-script>
- <script arg>
app_environment:
AUTH_TOKEN: <token value>
SERVER_URL: https://example.com
PATH: "<path-prepends>;{{ ansible_env.PATH }};<path-appends>"
- name: Remove the foo service
community.windows.win_nssm:
name: foo
state: absent
Авторы
- Adam Keech (@smadam813)
- George Frank (@georgefrank)
- Hans-Joachim Kliemeck (@h0nIg)
- Michael Wild (@themiwi)
- Kevin Subileau (@ksubileau)
- Shachaf Goldstein (@Shachaf92)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/windows/win_nssm_module.html