Модуль community.general.icinga2_downtime — управление периодами простоя Icinga 2
Примечание
Этот модуль входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general.
Чтобы использовать её в плейбуке, укажите: community.general.icinga2_downtime.
Добавлено в community.general 12.4.0
Краткое описание
- Управляет периодами простоя в Icinga 2 через REST API.
- Параметры описаны на странице https://icinga.com/docs/icinga-2/latest/doc/12-icinga2-api/#schedule-downtime.
Параметры
Параметр | Комментарии |
|---|---|
all_services логический | Следует ли создавать периоды простоя для всех служб сопоставленных объектов узлов. Если параметр не указан, по умолчанию Icinga 2 не создаёт периоды простоя для всех служб сопоставленных объектов узлов. Варианты:
|
author строка | Имя автора. По умолчанию: |
ca_path путь | Пакет сертификатов CA для проверки сертификата сервера Icinga 2. |
child_options строка | Запланировать периоды простоя для дочерних объектов. Варианты:
|
client_cert путь | Файл цепочки сертификатов в формате PEM для аутентификации SSL-клиента. Этот файл также может содержать ключ; если ключ включён в файл, |
client_key путь | Файл в формате PEM с закрытым ключом для аутентификации SSL-клиента. Если |
comment строка | Описательный комментарий. По умолчанию: |
duration целое число | Продолжительность периода простоя. Обязательный параметр для гибкого периода простоя. |
end_time целое число | Время окончания периода простоя в формате временной метки UNIX. |
filter строка | Выражение фильтра, ограничивающее объекты, над которыми выполняется операция. |
filter_vars словарь | Имена и значения переменных, используемых в выражении фильтра. |
fixed логический | Является ли период простоя фиксированным или гибким. Если параметр не указан, Icinga 2 по умолчанию создаёт фиксированный период простоя. Варианты:
|
force логический | Если Варианты:
|
force_basic_auth логический | Учётные данные, указанные с помощью Варианты:
|
http_agent строка | Значение заголовка для идентификации; обычно отображается в журналах веб-сервера. По умолчанию: |
name строка | Имя объекта периода простоя. Этот параметр не влияет на состояния, отличные от |
object_type строка | Используйте Используйте Варианты:
|
start_time целое число | Время начала периода простоя в формате временной метки UNIX. |
state строка | Состояние периода простоя. Варианты:
|
timeout целое число | Время ожидания данных от сервера до прекращения ожидания. По умолчанию: |
trigger_name строка | Имя триггера периода простоя. |
url строка / обязательный | URL REST API Icinga 2. |
url_password строка | Пароль для базовой HTTP-аутентификации. Если параметр |
url_username строка | Имя пользователя для базовой HTTP-аутентификации. Этот параметр можно использовать без |
use_gssapi логический добавлено в ansible-core 2.11 | Использовать GSSAPI для аутентификации; обычно это Kerberos или Kerberos через аутентификацию Negotiate. Требуется установить библиотеку Python gssapi. Учётные данные GSSAPI можно указать с помощью Аутентификация NTLM не поддерживается, даже если установлен механизм GSSAPI для NTLM. Варианты:
|
use_proxy логический | Если Варианты:
|
validate_certs логический | Если Используйте этот параметр только на подконтрольных вам сайтах с самоподписанными сертификатами. Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: нет При сложном выражении фильтра определить, успешно ли будет создан или удалён период простоя и приведёт ли это к изменению, может быть очень трудно. | Может работать в режиме |
diff_mode | Поддержка: нет | В режиме diff возвращает сведения об изменениях (или возможных изменениях в |
Примеры
- name: Schedule a host downtime
community.general.icinga2_downtime:
url: "https://icinga2.example.com:5665"
url_username: icingadmin
url_password: secret
state: present
author: Ansible
comment: Scheduled downtime for test purposes.
all_services: true
start_time: "{{ downtime_start_time }}"
end_time: "{{ downtime_end_time }}"
duration: "{{ downtime_duration }}"
fixed: true
object_type: Host
filter: host.name=="host.example.com"
delegate_to: localhost
register: icinga2_downtime_response
vars:
downtime_start_time: "{{ ansible_date_time['epoch'] | int }}"
downtime_end_time: "{{ downtime_start_time | int + 3600 }}"
downtime_duration: "{{ downtime_end_time | int - downtime_start_time | int }}"
- name: Remove scheduled host downtime
community.general.icinga2_downtime:
url: "https://icinga2.example.com:5665"
url_username: icingadmin
url_password: secret
state: absent
author: Ansible
object_type: Downtime
name: "{{ icinga2_downtime_response.results[0].name }}"
delegate_to: localhost
when: icinga2_downtime_response.results | default([]) | length > 0
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
error словарь | Сообщение об ошибке в виде словаря JSON, возвращённое API Icinga 2. Возвращается: если планирование или удаление периода простоя завершилось неудачно Пример: |
results список / элементы=словарь | Результаты планирования или удаления периода простоя Возвращается: при успехе Пример: |
|
code целое число |
Код успешного выполнения или ошибки при планировании периода простоя. Возвращается: всегда Пример: |
|
legacy_id целое число |
Устаревший идентификатор объекта периода простоя. Возвращается: если период простоя успешно запланирован Пример: |
|
name строка |
Имя объекта периода простоя. Возвращается: если период простоя успешно запланирован Пример: |
|
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/community/general/icinga2_downtime_module.html