
Nagios – Surveillance de nos VM VMware vSphere
Dans ce document, nous allons surveiller les éléments intéressants que nous obtiendrons de nos machines virtuelles basées sur VMware vSphere, centraliser dans Nagios les contrôles que nous effectuons pour gérer ses valeurs, Recevez des alertes ou générez des graphiques de votre consommation. Nous verrons, entre autres vérifications, dans les VM obtenir les valeurs de leur CPU Ready, Attente du processeur, Surcharge de mémoire, Memctl, Ballon, Ecrire ou lire les E/S…
Grâce au script 'check_vmware_api.pl’ que nous avons déjà installé dans un Document précédent, nous pouvons maintenant aller de l’avant et surveiller n’importe quel paramètre d’une machine virtuelle, Peu importe la version que nous utilisons, puisque l’installation du SDK correspondant nous permettra de nous connecter, si les environnements vSphere 5.x ou 6.x. Donc, si no tienes instalado los pre-requisitos, Te recomiendo su lectura!
[Code source]CPU – Affiche les informations sur le processeur
+ usage – Utilisation du processeur en pourcentage
+ utilisationmhz – Utilisation du processeur en MHz
+ attendre – Temps d’attente du processeur en ms
+ prêt – Temps de disponibilité du processeur en ms
Mem – Affiche les infos sur le MEM
+ usage – Utilisation de MEM en pourcentage
+ UsageMB – Utilisation de mem en Mo
+ échanger – swap utilisation mem en Mo
+ swapin – swapin utilisation mem en Mo
+ Remplacement – swapout utilisation mem en Mo
+ frais généraux – mémoire supplémentaire utilisé par le serveur VM en Mo
+ total – mémoire globale utilisée par VM Server en Mo
+ actif – utilisation active de mem en Mo
+ Memctl – mem utilisé par le pilote de contrôle de la mémoire VM(vmmemctl) qui contrôle le ballonnement
Filet – affiche les infos sur le net
+ usage – Utilisation globale du réseau en Ko/s(Kilo-octets par seconde)
+ recevoir – réception en Ko(Kilo-octets par seconde)
+ Envoyer – envoi en Ko(Kilo-octets par seconde)
^ Toutes les infos sur le Net(sauf utilisation et aucun seuil)
Io – affiche les informations d’E/S du disque
+ usage – utilisation globale du disque en Mo/s
+ lire – utilisation du disque de lecture en Mo/s
+ écrire – utilisation du disque d’écriture en Mo/s
Duree – Affiche les informations d’exécution
+ avec – État de la connexion
+ CPU – CPU allouée en MHz
+ Mem – mem alloué en MB
+ état – État de la machine virtuelle (ASI, En bas, SUSPENDU)
+ statut – État général de l’objet (gris/vert/rouge/jaune)
+ consoleconnexions – connexions de console à la machine virtuelle
+ Invités – état du système d’exploitation invité, a besoin d’outils VMware
+ outils – État des outils VMware
+ Questions – Tous les problèmes pour l’hôte[/Code source]
Il s’agira de quelques-unes des commandes et sous-commandes que nous pouvons passer pour obtenir les informations qui nous intéressent sur une machine virtuelle, nous pouvons interroger un serveur vCenter ou un hôte ESXi, suivi du nom de la machine virtuelle tel qu’il apparaît dans vSphere Client. Nous pouvons analyser n’importe quel paramètre du processeur, Mémoire, Filet, Disque ou état de la machine virtuelle. Quelque chose comme ça fonctionnerait si nous voulons essayer de l’exécuter à partir du shell:
[Code source]./check_vmware.api.pl -D DATA_CENTER | -H DIRECCION_IP_HOST_ESXi -N NOMBRE_MV -f FICHERO_AUTH -l COMMANDE -s SOUS-commande -w AVERTISSEMENT -c CRITIQUE[/Code source]
Il suffira d’enregistrer la Commande dont nous avons besoin, comme toujours de la part de Centreon, il s’agira d’une intervention unique, puis vous appellera à partir de chaque service de surveillance que nous créons. Dans ce cas je vais attaquer directement un hôte ESXi donc je vais mettre son IP sur pinrel, Mais tout le monde peut le configurer comme il le souhaite, contre un vCenter serait idéal. “Configuration” > Commandes” > Nous avons doublé le check_vmware_api.pl’ que nous avons déjà créé et nous en faisons un similaire pour surveiller les VM. Nous effectuons au moins:
- Nom de la commande: Je l’appellerai 'check_vmware_api.pl_VM’ de savoir qu’avec cette Commande nous allons surveiller les MV.
- Type de commande: Sélectionnez « Vérifier »..
- Ligne de commande: Ce sera ce que les services que nous créons exécuteront pour surveiller les éléments dans les machines virtuelles. Quelque chose comme ce qui suit serait utile où nous passerons en arguments lors de la création du service le nom de la machine virtuelle, la Commande, le Sous-Commandement, Avertissement et valeur pour Critique:
$UTILISATEUR1$/check_vmware_api.pl -H DIRECCION_IP_HOST_ESXi -N $ARG 1$ -f $USER 1$/check_vmware_api.auth -l $ARG 2$ -s $ARG 3$ -w $ARG 4$ -c $ARG 5$
Nous enregistrons avec “Sauvegarder”,
Et rien! Ce sera aussi simple que de créer autant de services que nécessaire, depuis “Configuration” > “Services”. Dans ce cas, je vais créer les Services associés à partir des Relations à chaque VM, Je vais sélectionner la commande que nous venons de créer dans le combo, être 'check_vmware_api.pl_VM', et nous compléterons les arguments, en indiquant le nom de la VM à consulter, la commande qui, dans ce type 'cpu’ et avec le Subomando ' prêt’ Il nous donnera cela, le temps de disponibilité du processeur de la machine virtuelle, en plus d’indiquer les valeurs pour nous alerter d’Avertissement et Critique (Dans ce cas, il s’agit de millisecondes).
Et rien, si nous enregistrons et exportons les paramètres comme nous le savons déjà, nous pourrons revenir à la vue Monitoring et voir les valeurs que nous surveillons, dans ce cas, nous voyons les temps d’attente du processeur prêt ou du processeur, ainsi que le débit d’écriture ou de lecture en Mo/s, ainsi que si le VC a utilisé Balloning ou Swap que nous connaissons sont des éléments qui indiqueront que le VC souffre. Et il est intéressant de connaître l’état au niveau VMware de la machine virtuelle ainsi que l’état des outils VMware!!! Jouir!