Spec-Zone.ru › Ansible

Модуль community.windows.win_nssm — установка службы с помощью NSSM

Примечание

Этот модуль входит в коллекцию community.windows (версия 3.1.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.windows. Для использования этого модуля необходимы дополнительные требования; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.windows.win_nssm.

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

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

  • Установка службы Windows с помощью оболочки NSSM.
  • NSSM — это помощник для служб, который не доставляет проблем. Дополнительные сведения см. на сайте https://nssm.cc/.

Требования

Следующие требования должны быть выполнены на узле, на котором выполняется этот модуль.

  • nssm >= 2.24.0 # (установите с помощью chocolatey.chocolatey.win_chocolatey) win_chocolatey: name=nssm

Параметры

Параметр

Комментарии

app_environment

dictionary

добавлено в community.windows 1.2.0

Пары ключ/значение, которые будут добавлены в окружение приложения службы.

app_rotate_bytes

integer

NSSM не будет ротировать файлы, размер которых меньше указанного количества байт.

По умолчанию: 104858

app_rotate_online

integer

Если установлено значение 1, nssm может ротировать файлы, достигшие заданного предельного размера, пока служба работает.

Варианты:

  • 0 ← (по умолчанию)
  • 1

app_stop_method_console

integer

Время ожидания после отправки Control-C.

app_stop_method_skip

integer

Чтобы отключить методы завершения службы, задайте сумму одного или нескольких чисел

1 — не отправлять Control-C в консоль.

2 — не отправлять WM_CLOSE окнам.

4 — не отправлять WM_QUIT потокам.

8 — не вызывать TerminateProcess().

Варианты:

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

application

path

Исполняемый файл приложения, запускаемого как служба

Обязателен, если значение state — present, started, stopped или restarted.

arguments

псевдонимы: app_parameters_free_form

string

Параметры, передаваемые приложению при запуске.

Это может быть простая строка или список.

dependencies

list / elements=string

Зависимости службы, которые должны быть запущены для начала запуска; перечисляются через запятую.

description

string

Описание службы.

display_name

string

Отображаемое имя службы.

executable

path

Путь к утилите NSSM (если она не находится в PATH).

По умолчанию: "nssm.exe"

name

string / обязательный

Имя службы, с которой нужно выполнить операцию.

password

string

Пароль для запуска службы.

Для стандартных учетных записей служб и групповых управляемых учетных записей служб пароль не требуется.

start_mode

string

Если выбрано auto, служба будет запускаться при загрузке.

Значение delayed означает, что служба будет запускаться автоматически с задержкой после загрузки.

Значение manual означает, что служба будет запускаться только при необходимости для другой службы.

Значение disabled означает, что служба останется выключенной независимо от того, нужна она или нет.

Варианты:

  • "auto" ← (по умолчанию)
  • "delayed"
  • "disabled"
  • "manual"

state

string

Состояние службы в системе.

Варианты:

  • "absent"
  • "present" ← (по умолчанию)
  • "started"
  • "stopped"
  • "restarted"

stderr_file

path

Путь для сохранения вывода ошибок.

stdout_file

path

Путь для сохранения вывода.

username

псевдоним: user

string

Пользователь, от имени которого будет запускаться служба.

Имена групповых управляемых учетных записей служб должны заканчиваться на $.

До версии 1.8.0 этот параметр назывался просто user.

working_directory

псевдонимы: app_directory, chdir

path

Рабочий каталог для запуска исполняемого файла службы (по умолчанию — каталог, содержащий исполняемый файл приложения)

Примечания

Примечание

  • Служба НЕ будет запущена после создания, если задано state=present.
  • После создания службы можно использовать модуль ansible.windows.win_service, чтобы запустить ее или настроить дополнительные свойства, например тип запуска, зависимости, учетную запись службы и т. д.

См. также

См. также

ansible.windows.win_service

Управление службами Windows.

Примеры

- 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–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/windows/win_nssm_module.html

Spec-Zone.ru

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