ansible.windows.win_reboot – Перезагрузка компьютера с Windows
Примечание
Этот плагин входит в состав коллекции ansible.windows (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install ansible.windows
Чтобы использовать его в playbook, укажите: ansible.windows.win_reboot
Описание
- Перезагрузить компьютер с Windows, подождать его выключения, включения и готовности к командам.
- Для целей, не являющихся компьютерами с Windows, используйте модуль ansible.builtin.reboot вместо этого.
Примечание
У этого модуля есть соответствующий плагин действий.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| boot_time_command string | Значение по умолчанию: "(Get-WmiObject -ClassName Win32_OperatingSystem).LastBootUpTime" | Команда, которая возвращает уникальную строку, указывающую последний запуск системы. Установка этой команды на команду, которая имеет разный вывод при каждом запуске, приведет к ошибке задачи. |
| connect_timeout integer | Значение по умолчанию: 5 | Максимальное время в секундах ожидания успешного TCP-соединения с конечной точкой WinRM перед повторной попыткой. алиасы: connect_timeout_sec |
| msg string | Значение по умолчанию: "Перезагрузка инициирована Ansible" | Сообщение для отображения пользователям. |
| post_reboot_delay integer | Значение по умолчанию: 0 | Секунды ожидания после успешного выполнения команды перезагрузки перед проверкой успешного перезапуска системы. Это полезно, если вы хотите подождать завершения процесса, несмотря на то, что ваше подключение уже работает. алиасы: post_reboot_delay_sec |
| pre_reboot_delay integer | Значение по умолчанию: 2 | Секунды ожидания перед перезагрузкой. Передаётся как параметр команде перезагрузки. алиасы: pre_reboot_delay_sec |
| reboot_timeout integer | Значение по умолчанию: 600 | Максимальное время в секундах ожидания появления машины в сети и ответа на тестовую команду. Этот таймаут оценивается отдельно для проверки перезагрузки и успешного выполнения тестовой команды, поэтому максимальное время фактически вдвое больше этого значения. алиасы: reboot_timeout_sec |
| test_command string | Значение по умолчанию: "whoami" | Команда, успешное выполнение которой указывает на готовность машины к управлению. |
Примечания
Примечание
- Если на системе уже запланировано выключение, ansible.windows.win_reboot прервёт запланированное выключение и выполнит собственное выключение.
- Следите за тем, что при возврате ansible.windows.win_reboot система Windows может ещё не стабилизироваться, и некоторые базовые службы могут быть в неопределённом состоянии. Это может привести к неожиданному поведению. Обратитесь к примерам для минимизации этого.
- Пользователь подключения должен иметь разрешение
SeRemoteShutdownPrivilege, см. https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/force-shutdown-from-a-remote-system для получения дополнительной информации.
См. также
См. также
- ansible.builtin.reboot
-
Официальная документация модуля ansible.builtin.reboot.
Примеры
- name: Reboot the machine with all defaults
ansible.windows.win_reboot:
- name: Reboot a slow machine that might have lots of updates to apply
ansible.windows.win_reboot:
reboot_timeout: 3600
# Install a Windows feature and reboot if necessary
- name: Install IIS Web-Server
ansible.windows.win_feature:
name: Web-Server
register: iis_install
- name: Reboot when Web-Server feature requires it
ansible.windows.win_reboot:
when: iis_install.reboot_required
# One way to ensure the system is reliable, is to set WinRM to a delayed startup
- name: Ensure WinRM starts when the system has settled and is ready to work reliably
ansible.windows.win_service:
name: WinRM
start_mode: delayed
# Additionally, you can add a delay before running the next task
- name: Reboot a machine that takes time to settle after being booted
ansible.windows.win_reboot:
post_reboot_delay: 120
# Or you can make win_reboot validate exactly what you need to work before running the next task
- name: Validate that the netlogon service has started, before running the next task
ansible.windows.win_reboot:
test_command: 'exit (Get-Service -Name Netlogon).Status -ne "Running"'
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| elapsed float | всегда | Количество секунд, затраченных на ожидание перезагрузки системы. Пример: 23.2 |
| rebooted boolean | всегда | True, если машина была перезагружена. Пример: True |
Авторы
- Matt Davis (@nitzmahone)
© 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/windows/win_reboot_module.html