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 5.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 obligatoires sont marqués par un astérisque rouge.
La clé de la règle de découverte dans la capture d'écran ci-dessus est vmware.hv.discovery[{$VMWARE.URL}]
L'ensemble de données par défaut dans Zabbix propose plusieurs modèles prêts à l'emploi pour 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.
Modèles pour la surveillance de l'hyperviseur VMware vCenter et ESX :
Pour que le modèle VMware FQDN fonctionne correctement, chaque machine virtuelle surveillée doit avoir un nom de système d'exploitation unique conforme aux règles FQDN et VMware Tools doit être installé sur chaque machine. Si ces conditions sont remplies, il est recommandé d'utiliser le modèle VMware FQDN. La création du modèle VMware FQDN est devenue possible après l'introduction de la possibilité de créer des hôtes avec des interfaces personnalisées dans Zabbix 5.2.
Un modèle VMware classique est toujours disponible et peut être utilisé si les exigences FQDN ne peuvent pas être satisfaites. N'oubliez pas que le modèle VMware présente un problème connu. Les hôtes des machines virtuelles découvertes seront créés avec les noms enregistrés dans le vCenter (par exemple, VM1, VM2, etc.). Si l'agent Zabbix actif est installé ultérieurement sur ces hôtes avec l'enregistrement automatique activé, le processus d'enregistrement automatique lira les noms d'hôte tels qu'ils ont été enregistrés au lancement (par exemple, vm1.example.com, vm2.example.com, etc.) et créera de nouveaux hôtes car aucune correspondance de nom n'a été trouvée. En conséquence, il y aura deux hôtes en double pour chaque machine avec des noms différents.
Modèles utilisés par la découverte (normalement, ces modèles ne doivent pas être liés manuellement à un hôte) :
Pour utiliser les vérifications simples VMware, l'hôte doit avoir défini les macros utilisateur suivantes :
L'exemple suivant montre comment configurer rapidement la surveillance VMware sur Zabbix :
Les données recueillies par le collecteur VMware peuvent être enregistré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 serveur et du proxy ou en utilisant une option de contrôle d'exécution (-R log_level_increase="vmware collector,N"
, où N est 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 :
Increase log level of all vmware collectors:
shell> zabbix_server -R log_level_increase="vmware collector"
Increase log level of second vmware collector:
shell> zabbix_server -R log_level_increase="vmware collector,2"
Si la journalisation étendue des données du collecteur VMware n'est pas requise, elle peut être arrêtée à l'aide de l'option -R log_level_decrease
.
config.vpxd.stats.maxQueryMetrics
aux paramètres de vCenter Server. La valeur de ce paramètre doit être identique à la valeur de maxQuerysize
dans web.xml de VMware. Consultez cet article de la base de connaissances VMware pour plus de détails.