host.update
Описание
object host.update(объект/массив hosts)
Этот метод позволяет обновлять существующие узлы сети.
Этот метод доступен только пользователям с типом доступа Администратор и Супер-администратор. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.
Параметры
(object/array) Свойства узла сети, которые необходимо обновить.
Свойство hostid должно быть определено для каждого узла сети, все остальные
свойства являются необязательными. Будут обновлены только указанные свойства,
все остальные останутся без изменений.
Однако обратите внимание, что обновление технического имени узла сети также обновит видимое имя узла сети (если оно не указано отдельно) значением технического имени узла сети.
В дополнение к стандартным свойствам узла сети, метод принимает следующие параметры.
| Параметр | Тип | Описание |
|---|---|---|
| groups | object/array | Группы узлов сети для замены текущих групп узлов сети, к которым принадлежит узел сети. Все группы узлов сети, не перечисленные в запросе, будут отвязаны. Для групп узлов сети должно быть определено только свойство groupid. |
| interfaces | object/array | Интерфейсы узла сети для замены текущих интерфейсов узла сети. Все интерфейсы, не перечисленные в запросе, будут удалены. |
| tags | object/array | Теги узла сети для замены текущих тегов узла сети. Все теги, не перечисленные в запросе, будут удалены. |
| inventory | object | Свойства инвентарных данных узла сети. |
| macros | object/array | Пользовательские макросы для замены текущих пользовательских макросов. Все макросы, не перечисленные в запросе, будут удалены. |
| templates | object/array | Шаблоны для замены текущих привязанных шаблонов. Все шаблоны, не перечисленные в запросе, будут только отвязаны. Для шаблонов должно быть определено только свойство templateid. |
| templates_clear | object/array | Шаблоны для отвязки и очистки от узла сети. Для шаблонов должно быть определено только свойство templateid. |
Возвращаемые значения
(object) Возвращает объект, содержащий идентификаторы обновленных хостов.
под свойством hostids.
Примеры
Активация узла сети
Активируйте мониторинг узла сети, установив для него статус "0".
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"status": 0
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10126"
]
},
"id": 1
}
Включение нескольких узлов сети
Включите мониторинг двух узлов сети, то есть установите их статус в "0".
{
"jsonrpc": "2.0",
"method": "host.update",
"params": [
{
"hostid": "10127",
"status": 0
},
{
"hostid": "10128",
"status": 0
}
],
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10127",
"10128"
]
},
"id": 1
}
Отсоединение шаблонов
Отсоединить и очистить два шаблона от узла сети.
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"templates_clear": [
{
"templateid": "10124"
},
{
"templateid": "10125"
}
]
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10126"
]
},
"id": 1
}
Обновление макросов узла сети
Замените все макросы узла сети двумя новыми.
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10126",
"macros": [
{
"macro": "{$PASS}",
"value": "password"
},
{
"macro": "{$DISC}",
"value": "sda",
"description": "Обновлённое описание"
}
]
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10126"
]
},
"id": 1
}
Обновление инвентарных данных узла сети
Измените режим инвентаризации и добавьте местоположение
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"inventory_mode": 0,
"inventory": {
"location": "Латвия, Рига"
}
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10387"
]
},
"id": 1
}
Обновление тегов узла сети
Замените все теги узла сети новым тегом.
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"tags": {
"tag": "os",
"value": "rhel-7"
}
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10387"
]
},
"id": 1
}
Обновление макросов обнаруженного узла сети
Преобразуйте макрос, созданный правилом обнаружения как "automatic", в "manual" и измените его значение на "new-value".
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10387",
"macros": {
"hostmacroid": "5541",
"value": "new-value",
"automatic": "0"
}
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10387"
]
},
"id": 1
}
Обновление шифрования узла сети
Обновите узел сети "10590", чтобы использовать шифрование PSK только для соединений от узла сети к серверу Zabbix, а также измените идентификатор PSK и ключ PSK. Обратите внимание, что узел сети должен быть предварительно настроен для использования PSK.
{
"jsonrpc": "2.0",
"method": "host.update",
"params": {
"hostid": "10590",
"tls_connect": 1,
"tls_accept": 2,
"tls_psk_identity": "PSK 002",
"tls_psk": "e560cb0d918d26d31b4f642181f5f570ad89a390931102e5391d08327ba434e9"
},
"id": 1
}
Ответ:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"10590"
]
},
"id": 1
}
См. также
- host.massadd
- host.massremove
- Группа узлов сети
- Шаблон
- Пользовательский макрос
- Интерфейс узла сети
- Инвентарные данные узла сети
- Тег узла сети
- Прокси
- Группа прокси
Источник
CHost::update() в ui/include/classes/api/services/CHost.php.