Я пытаюсь автоматизировать настройку и удаление простоев на хостах icinga.
В настоящее время я использую следующую команду:
(обратите внимание, что я запускаю это в ANSIBLE playbook, поэтому {{item}} - это имя хоста, а любые другие двойные скобки заполняются ANSIBLE переменными)
curl -k -s -u {{username}}:{{password}} -H 'Accept: application/json' -X POST "https://localhost:5665/v1/actions/schedule-downtime?filter=host.name==%22{{item}}%22&type=Host" -d "{ \"start_time\": \"{{now}}\", \"end_time\": \"{{end}}\", \"duration\": 1000, \"author\": \"{{username}}\", \"comment\": \"auto set downtime on {{item}}\" }"
Это может привести к простоям хоста. Однако, это не помещает никакие сервисы на этом хосте в это время простоя. Это как если бы я зашел в веб-интерфейс и перевел хост в нерабочее время, не устанавливая флажок «все сервисы».
Как изменить эту команду, чтобы перевести хост в нерабочее время, а также перевести все службы на этом хосте в нерабочее время?
Мне также было бы интересно, если бы было задание, которое могло бы также выполнить эту функцию.