我對ICINGA2的API有問題。ICINGA2 API未對主機進行修改
我試圖用POST調用添加新的變量, 我得到所需的結果,
但ICINGA2沒有添加新的變種。
根據文檔: http://docs.icinga.org/icinga2/latest/doc/module/icinga2/chapter/icinga2-api
與下列API,我創建了我們的所有主機維也納:
curl -k -s -u root:icinga -H 'Accept: application/json' -X PUT 'https://localhost:5665/v1/objects/hosts/server.example.com' \
-d '{ "templates": [ "generic-host" ], "attrs": { "zone": "Vienna", "address": "180.33.1.123", "check_command": "hostalive", "vars.os" : "Linux", "vars.agent" : "ssh" } }' \
| python -m json.tool
雖然這部分正常工作,
的問題是一旦主機創建,我需要爲不同的服務器添加各種變量。
例如 添加變量:「vars.servicename」:「DHCP_Servers」
如果我要回到文檔,下面的API,將需要執行:
curl -k -s -u root:icinga -H 'Accept: application/json' -X POST 'https://localhost:5665/v1/objects/hosts/server.example.com' \
-d '{ "templates": [ "generic-host" ], "attrs": { "zone": "Vienna", "address": "180.33.1.123", "check_command": "hostalive", "vars.os" : "Linux", "vars.agent" : "ssh", "vars.servicename" : "DHCP_Servers" } }' \
| python -m json.tool
,當我跑的API,如預期我恢復:
{
"results": [
{
"code": 200.0,
"name": "server.example.com",
"status": "Attributes updated.",
"type": "Host"
}
]
}
但沒有改變的是發生在ICINGA /小時ost文件。
評論對這段網址: https://dev.icinga.com/issues/11501>「我們知道,你們中許多人需要這種功能,進行更改,然後自動重新評估一切。使用事務,回滾,依賴關係映射,表達式等來實現並不容易,一旦我們有時間估計和發佈目標,我們將更新問題。如果有人說 - 我可以做到 - 請分享您的發現和補丁在這裏進行進一步的審查/討論。「 – user7242424