La prise en charge de la supervision des environnements VMware est disponible dans Zabbix à partir de la version 2.2.0.
Zabbix peut utiliser des règles de découverte de bas niveau pour découvrir automatiquement les hyperviseurs VMware et les machines virtuelles et créer des hôtes pour les surveiller, sur la base de prototypes d'hôtes prédéfinis.
Par défaut, Zabbix propose propose plusieurs modèles prêts à l'emploi pour la supervision de l'hyperviseur VMware vCenter ou ESX.
La version minimale requise de VMware vCenter ou vSphere est 4.1.
La supervision de la machine virtuelle s'effectue en deux étapes. Premièrement, les données de la machine virtuelle sont collectées par les processus Zabbix vmware collector. Ces processus obtiennent les informations nécessaires auprès des services Web VMware via le protocole SOAP, les traitent préalablement et les stockent dans la mémoire partagée du serveur Zabbix. Ces informations sont ensuite récupérées par les pollers à l’aide des clés VMware des vérifications simples de Zabbix.
À partir de la version 2.4.4 de Zabbix, les données collectées sont divisées en 2 types : les données de configuration VMware et les données de compteurs de performance VMware. Les deux types sont collectés indépendamment par les collecteurs vmware. Pour cette raison, il est recommandé d'activer plus de collecteurs que les services VMware surveillés. Sinon, la récupération des statistiques de compteurs de performance VMware pourrait être retardée par la récupération des données de configuration VMware (ce qui prend un certain temps pour les installations de grande taille).
Actuellement, seules les statistiques de banque de données, d'interface réseau et de périphérique de disque, ainsi que les éléments de compteur de performance personnalisés sont basés sur les informations du compteur de performance VMware.
Pour que la supervision des machines virtuelles fonctionne, Zabbix doit être compilé avec les options de compilation --with-libxml2 et --with-libcurl.
Les options de fichier de configuration suivantes peuvent être utilisées pour optimiser la supervision des machines virtuelles :
Pour plus de détails, voir les pages du fichier de configuration pour le serveur Zabbix et le proxy.
Pour prendre en charge les métriques de capacité de banque de données, Zabbix exige que le paramètre vpxd.stats.maxQueryMetrics de la configuration VMware soit au moins égal à 64. Voir également l'article de la base de connaissances VMware.
Zabbix peut utiliser une règle de découverte de bas niveau pour découvrir automatiquement les hyperviseurs VMware et les machines virtuelles.
Tous les champs de saisie obligatoires sont marqués d’un astérisque rouge.
La clé de la règle de découverte dans la capture d'écran ci-dessus est vmware.hv.discovery[{$URL}]
Les prototypes d'hôtes peuvent être créés avec la règle de découverte de bas niveau. Lorsque des machines virtuelles sont découvertes, ces prototypes deviennent de véritables hôtes. Les prototypes, avant d'être découverts, ne peuvent pas avoir leurs propres éléments et déclencheurs, autres que ceux des modèles liés. Les hôtes découverts appartiendront à un hôte existant et utiliseront l'adresse IP de l'hôte existant pour la configuration de l'hôte.
Dans une configuration des prototypes d'hôte, les macros LLD sont utilisées pour les champs nom d'hôte, nom visible et prototype de groupe d'hôtes. La liaison à des groupes d'hôtes existants, la liaison de modèles et le cryptage sont d'autres options pouvant être définies.
Si l' option Créer activé est cochée, l'hôte sera ajouté dans un état activé. Si cette case n'est pas cochée, l'hôte sera ajouté, mais à l'état désactivé.
Les hôtes découverts sont préfixés du nom de la règle de découverte qui les a créés, dans la liste des hôtes. Les hôtes découverts peuvent être supprimés manuellement. Les hôtes découverts seront également automatiquement supprimés, en fonction de la valeur Période de conservation des ressources perdues de la règle de découverte. La plupart des options de configuration sont en lecture seule, à l'exception de l'activation/désactivation de l'hôte et de l'inventaire d'hôte. Les hôtes découverts ne peuvent pas avoir leurs propres prototypes.
L'ensemble de données par défaut de Zabbix propose plusieurs modèles prêts à l'emploi permettant de surveiller VMware vCenter ou directement l'hyperviseur ESX.
Ces modèles contiennent des règles LLD préconfigurées ainsi qu'un certain nombre de contrôles intégrés pour la surveillance des installations virtuelles.
Notez que le modèle "Template Virt VMware" doit être utilisé pour la supervision d'hyperviseur VMware vCenter et ESX. Les modèles "Template Virt VMware Hypervisor" et "Template Virt VMware Guest" sont utilisés par la découverte et ne doivent normalement pas être liés manuellement à un hôte.
Si votre serveur a été mis à jour à partir d'une version antérieure à la version 2.2 et ne contient aucun de ces modèles, vous pouvez les importer manuellement, en les téléchargeant à partir de la page de la communauté dans les modèles officiels. Cependant, ces modèles ont des dépendances à partir des tables de correspondances de valeurs VMware VirtualMachinePowerState et VMware status. Il est donc nécessaire de créer ces tables de correspondances de valeurs d'abord (à l'aide d'un script SQL, manuellement ou lors de l'importation à partir d'un fichier XML) avant d'importer les modèles.
Pour utiliser les vérifications simples VMware, les macros utilisateur suivantes doivent être définies sur l'hôte :
L'exemple suivant montre comment configurer rapidement la supervision VMware sur Zabbix :
{{..:..:assets:fr:manual:vm_host_macros.png?600|}}
* Lier l'hôte au modèle de service VMware:
{{..:..:assets:fr:manual:vm_host_templates.png?600|}}
* Cliquer sur le bouton //Ajouter// pour enregistrer l'hôte.
Les données collectées par le collecteur VMware peuvent être consignées pour un débogage détaillé à l'aide du niveau de débogage 5. Ce niveau peut être défini dans les fichiers de configuration du server et du proxy ou à l'aide d'une option du runtime control (-R log_level_increase="vmware collector,N"
, N étant un numéro de processus). Les exemples suivants montrent comment la journalisation étendue peut être démarrée à condition que le niveau de débogage 4 soit déjà défini :
Augmentez le niveau de journalisation de tous les collecteurs vmware :
shell> zabbix_server -R log_level_increase="vmware collector"
Augmentez le niveau de journalisation du second collecteur vmware :
shell> zabbix_server -R log_level_increase="vmware collector,2"
Si la journalisation étendue des données du collecteur VMware n'est pas requise, vous pouvez l'arrêter à l'aide de l'option -R log_level_decrease
.