![](/img/trans.png)
[英]How to schedule a downtime in icinga2 by using icinga-api with groovy?
[英]Icinga2 API: How to set all services of a host into downtime?
我正在嘗試自動設置和消除icinga主機上的停機時間。
我當前正在使用以下命令:
(請注意,我正在ansible劇本中運行此命令,因此{{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}}\" }"
這能夠使主機停機。 但是,它不會使該主機上的任何服務進入停機時間。 就像我進入了Web ui並將主機置於停機狀態一樣,而沒有選中“所有服務”復選框。
如何更改此命令以使主機停機,同時又使該主機上的所有服務停機?
如果有一個任務也可以執行此功能,我也很感興趣。
答案是將網址末尾的&type=Host
位更改為&type=Service
以執行服務停機時間而不是主機停機時間。
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=Service" -d "{ \"start_time\": \"{{now}}\", \"end_time\": \"{{end}}\", \"duration\": 1000, \"author\": \"{{username}}\", \"comment\": \"auto set downtime on {{item}}\" }"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.