host.update
Opis
object host.update(object/array hosts)
Ta metoda umożliwia aktualizację istniejących hostów.
Ta metoda jest dostępna tylko dla użytkowników typu Admin i Super admin.Uprawnienia do wywołania tej metody mogą zostać odebrane w ustawieniach roli użytkownika.Zobacz Role użytkowników aby uzyskać więcej informacji.
Parametry
(object/array) Właściwości hostów do zaktualizowania.
Właściwość hostid musi być zdefiniowana dla każdego hosta, wszystkie inne
właściwości są opcjonalne. Tylko podane właściwości zostaną zaktualizowane, pozostałe
pozostaną niezmienione.
Należy jednak zauważyć, że aktualizacja technicznej nazwy hosta spowoduje również aktualizację widocznej nazwy hosta (jeśli nie jest podana lub jest pusta) na podstawie wartości technicznej nazwy hosta.
Dodatkowo do standardowych właściwości hosta, metoda akceptuje następujące parametry.
| Parametr | Typ | Opis |
|---|---|---|
| groups | object/array | Grupy hostów do zastąpienia aktualnych grup hostów, do których należy host. Grupy hostów muszą mieć zdefiniowaną właściwość groupid. Wszystkie grupy hostów, które nie są wymienione w zapytaniu, zostaną odłączone. |
| interfaces | object/array | Interfejsy hosta do zastąpienia aktualnych interfejsów hosta. Wszystkie interfejsy, które nie są wymienione w zapytaniu, zostaną usunięte. |
| tags | object/array | Znaczniki hosta do zastąpienia aktualnych tagów hosta. Wszystkie tagi, które nie są wymienione w zapytaniu, zostaną usunięte. |
| inventory | object | Właściwości inwentarza hosta. |
| macros | object/array | Makra użytkownika do zastąpienia aktualnych makr użytkownika. Wszystkie makra, które nie są wymienione w żądaniu, zostaną usunięte. |
| templates | object/array | Szablony do zastąpienia aktualnie połączonych szablonów. Wszystkie szablony, które nie są wymienione w żądaniu, zostaną tylko odłączone. Szablony muszą mieć zdefiniowaną właściwość templateid. |
| templates_clear | object/array | Szablony do odłączenia i wyczyszczenia z hosta. Szablony muszą mieć zdefiniowaną właściwość templateid. |
W przeciwieństwie do interfejsu Zabbix, gdy name (widoczna
nazwa hosta) jest taka sama jak host (techniczna nazwa hosta), aktualizacja host
za pośrednictwem interfejsu API nie spowoduje automatycznej aktualizacji name. Oba właściwości
muszą zostać jawnie zaktualizowane.
Zwracane wartości
(object) Zwraca obiekt zawierający ID zaktualizowanych hostów
w właściwości hostids.
Przykłady
Włączanie hosta
Włącz monitorowanie hosta, czyli ustaw jego status na 0.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"status": 0
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10126"
]
},
"id": 1
}
Odłączanie szablonów
Odłącz i wyczyść dwa szablony od hosta.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"templates_clear": [
{
"templateid": "10124"
},
{
"templateid": "10125"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10126"
]
},
"id": 1
}
Aktualizacja makr hosta
Zastąp wszystkie makra hosta dwoma nowymi.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"macros": [
{
"macro": "{$PASS}",
"value": "password"
},
{
"macro": "{$DISC}",
"value": "sda",
"description": "Updated description"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10126"
]
},
"id": 1
}
Aktualizacja inwentarza hosta
Zmień tryb inwentarza i dodaj lokalizację
Odpowiedź:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"inventory_mode": 0,
"inventory": {
"location": "Latvia, Riga"
}
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Zapytanie:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10387"
]
},
"id": 1
}
Aktualizacja znaczników hosta
Zastąp wszystkie tagi hosta nowym.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"tags": {
"tag": "OS",
"value": "RHEL 7"
}
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10387"
]
},
"id": 1
}
Aktualizacja szyfrowania hosta
Zaktualizuj hosta "10590", aby używał szyfrowania PSK tylko dla połączeń od hosta do serwera Zabbix, i zmień identyfikator PSK oraz klucz PSK. Zauważ, że host musi być wstępnie skonfigurowany do korzystania z PSK.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10590",
"tls_connect": 1,
"tls_accept": 2,
"tls_psk_identity": "PSK 002",
"tls_psk": "e560cb0d918d26d31b4f642181f5f570ad89a390931102e5391d08327ba434e9"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10590"
]
},
"id": 1
}
Zobacz także
- host.massadd
- host.massupdate
- host.massremove
- Grupa hostów
- Szablon
- Makra użytkownika
- Interfejs hosta
- Inwentarz hosta
- Znacznik hosta
Źródło
CHost::update() w ui/include/classes/api/services/CHost.php.