This is a translation of the original English documentation page. Help us make it better.

host.update

Description

object host.update(object/array hosts)

Cette méthode permet de mettre à jour les hôtes existants.

Cette méthode est disponible uniquement pour les types d'utilisateurs Admin et Super admin. Les autorisations d'appeler la méthode peuvent être révoquées dans les paramètres de rôles utilisateur. Voir Rôles Utilisateur pour plus d'informations.

Paramètres

(object/array) Propriétés de l'hôte à mettre à jour.

La propriété hostid doit être définie pour chaque hôte, toutes les autres propriétés sont facultatives. Seules les propriétés données seront mises à jour, toutes les autres resteront inchangées.

En plus des propriétés de l'objet hôte standard, la méthode accepte les paramètres suivants.

Paramètre Type Description
groups object/array Groupes d'hôtes en remplacement des groupes d'hôtes actuels auxquels appartient l'hôte.

Les groupes hôtes doivent avoir la propriété groupid définie. Tous les groupes hôtes qui ne figurent pas dans la demande seront déliés.
interfaces object/array Interfaces hôtes en remplacement des interfaces hôtes actuelles.

Toutes les interfaces qui ne figurent pas dans la demande seront supprimées.
tags object/array Tags d'hôte en remplacement des tags d'hôte actuels.

Toutes les tas qui ne figurent pas dans la demande seront supprimés.
inventory object Propriétés d'inventaire d'hôte .
macros object/array Macros utilisateur en remplacement des macros utilisateur actuelles.

Toutes les macros non répertoriées dans la demande seront supprimées.
templates object/array Modèles en remplacement des modèles actuellement liés. Tous les modèles qui ne sont pas répertoriés dans la demande seront uniquement déliés.

Les modèles doivent avoir la propriété templateid définie.
templates_clear object/array Modèles à délier et supprimer de l'hôte.

Les modèles doivent avoir la propriété templateid définie.

Contrairement à l'interface Zabbix, lorsque name (nom d'hôte visible) est identique à host (nom d'hôte technique), la mise à jour de host via l'API ne mettra pas automatiquement à jour name . Les deux propriétés doivent être mises à jour explicitement.

Valeurs retournées

(object) Retourne un objet contenant les identifiants des hôtes mis à jour sous la propriété hostids.

Exemples

Activation d'un hôte

Activez la surveillance de l'hôte, c'est-à-dire définissez son statut sur 0.

Requête :

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "status": 0
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Réponse :

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Dissociation des modèles

Dissociez et effacez deux modèles de l'hôte.

Requête :

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "templates_clear": [
                   {
                       "templateid": "10124"
                   },
                   {
                       "templateid": "10125"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Réponse :

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

#### Mise à jour des macros de l'hôte

Remplacez toutes les macros hôtes par deux nouvelles.

Requête :

{
           "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
       }

Réponse :

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Mise à jour de l'inventaire de l'hôte

Changer le mode d'inventaire et ajouter une localisation

Requête :

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10387",
               "inventory_mode": 0,
               "inventory": {
                   "location": "Latvia, Riga"
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Réponse :

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10387"
               ]
           },
           "id": 1
       }

#### Mise à jour des tags d'hôte

Remplacez tous les tags d'hôte par une nouvelle.

Requête :

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10387",
               "tags": {
                   "tag": "OS",
                   "value": "RHEL 7"
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Réponse :

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10387"
               ]
           },
           "id": 1
       }

Updating discovered host macros

Convert discovery rule created "automatic" macro to "manual" and change its value to "new-value".

Request:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10387",
               "macros": {
                   "hostmacroid": "5541",
                   "value": "new-value",
                   "automatic": "0"
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10387"
               ]
           },
           "id": 1
       }

Updating host encryption

Update the host "10590" to use PSK encryption only for connections from host to Zabbix server. In addition, update the PSK identity and PSK key for this host. Note that the Zabbix agent that is installed on the host has to be configured to use PSK.

Request:

{
           "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
       }

Response:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10590"
               ]
           },
           "id": 1
       }

Voir également

Source

CHost::update() dans ui/include/classes/api/services/CHost.php.