Table des matières

Supervision d’environnement virtuel

Surveillance d’environnement virtuel

Les environnements virtuels ont une grande importance dans les architectures informatiques de toutes les entreprises et c'est pour ça que sa supervision est essentielle. Avec Pandora FMS Enterprise vous aurez accés à Amazon EC2, VMware, Nutanix, XenServer, OpenNebula, IBM, HMC et HPVM.

Amazon EC2

Pour surveiller EC2 dans des environnements Enterprise, veuillez vous diriger vers ce lien Discovery

Ce guide correspond au composant OpenSource pour la surveillance de EC2

Cette surveillance spécifique utilise le CloudWatch API pour surveiller ses instances dans le service Amazon EC2. Il faut avoir Cloudwatch d’activé dans son instance. Vous pouvez obtenir le plugin gratuit dans la section de la bibliothèque de modules.

L’idée principale de ce plugin de serveur à distance, c’est d’obtenir une information de ses instances en utilisant le serveur de plugin de Pandora FMS. Cela signifie qu’il faudra inscrire le plugin dans le serveur et configurer les différents modules pour qu’ils récupèrent l’information de ses serveurs EC2.

Voici un exemple de l’exécution :

 /home/slerena/ec2_plugin.sh \
          -A AKIAILTVCAS26GTKLD4A \
          -S CgmQ6DxUWES05txju+alJLoM57acDudHogkLotWk \
          -i i_9d0b4af1 \
          -n AWS/EC2 \
          -m CPUUtilization

Il renverra un % de valeur numérique de la métrique CPUUtilization dans l’instance i-9d0b4af1

Pour l’installation, il faudra :

1. Avoir JAVA de disponible dans son serveur Pandora FMS avec son répertoire correspondant JAVAHOME.

2. Copier ce plugin sur un chemin d’accès et définir les autorisations sur 755 et définir le chemin d’accès de base dans la variable AWS_CLOUDWATCH_HOME qui est présente dans les premières lignes du plugin. Il faut éditer les premières lignes du plugin.

Le plugin a différents fichiers :

/ec2_plugin.sh - Plugin itself /bin/* - Composants d’Amazon CloudWatch (Surveillance) Command Line Tools, inclus dans ce paquet. Ces scripts sont distribués sous la Licence Apache.

Mettez le paquet complet dans un répertoire accessible pour le serveur. Par exemple :

/usr/share/pandora_server/plugin/ec2

Et définissez le AWS_CLOUDWATCH_HOME dans /usr/share/pandora_server/plugin/ec2

En cas de doute sur l’installation, exécutez directement cette commande :

/usr/share/pandora_server/plugin/ec2/mon-cmd --version

Vous devriez voir apparaître un message similaire à :

Amazon CloudWatch CLI version 1.0.9.5 (API 2010-08-01)

Si vous obtenez la même chaîne, alors le plugin peut être utilisé.

Si non, il faudra sûrement installer et configurer de façon adéquate les outils de ligne de commandes d’Amazon CloudWatch (surveillance).

Installation

Pré-requis :

  • Assurez-vous d’avoir la version Java 1.5 ou une version plus récente d’installée sur votre système :
java -version
  • Décompressez le fichier .zip de déploiement.
  • Définissez les variables suivantes de l’environnement :
    • AWS_CLOUDWATCH_HOME - Le répertoire où sont copiés les fichiers de déploiement pour les tester avec :
Unix: ls ${AWS_CLOUDWATCH_HOME}/bin (should list mon-list-metrics ...)
 Windows: dir %AWS_CLOUDWATCH_HOME%\bin (should list mon-list-metrics ...)
  • JAVA_HOME - Répertoire Home de l’installation de Java.
  • Ajoutez à Path le suivant
 ${AWS_CLOUDWATCH_HOME}/bin
  • Sur Windows :
%AWS_CLOUDWATCH_HOME%\bin à son chemin d’accès

Configuration

Mettez vos références AWS d’utilisateur dans l’outil de ligne de commandes. Il existe deux façons pour fournir les références :

  1. Les mots de passe AWS
  2. En utilisant les certificats X.509

Utilisation de mots de passe AWS

  • Indiquez de façon explicite les références dans la ligne de commande :
  1. –I ACCESS_KEY –S SECRET_KEY
  • Créer un fichier identifiant. Le déploiement comprend un fichier de modèle :
${AWS_CLOUDWATCH_HOME}/credential-file-path.template.

Editez une copie de ce fichier pour ajouter votre information.Sur UNIX, limitez les autorisations pour le propriétaire du fichier d'identifiants (credential-file) :

$ chmod 600 <archive crée précédemment>.

Une fois l’archive créé, il existe plusieurs façons pour le référencer :

  • Fixez la variable suivante de l’environnement :
export AWS_CREDENTIAL_FILE=<credential-file>
  • Vous pouvez aussi fournir l’option suivante avec chaque commande :
  1. –aws-credential-file <credential file>

Utilisation de certificats X.509

Enregistrez votre certificat et mots de passe privés dans les fichiers : e.g. my-cert.pem et my-pk.pem.

Il existe deux modes pour fournir l’information certifiée à la ligne de commandes :

  • Fixez les variables suivantes d’environnement :
EC2_CERT=/path/to/cert/file
EC2_PRIVATE_KEY=/path/to/key/file
  • Indiquez les fichiers directement sur la ligne de commandes pour toutes les commandes :
 <command> \
      --ec2-cert-file-path=/path/to/cert/file \
      --ec2-private-key-file-path=/path/to/key/file

Installation des propriétés de JVM

En fixant la variable de l’environnement SERVICE_JVM_ARGS, vous pourrez passer de façon arbitraire les propriétés JVM à la ligne de commande.

Par exemple, la ligne suivante fixe les propriétés sur Linux/UNIX :

export SERVICE_JVM_ARGS="-Dhttp.proxyHost=http://my.proxy.com -Dhttp.proxyPort=8080"

Mise en marche

Vérifiez que votre installation fonctionne correctement. Exécutez la commande suivante :

$ mon-cmd --help

Vous devriez voir la page d’utilisation pour toutes les commandes de surveillance.

$ mon-list-metrics --headers

Vous devriez également voir une ligne d’en-tête. Si vous avez quelques métriques définies, vous devriez la voir aussi.

VMware

Versión Enterprise.

Avec Pandora FMS Enterprise, vous pourrez avoir accès à VMware Monitoring Plugin, un plugin qui permet d’avoir facilement l’architecture VMware sous contrôle.

Architecture VMware à surveiller

Avec ce système, il est possible de surveiller les architectures comme ci-dessous :

Pandora FMS peut surveiller VCenter, des serveurs ESXi et les composants qui virtualisent : Datastores et Machines Virtuelles. Pandora FMS s’appuie sur l’API que fournit le SDK de VMware par Perl pour la collecte de données.

Surveillance avec Discovery Application VMware

Suivez les étapes décrites sur Discovery pour surveiller votre infrastructure VMware grâce à Discovery.

Pré-requis de VMware

Les pré-requis pour le fonctionnement de la tâche de surveillance de VMware sont les suivant :

  • Pandora FMS v7.0NG.732 ou plus récent.
  • VMware vSphere SDK pour Perl

Dans l’ISO de Pandora FMS, tous les composants nécessaires pour surveiller VMware® y sont disponibles.

Configuration du vCenter pour la surveillance

Discovery Applications VMware utilise les métriques qui fournissent l’API des vCenter et ESXi de VMware. La disponibilité de ces métriques dépend des niveaux configurés pour la collecte de statistiques.

Ces niveaux peuvent être modifiés dans le menu vCenter Server Settings et dans l’option Statistics. Pour chaque option de temps et chaque niveau, vous obtiendrez la description des compteurs que collecte le vCenter. Le niveau minimum pour surveiller avec le plugin de Pandora FMS est le Niveau 2.

En dépendant de la configuration du vCenter, il est possible que quelques modules ne fassent pas l’objet de rapport de données sur Pandora FMS. Ceci peut être dû à :

  • Il faut d'installer quelque plugins sur le vCenter.
  • Qu’il soit nécessaire d’installer un agent VMware (vmware-tools) dans l’entité.
  • Simplement parce que l’entité est éteinte (machine virtuelle ou ESXi).

Pour résoudre ces problèmes, il faudra consulter la documentation de VMware.

Quelques solutions, comme par exemple la surveillance de l’état de l’hardware (Hardware Status), pourraient nécessiter une configuration avancée, aussi bien pour le vCenter que les host qui supportent les ESX.

Déploiement de la surveillance de VMware

A partir de la version 732 de Pandora FMS, la surveillance de VMware s’effectue en utilisant le système Discovery Applications .

Si pour une raison particulière, vous souhaitez configurer manuellement le plugin en dehors de cette fonctionnalité, vous pouvez utiliser le mode classique décrit ci-dessous.

Dans l’image ISO de Pandora FMS, le plugin de VMware®, joint aux extensions, vient préinstallé. S’il est requis de déployer ou de mettre à jour votre version du plugin de VMware® par une autre plus récente, veuillez suivre les étapes décrites ci-après :

Déploiement manuel du plugin

1. Accéder au répertoire dans lequel les fichiers du plugin VMware ont été extraits.

2. Copiez vmware-plugin.{pl,conf} au répertoire correspondant.

sudo cp vmware-plugin.pl vmware-plugin.conf /usr/share/pandora_server/util/plugin/
sudo chown pandora:apache /usr/share/pandora_server/util/plugin/vmware-plugin.{pl,conf}
sudo chmod g+w /usr/share/pandora_server/util/plugin/vmware-plugin.conf

3. Vérifiez les données nécessaires pour configurer le plugin et utiliser l'API de Pandora FMS.

Dans le menu "Configuration" de la console de Pandora FMS, vous pouvez assigner un mot de passe à l’API, tout comme les autorisations d’origines.

vmware_api_settings.jpg

4. Editez le fichier de configuration vmware-plugin.conf

5. Vérifiez la disponibilité de VMware® SDK for Perl

Vous pouvez lancer un script avec le contenu suivant pour valider votre installation de VMware® SDK Perl

#!/usr/bin/perl

use strict;
use warnings;

use VMware::VIRuntime;

print "VMware SDK Version: " . $VMware::VIRuntime::VERSION . "\n";

Exécutez le script :

perl check_vmware.pl

La sortie doit être similaire à la suivante :

VMware SDK Version: 6.5.0

Vérifiez que la version du SDK est supérieure ou égale à la version de vos produits VMware®.

A partir de la versión 717 du plugin de VMware®, il faudra aussi installer la bibliothèque perl PluginTools.pm, (disponible aussi avec le serveur sur /usr/lib/perl5/PandoraFMS) dans l’équipement où vous souhaiterez le déployer (copier /usr/lib/perl5/PandoraFMS dans l’équipement qui exécutera le plugin).

Installation de VMware vSphere SDK pour Perl

L’url du centre de téléchargements pour le software software VMware® requis est :

https://my.vmware.com/web/vmware/details?downloadGroup=VS-PERL-SDK65&productId=614

Si vous avez installé Pandora FMS en utilisant l’appliance (ISO Centos), il est inutile d’installer un software additionnel, tant que la version à surveiller de VMware est inférieur à 6.5.

Installation SDK Linux

Les versions du SDK testées avec ce processus d’installation ont été les 4.1, 5.1, 6.0, 6.5

Il est toujours recommandé d’utiliser la version SDK avec sa version de software VMware correspondante. Par exemple, il est recommandé d’utiliser le software 4.1 VMware avec la version 4.1 du SDK.

Tout d’abord, décompressez le SDK avec la commande suivante :

# tar -xzvf VMware-vSphere-Perl-SDK-x.x.x-xxxxxx.i386.tar.gz

Maintenant, compilez et installez le SDK avec les commandes suivantes :

 # perl Makefile.PL
 # make
 # make install

Si l’installation s’est effectuée correctement et n’a présentée aucune erreur, vous pourrez vous connecter avec le vCenter® en suivant la commande suivante :

 # /usr/lib/vmware-viperl/apps/general/connect.pl \
      --server <vcenter_ip> \
      --username <vcenter_user> \
      --password <vcenter_pass>

La réponse devrait être semblable à celle-ci :

 Connection Successful
 Server Time : 2013-02-21T16:24:05.213672Z

Mise à jour SDK 6.5 vers d’autres versions

Si la mise à jour du SDK de VMware est en cours, nous recommandons de suivre les étapes suivantes :

  • Installez les outils pour développeurs :
yum groupinstall "Developer Tools"
  • Installez CPAN :
yum install perl-CPAN
  • Installez quelques dépendances :
yum install openssl-devel perl-Class-MethodMaker
yum install epel-release
  • Décompressez les archives d’installation de VMware® SDK Perl :
tar xvzf VMware-vSphere-Perl-SDK-6.5.0-4566394.x86_64.tar.gz
  • Accédez au répertoire :
cd vmware-vsphere-cli-distrib
  • Lancez l’installateur :
./vmware-install.pl

Pour CentOS 8 suivez aussi les étapes suivantes :

# Enable epel repo:
yum install epel-release
# Enable powertools:
yum install dnf-utils
yum config-manager --set-enabled PowerTools
# Note: For centos 8 install custom made RPMs from Artica repo:
`yum install http://firefly.artica.es/centos8/perl-Crypt-SSLeay-0.73_07-1.gf.el8.x86_64.rpm` before install SDK
# Install the vmware SDK -- Custom RPM 6.5:
`yum install http://firefly.artica.es/centos8/VMware-vSphere-Perl-SDK-6.5.0-4566394.x86_64.rpm`

Pendant l’installation :

  • Acceptez la licence.
  • Indiquez ne pas utiliser les modules pré-construits pour VMware® SDK.
  • Acceptez l’installation automatique des modules par le biais du système automatisé par CPAN.
  • Vérifiez que tous les pré-requis ont été installés correctement.
  • Indiquez le répertoire où les modules de VMware SDK Perl devront être installés.

Note: Dans certains cas, le paquet perl UUID peut générer des erreurs en s’installant dans CentrOS 7. Réalisez les étapes suivantes pour ajouter le composant :

  • Installez les dépendances nécessaires pour UUID-0.03
yum install libuuid-devel perl-JSON-PP
wget http://search.cpan.org/CPAN/authors/id/C/CF/CFABER/UUID-0.03.tar.gz
  • Décompressez le fichier et accéder au répertoire
tar xvzf UUID-0.03.tar.gz
cd UUID-0.03
  • Générez les archives nécessaires pour la compilation du module Perl
perl Makefile.PL
  • Compilez le module Perl
make
  • Vous devrez recevoir une réponse semblable à
Manifying blib/man3/UUID.3pm
  • Installez le nouveau module compilé
make install

Une fois les modules en attente installés, retournez exécuter le processus d’installation de VMware® SDK Perl :

./vmware-install.pl

Note : Le désinstallateur de VMware® n’efface pas complètement les bibliothèques de modules VMware précédentes.

Vérifiez que les bibliothèques ont été installées correctement sur /usr/lib/vmware-vcli/VMware/share/ avant de continuer

Suivez ces étapes manuellement :

  • Vider les anciennes bibliothèques
rm -rf /usr/share/perl5/vendor_perl/VMware
rm -rf /usr/share/perl5/VMware
  • Ajouter les nouvelles bibliothèques VMware
cp -R /usr/lib/vmware-vcli/VMware/share/VMware /usr/share/perl5/vendor_perl/

Une fois effectué, un script peut être lancé avec le contenu suivant, pour valider l’installation de VMware SDK Perl

#!/usr/bin/perl

use strict;
use warnings;

use VMware::VIRuntime;

print "VMware SDK Version: " . $VMware::VIRuntime::VERSION . "\n";

Exécutez le script :

perl check_vmware.pl

La sortie doit être la suivante :

VMware SDK Version: 6.5.0

Si la sortie est différente, veuillez vérifier que vous avez bien suivi correctement toutes les étapes ou mettez-vous en relation avec l’assistance sur https://support.pandorafms.com/integria/ .

Les dépendances SDK pour CentOS 7 et CentOS 8 sont :

 gdbm-devel
 glibc-devel
 glibc-headers
 kernel-headers
 libdb-devel
 libuuid-devel
 make
 openssl
 perl-Business-ISBN
 perl-Business-ISBN-Data
 perl-Class-Inspector
 perl-Class-MethodMaker
 perl-Convert-BinHex
 perl-Crypt-SSLeay
 perl-Digest
 perl-Digest-MD5
 perl-Email-Date-Format
 perl-Encode-Locale
 perl-ExtUtils-Install
 perl-ExtUtils-MakeMaker
 perl-ExtUtils-Manifest
 perl-ExtUtils-ParseXS
 perl-File-Listing
 perl-HTML-Parser
 perl-HTML-Tagset
 perl-HTTP-Cookies
 perl-HTTP-Daemon
 perl-HTTP-Date
 perl-HTTP-Message
 perl-HTTP-Negotiate
 perl-IO-HTML
 perl-IO-SessionData
 perl-IO-Socket-IP
 perl-IO-Socket-SSL
 perl-JSON-PP
 perl-LWP-MediaTypes
 perl-LWP-Protocol-https
 perl-MIME-Lite
 perl-MIME-Types
 perl-MIME-tools
 perl-MailTools
 perl-Mozilla-CA
 perl-Net-HTTP
 perl-Net-LibIDN
 perl-Net-SMTP-SSL
 perl-Net-SSLeay
 perl-SOAP-Lite
 perl-Test-Harness
 perl-TimeDate
 perl-URI
 perl-WWW-RobotRules
 perl-XML-LibXML
 perl-XML-NamespaceSupport
 perl-XML-Parser
 perl-XML-SAX
 perl-XML-SAX-Base
 perl-devel
 perl-libwww-perl
 pyparsing
 systemtap-sdt-devel
 glibc
 glibc-common
 libblkid
 libmount
 libsmartcols
 libuuid
 util-linux

Pour CentOS 8 installez les RPMs perl-Crypt-SSLeay du répértoire de Artica :

yum install `http://firefly.artica.es/centos8/perl-Crypt-SSLeay-0.73_07-1.gf.el8.x86_64.rpm`

Vous pouvez intaller les dépendances extras pour plugin avec la commande suivnte :

`yum install perl-Archive-Zip perl-JSON`

Vous pouvez installer les dépendances de chiffré de mot de passe avec la commande suivante :

`yum install openssl-devel perl-Crypt-CBC perl-Digest-SHA`

Vous pouvez télécharger les RMP personnalisés de perl-Crypt-OpenSSL-AES depuis le répertoire de Ártica :

  • Pour CentOS 7.
`yum install https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/RPM%20CentOS%2C%20RHEL/perl-Crypt-OpenSSL-AES-0.02-1.el7.x86_64.rpm`
  • Pour CentOS 8.
`yum install https://sourceforge.net/projects/pandora/files/Tools%20and%20dependencies%20%28All%20versions%29/RPM%20CentOS%2C%20RHEL/perl-Crypt-OpenSSL-AES-0.02-1.el8.x86_64.rpm`
Installation SDK sur Windows

La version de PERL, qui est distribuée avec le vSphere SDK, ne fonctionne pas avec les bibliothèques de VMware pour PERL. Pour résoudre ce problème, suivez les étapes suivantes :

 //C:\AProgramFiles%\VMware\VMware vSphere CLI\Perl\lib\VMware//

vers

 //C:\strawberry\perl\lib//.
  • Désinstallez le VMware® vSphere SDK.

Configuration du plugin

Vous pouvez configurer le plugin de VMware® manuellement ou en utilisant l’extension pour console disponible, joint avec les archives téléchargeables du plugin de VMware®.

En configurant le plugin manuellement

Nous recommandons d’utiliser l’extension disponible sur votre console de Pandora FMS pour administrer les multiples configurations du plugin de VMware®.

Vous pouvez éditer manuellement le fichier de configuration. Sachez que les lignes qui commencent par '#' seront interprétées comme des commentaires.

Par défaut l'extension de VMware® découvre toutes les entités et ajoute les vérifications par défaut. Par le biais du fichier de configuration, vous pourrez configurer la supervision et choisir quelles variables vous souhaitez superviser.

Le fichier de configuration contient toute les informations nécessaires pour la supervision, groupée dans les sections suivantes :

Tous les erreurs rélatives au fichier de configuratuin sont présentés dans le journal des erreurs du serveur Pandora FMS et en outre le visualiseur d'évennements de la console Pandora FMS. Donc, vous pourrez voir s'il existe quelque erreur sur le fichier de condiguration en consultant n'importe quel de ces deux sources.

Configuration globale

La configuration générale est définie par le token Configuration et contient les paramètres suivantes :

  • server

FQDN ou IP du serveur VMware® à surveiller

  • user

Utilisateur avec autorisations sur vCenter®

  • pass

Mot de passe de l’utilisateur dans vCenter®

  • datacenter

Nom du datacenter (par défaut : ha-datacenter)

  • temporal

Répertoire de travail temporel, par défaut : /tmp

  • logfile

Archive de log, par défaut /tmp/vmware_plugin.log

  • entities_list

Archive d’entités à surveiller, par défaut /tmp/vmware_entitites_list.txt

  • transfer_mode

Mode de transfert de XML à Pandora qui peut être tentacle ou local, par défaut : local :

  1. tentacle : Il envoi les fichiers XML au serveur Pandora FMS en utilisant le protocole Tentacle.
  2. local : Il copie les fichiers vers un dossier local ; l'agent doit être exécuté dans la même machine où se trouve le dossier local.
  • tentacle_client

Afin d'utiliser Tentacle en tant qu'outil de tranfert, il doit être configuré en tant que client : tentacle_client.

  • tentacle_ip

Adresse du serveur de Pandora FMS, par défaut : 127.0.0.1

  • use_encrypted_password

Utiliser des mots de passe chiffrés (1) ou pas (0)

  • tentacle_port

Port pour communications Tentacle, par défaut : 41121

  • tentacle_opts

Options extra pour Tentacle à distance

  • local_folder

Dans transfert local, dossier de destination pour les XML de rapport /var/spool/pandora/data_in

  • pandora_url

Adresse web de la console de Pandora FMS, par défaut

http://127.0.0.1/pandora_console
  • api_pass

Mot de passe de la API de la console de Pandora FMS

  • api_user

Utilisateur avec accès à l’API de Pandora FMS

  • api_user_pass

Mot de passe de l’utilisateur avec accès à l’API

  • retry_send

Réessayer (1) o non (0) l’envoi de XML en cas d’erreur (semblable à buffer_xml)

  • event_mode

Récupérer l’information (1) des évènements de VMware o non (0)

  • event_pointer_file

Archive des indices auxiliaires pour des évènements VMware, par défaut /tmp/vmware_events_pointer.txt

  • virtual_network_monitoring

Il active (1) ou désactive (0) la supervision de commutateurs virtuels (standard)

Encrypt passwords

Utiliser des mots de passe cryptés dans le fichier de configuration

  • verbosity

Niveau de debug (recommandé : 1)

  • threads

Nombre maximum de hilos à utiliser (par défaut 1, recommandé : 4)

  • interval

Intervalle en secondes des agents et modules qui se généreront (ajuster conformément à la fréquence d’exécution du plugin)

  • recon_interval

Intervalle en secondes après que le fichier temporaire de caché s’auto-élimine pour re-scanner l’infrastructure VMware® de nouveau.

  • group

Servers Groupe de destination des agents générés par le plugin, par exemple Servers ou Workstations.

  • virtual_network_monitoring

Il active (1) ou désactive (0) la supervision de commutateurs virtuels (standard)

  • use_ds_alias_as_name

Il active (1) ou désactive (0) l'utilisation d'un alias en tant que nom d'agent sur des agent de stockage de données-.

Server, datacenter, user, pass et interval peuvent être modifiés depuis la console Pandora FMS.

Si vous utilisez actuellement Pandora FMS 5.0 ou une version supérieure et que vous souhaitez utiliser les extensions du plugin ou la surveillance d’évènements, vous devrez configurer correctement l’API de Pandora FMS. Pour cela, vous devrez ajouter un mot de passe à l’API et permettre l’accès aux adresses pertinentes dans la liste d’accès de l’API. Ces champs se définissent dans la configuration générale de la console de Pandora FMS.

L'utilisateur que vous utiliserez avec le mot de passe de l'API doit avoir des autorisations de lecture et écriture afin d'enregistrer les évennements. En outre rappelez-vous d'inclure les agents Datacenter dans le plan de supervision puisque les évennemens pour la Console sont créés à partir de ces agents.

Un exemple dans cette section dans le fichier de configuration pourrait être le suivant :

 Configuration
 server 192.168.70.249
 user Administrator
 pass S1stemas
 datacenter artica
 temporal /tmp
 logfile /tmp/vmware_plugin.log
 entities_list /tmp/vmware_entities_list.txt
 transfer_mode tentacle
 tentacle_ip 192.168.70.81
 tentacle_port 41121
 tentacle_opts
 local_folder /var/spool/pandora/data_in
 pandora_url http://192.168.70.81/pandora_console
 api_pass 1234
 api_user admin
 api_user_pass pandora
 event_mode 0
 event_pointer_file /tmp/vmware_events_pointer.txt

Si vous utilisez le plugin dans des systèmes MS Windows® il sera nécessaire de changer toutes les chemins des fichiers par des chemins compatibles avec Windos®.

Scan d'entités

Afin d'utiliser cette fonctionnalité dans Discovery, ajoutez la configuration souhaitée dans Extra settings.

En raison de la taille des infrastructures VMware® qui characterise les clients Enterprise, un scan général de toutes les entités disponibles dans chaque exécution pourrait déclencher des problèmes de performance.

Afin d'éviter cette situation, le plugin de supervision de VMware® dispose du fichier d'entités ( entities_list ) où la liste d'entités est stockée scannés dans la première exécution.

Tandis que le fichier existe, la supervision sera limitée aux entités indiquées dedans.

Si vous avez besoin d'un scan périodique de votre infrastructure VMware®, vous pouvez supprimer ce fichier te temps en temps (par exemple, chaque heure) en utilisant le cron du système.

Renommage d'entités

Pour utiliser cette fonctionnalité dans Discovery, ajoutez la configuration souhaitée dans Extra settings.

Le renommage d'entités se fait en utilisant le token RENAME et permet de changer le nom des entités découvertes par le plugin. En utilisant cette fonctionnalité, les agents créés dans Pandora apparaîtront avec le nouveau nom attribué. La structure de cette section est la suivante :

<nom actuel> TO <nouevau nom>

Un exemple de configuration de cette section pourrait être le suivant :

 #Rename entities
 Rename
 Debian 11 TO Virtual Machine 1
 RedHat 12 TO Web server
 ESX Workstation TO Host Work Sales
Rejet d'entités

Pour utiliser cette fonctionnalité dans Discovery, ajoutez la configuration souhaitée dans Extra settings.

Le plugin permet de fair un rejet des entités par type ou de manière individuelle, on vous explique les deux options ci-dessous.

Le rejet des types d'entités se fait en utilisant le token REJECT. Dans cette section vous pouvez écarter les entités selon leur type ; par exemple toutes les machines virtuelles ou toutes les hôtes ESX. Les valeurs possibles que cette section peut prende sont les suivants :

all_datastore

all_datacenter

all_esx

all_vm

all_ipaddresses

Une configuration de cette section qui écarte toutes les entités serait la suivante :

 #Dismissed entities
 Reject
 all_datastore
 all_datacenter
 all_esx
 all_vm

Afin d'écarter les entités de manière individuelle, il sera nécessaire de les effacer du fichier d'entités créé par le plugin. Le plugin crée ce fichier dans la localisation indiquée dans le paramètre entities_list (par défaut /tmp/vmware_entities_list.txt). Le plugin remplit le contenu de ce fichier avec la première exécution, ou tandis qu'elle n'existe pas, en créant une liste avec toutes les entités découvertes.

Un exemple de fichier pourrait être le suivant :

 Datacenter
 artica
 Datastore
 datastore_1
 datastore2
 ESX
 192.168.70.252
 VM
 Pandora FMS 4.0.3
 Debian2
 Debian3
 Debian4
 Redhat
 debian5
 Debian6
 Debian8
 Debian7
 Debian11
 Debian10
 Debian9
 NSM
 Pandora
 vcenter
 suse11.2

Le fichier de configuration est divisé entre quelques tokens : Datacenter, Datastore, ESX et VM, où les différentes entités sont listées. Une fois le fichier de configuration créé, le plugin lira de ce fichier les entités à superviser. Pour écarter une entité vous avez seulement à l'effacer depuis ce fichier. Si, par exemple, vous n'avez pas besoin de superviser les entités : Debian2, datastore2, NSM, suse11.2 et 192.168.70.252, le fichier de configuration devrait donc être pareille à ceci :

 Datacenter
 artica
 Datastore
 datastore_1
 ESX
 VM
 Pandora FMS 4.0.3
 Debian3
 Debian4
 Redhat
 debian5
 Debian6
 Debian8
 Debian7
 Debian11
 Debian10
 Debian9
 Pandora
 vcenter

Cette fonctionnalité permet de faire une distribution de la charge de supervision limitant le nombre d'entités supervisées dans chaque exécution du plugin. Nous vous explicons ci-dessous plusieures techniques de distribution de charge.

La section Reject, du plugin de supervision d'environnements VMware® contient en outre l'option suivante :

all_ipaddresses

Si cette instruction est présente, l'addresse IP dans le XML ne sera pas mise à jour. Ça signifie que si vous activez cette option, le plugin/tâche de Discovery de VMware ne mettra à jour le champ ip address des agents. Cette instruction est aussi valide pour les tâches de reconnaissance du Discovery sobre VMware®.

Configuration de surveillance

Pour utiliser cette fonctionnalité sur Discovery, ajoutez la configuration souhaitée dans Extra settings

Les sections suivantes de l’archive configurent les modules créés par chaque type d’entité. Les sections utilisent les tokens Datacenter, Datastore, ESX, VM. Dans ces dernières, vous pourrez activer/désactiver les modules à surveiller. Dans l’exemple suivant, nous avons réalisé une configuration en sélectionnant les modules que nous souhaitons créer pour les ESX et les machines virtuelles :

...
 #ESX Modules
 ESX
 cpuUsagePercent disabled
 diskRead enabled
 diskWrite enabled

 #VM Modules
 VM
 diskReadLatency disabled
 diskWriteLatency disabled
 diskRate enabled
 ...

Chaque ligne de configuration correspond à un module. Dans l’exemple précédent, les modules seront créés avec les valeurs par défaut, mais il est possible de configurer le nom, la description et les limites pour les états d’Avertissement et Critique du module. Voici un exemple de cette configuration :

...
#VM Modules
VM
diskReadLatency disabled
diskWriteLatency disabled
diskRate name = Tasa Disco; desc = Tasa Lec/Esc disco; limits_warn = 5 10; limits_crit = 0 4
...

Les options disponibles pour la configuration des modules sont les suivantes :

  • <module> disabled : le module NON se créera
  • <module> enabled : le module OUI se créera (avec les valeurs par défaut).
  • <module> name = <nom>; desc = <description>; limits_warn <lim_warn>; limits_crit <lim_crit» le module se créera avec le nom et la description fournis. De plus, les seuils maximaux et minimaux se définiront pour les états Avertissement et Critique.

Il est très important de prendre en compte la structure des lignes de l’archive de configuration et surtout de voir le caractère ; qui est collé au nom et à la description du module. Ces deux lignes NE SONT PAS ÉQUIVALENTES (voir les espaces avant le caractère ; ):

diskRate name = Tasa Disco; desc = Tasa Lec/Esc disco; limits_warn = 5 10; limits_crit = 0 4
diskRate name = Tasa Disco    ; desc = Tasa Lec/Esc disco    ; limits_warn = 5 10; limits_crit    = 0    4

Les modules sont référencés par leur court nom, une abréviation équivalente et plus simple à écrire dans la ligne de commandes. La table de correspondance des noms abrégés et développés se trouve dans la section suivante.

Analysons la configuration de l’exemple précédent. Nous avons configuré le module Disk Rate qui se créera avec les valeurs suivantes :

 * Nom : Tasa Disco
 * Description: Tasa Lec/Esc disco
 * Min Warning: 5
 * Max Warning: 10
 * Min Critical: 0
 * Max Critical: 4

Certains modules se gèrent de façon dynamique, par exemple ceux relatifs aux disques ou interfaces réseau. Pour ces métriques, le plugin crée un module pour chaque élément découvert. Ces modules ont généralement des noms spéciaux sur Pandora FMS, par exemple :

Disk Free [0]
Disk Free [1]
Disk Free [2]
...

Dans ces cas, comme le nom a une partie dynamique, l’usage de la macro % est possible, qui sera substituée par la partie variable du nom du module. Un exemple de configuration des modules serait le suivant :

diskFree name = Disk (%s) free space; desc = Free space for disk; limits_warn = 0 0; limits_crit = 0 0

Dans ce cas, le nom du module par défaut est :

Disk Free [0]

Puis s’appellera :

Disk (0) free space

A partir de la version 5.0, il est possible de configurer des chaînes de caractères pour les limites des états Avertissement et Critique des modules. La configuration serait comme la suivante :

powerState name = état en fonctionnement; desc = état en fonctionnement VM; limits_warn = .*suspended.*; limits_crit = .*poweredOff.*

Il est possible de configurer des expressions régulières pour jouir d’une flexibilité plus grande pour établir les limites.

En configurant la surveillance VMware

Suivez les étapes décrites sur : Discovery pour configurer la surveillance de votre infrastructure VMware grâce à Discovery.

Exécution du plugin VMware

Pour vérifier le fonctionnement de votre configuration, vous pouvez exécuter :

perl /usr/share/pandora_server/util/plugin/vmware-plugin.pl /usr/share/pandora_server/util/plugin/vmware-plugin.conf

Note :

  • Sur VMware SDK 6.5.0. Si vous recevez la sortie suivante pendant l’exécution du plugin :
Server version unavailable at 'https://your_vmwre_fqdn:443/sdk/vimService.wsdl' at /usr/local/lib64/perl5/VMware/VICommon.pm line 734.

La solution est apporté en ajustant les versions des bibliothèques LWP de Perl :

cpan install GAAS/libwww-perl-5.837.tar.gz

Nous recommandons vivement d’utiliser Discovery Applications VMware pour surveiller votre infrastructure.

Ainsi, vous pouvez choisir différentes façons d’automatiser l’exécution du plugin de surveillance VMware :

Programmer l’exécution depuis l’agent de Pandora FMS

Utiliser l’agent de Pandora FMS

Copier vmware-plugin.{pl,conf} de sorte à ce qu’il soit accessible par l’agent de Pandora FMS :

 sudo cp \
 /usr/share/pandora_server/util/plugin/vmware-plugin.{pl,conf} \
 /etc/pandora/plugins/

Pour créer un fichier de configuration

vmware-plugin-events.conf

copiez vmware-plugin.conf et en modifiez manuellement event_mode à 1.

A présent, il faut ajouter un nouveau module de type plugin à l’archive de configuration de l’agent, avec la ligne suivante :

module_plugin perl \
 /etc/pandora/plugins/vmware-plugin.pl \
 /etc/pandora/plugins/vmware-plugin.conf

Si vous souhaitez, en plus, la copie des évènements, vous devez créer un autre module plugin avec une archive de configuration différente qui permette la copie d’évènement. La formulation serait la suivante :

module_plugin perl \
 /etc/pandora/plugins/vmware-plugin.pl \
/etc/pandora/plugins/vmware-plugin-events.conf

Dans des systèmes Windows, il faudra indiquer l’interprète utilisé. La commande serait :

module_plugin perl "C:\Program Files\pandora_agent\util\vmware-plugin.pl" "C:\Program Files\pandora_agent\util\vmware-plugin.conf"

Dans les sections suivantes, les paramètres de l’archive de configuration du plugin sont expliqués en détails dans les sections suivantes.

Le plugin de VMware peut prendre beaucoup de temps pour l’exécution en raison du nombre d’entités inscrites.

Nous recommandons la surveillance par Discovery pour que ce soit DiscoveryServer lui même qui se charge de ces tâches.

Si vous décidez de le surveiller d’une autre façon, il se pourrait qu’il soit nécessaire de distribuer la charge entre plusieurs agents software de Pandora FMS ou de choisir un autre mode de programmation. Toute l’information concernant cela se trouve dans les sections suivantes.

Programmer l’exécution depuis le cron du système

Vous pouvez programmer l’exécution du plugin depuis le propre cron du système. Sachez que la valeur d’intervalle des éléments générés (interval dans la configuration) et la fréquence d’exécution doivent être cohérents :

# Input to add to crontab, set a range of 600 to use this setting/10 * * * * root perl /usr/share/pandora_server/util/plugin/vmware-plugin.pl /usr/share/pandora_server/util/plugin/vmware-plugin.conf

L'exemple précédente montre la ligne à ajouter à crontab. Configurez un intervalle de 600 pour utiliser cette configuration.

Surveillance de l’architecture virtuelle VMware

Pour voir le résultat de l’exécution du plugin, il suffit d’accéder au sous-menu Agent Detail, dans le menu Views.

Dans cette vue, les agents créés par le plugin apparaîtront avec les autres agents de Pandora FMS.

vmware_agent_detail.jpg

Si nous appuyons sur le nom d’un agent, nous verrons la vue de l’agent de Pandora FMS, où les modules surveillés apparaîtront par le plugin VMware.

agent_detail_screen.jpg

Par défaut, le plugin déploie une surveillance basique pour chacun des éléments VMware. La configuration par défaut pour les différentes entités est la suivante :

Surveillance par défaut pour Datacenter
  • Ping
  • Check 443 port
Surveillance par défaut pour Datastore
  • Capacity
  • Free Space
  • Disk Overallocation
  • Free Space Bytes
Surveillance par défaut pour ESXi
  • CPU Usage
  • Memory Usage
  • Data received
  • Data transmitted
  • Disk Read Latency
  • Disk Write Latency
  • Host Alive
  • Disk Rate
  • Net Usage
Surveillance par défaut pour machines virtuelles
  • CPU Usage
  • Memory Usage
  • Tools Running Status
  • Host Alive
  • Disk Free
  • Disk Read Latency
  • Disk Write Latency
  • Data received
  • Data transmitted
  • Net Usage

La section suivante détaille tous les modules disponibles et l’information que rapporte chaque module.

Modules des agents de l’architecture virtuelle VMware

Quelques modules pourraient ne pas être disponibles, tout dépend de la version de VMware et de la configuration de l’environnement. Dans les tables suivantes, les différents modules disponibles ainsi que leurs caractéristiques de disponibilité y sont décrits.

Le plugin permet de configurer Performance Counters, personnalisés pour les hosts ESX et machines virtuelles. Vous pourrez voir comment procéder dans la section qui détaille le contenu de l’archive de configuration.

Modules pour agents de type Datacenter
Module Description Version API Disponibilité
Ping Test ping sur la machine qui supporte le vCenter Tous Toujours
Check 443 port Test sur le port 443 de la machine qui supporte le vCenter Tous Toujours
Modules pour agents de type Datastore
Module Description Version API Disponibilité
Capacity Capacité maximale du Datastore en bytes Tous Toujours
Free Space Pourcentage d’espace libre du Datastore Tous Toujours
Disk Overallocation Pourcentage de sur-assignation du disque ≥v4.0 Toujours
Free Space Bytes Quantité d’espace libre en bytes Touss Toujours
Modules pour agents du types host ESXi
Modules Description Version API Disponibilité
Boot Time Dernière date à laquelle s’est allumé l’host Tous Toujours
CPU Info [x] Information générale de CPU (un module se crée par CPU de ESXi) Tous Si connecté
Memory Size Quantité totale de mémoire physique de l’host en Bytes Tous Si connecté
Overall CPU Usage Somme de l’usage de tous les CPUs en Mhz Tous Si connecté
Overall Memory Usage Overall Memory Usage of VMware Hosts Tous Si connecté
Power State Etat de l’énergie de l’host ≥v2.5 Toujours
SSL Thumbprint Empreinte SSL de l’host ≥v4.0 Si configuré
Uptime Uptime de l’host en secondes ≥v4.1 Si connecté
VNIC Info [x] Information sur les interfaces de réseaux virtuelles de l’host Tous Si connecté et configuré
Host Alive Module qui vaut 1 si le ESX est connecté et 0 dans le cas contraire. Tous Toujours
Connection State Etat de la connection de l’host Tous Toujours
Disk Read Taux de Kbps lus du disque Tous Niveau stats ≥2
Disk Write Taux de Kbps écrits du disque Tous Niveau stats ≥2
Disk Read Latency Latence de lecture du disque en millisecondes Tous Niveau stats ≥2
Disk Write Latency Latence d’écriture du disque en millisecondes Tous Niveau stats ≥2
Data received Taux de Kbps reçu de l’host Tous Niveau stats ≥2
Data transmitted Taux de Kbps envoyés de l’host Tous Niveau stats ≥2
Packages Received Nombre de paquet reçus dans l’intervalle Tous Niveau stats ≥2
Packages Transmitted Nombre de paquets envoyés dans l’intervalle Tous Niveau stats ≥2
CPU Usage Pourcentage d’utilisation de CPU Tous Niveau stats ≥2
Memory Usage Pourcentage d’utilisation de la mémoire RAM Toutes Niveau stats ≥2
Net Usage Données de réseau reçues et envoyées de toutes les NICs Tous Niveau stats ≥2
Disk Rate Taux I/O ajouté dans KB/sec Tous Niveau stats ≥2
Max. Disk Latency Latence maximale de tous les disques Tous Niveau stats ≥2
HA Status Etat HA de l’host ≥v5.0 Si configuré
Sensor* Etat des capteurs de hardware (un module par capteur) Tous ESXi >= 3.5
Modules pour agents de type machine virtuelle

Ces modules fournissent l’information depuis le point de vue de l’architecture VMware. Si vous désirez surveiller d’autres paramètres relatifs à la machine virtuelle, il faudrait prendre d’autres options en considération, comme la Surveillance avec agents logiciels ou la Surveillance virtuelle.

Module Description Version API Disponibilité
Boot Time Dernière date à laquelle s’est allumée la machine virtuelle Tous Si connecté
Connection State Etat de la connexion Tous Toujours
Consumed Overhead Memory Quantité de mémoire utilisée par la machine virtuelle en MB ≥v4.0 Si configuré
CPU Allocation Information sur les ressources assignées au CPU de la machine virtuelle Tous Si configuré
Disk Free [x] Pourcentage libre du disque de la machine virtuelle. (Il y aura un module pour chaque disque qui contient la machine virtuelle) Tous Si configuré
Guest State Mode d’opération du système d'exploitation hôte Tous Si configuré
Host Info Information sur l’host VMware Tous Si configuré
Host Alive Module qui vaut 1 si la machine virtuelle est en cours d’exécution et 0 dans le cas contraire. Tous Toujours
Host Memory Usage Mémoire utilisée par la machine virtuelle en MB Tous Si connecté
Host Name Nom associé à l’host associé Tous Si configuré
IP Address [x] Adresse IP de la machine. (Il en apparaîtra une par interface de réseau disponible) ≥v4.1 Si configuré
MAC Address [x] Adresse MAC de la machine. (Il en apparaîtra une par interface de réseau disponible.) Tous Si configuré
Max CPU Usage Limite supérieure d’utilisation de la CPU de la machine virtuelle Tous Si connecté
Max Memory Usage Limite supérieure d’utilisation de la mémoire RAM de la machine virtuelle Tous Si connecté
Memory Allocation Limite des ressources pour la mémoire Tous Si configuré
Memory Overhead Quantité de mémoire utilisée par la machine virtuelle au-delà des besoins du système d'exploitation hôte en Bytes Tous Si configuré
Overall CPU Demand Statistiques basiques sur le rendement de la CPU en Mhz ≥v4.0 Si connecté
Overall CPU Usage Statistiques basiques sur l’usage du CPU en Mhz Tous Si connecté
Power State Etat actuel de la machine virtuelle Tous Toujours
Private Memory Quantité de mémoire en MB accordée exclusivement à la machine virtuelle sans partage ≥v4.0 Si connecté
Shared Memory Quantité de mémoire en MB accordée à la machine virtuelle de la mémoire partagée ≥v4.0 Si connecté
Tools Running Status Etat actuel de l’exécution de VMware Tools installé dans le système d'exploitation hôte ≥v4.0 Si configuré
Trigger Alarm State Etat des alarmes de VMware Toutes Si configuré
Uptime Seconds Uptime de la machine virtuelle en secondes ≥v4.1 Si connecté
Virtual Image Path Chemin d’accès de l’archive de configuration de la machine virtuelle (.vmx) Tous Toujours
Disk Read Taux de Kbps lus par le disque Tous Niveau stats ≥2
Disk Write Taux de Kbps écrits par le disque Tous Niveau stats ≥2
Disk Read Latency Latence de lecture du disque en millisecondes Tous Niveau stats ≥2
Disk Write Latency Latence d’écriture du disque en millisecondes Tous Niveau stats ≥2
Data received Taux de Kbps reçus de l’host Tous Niveau stats ≥2
Data transmitted Taux de Kbps envoyés de l’host Tous Niveau stats ≥2
Packages Received Nombre de paquets reçus dans l’intervalle Tous Niveau stats ≥2
Packages Transmitted Nombre de paquets envoyés dans l’intervalle Tous Niveau stats ≥2
CPU Usage Pourcentage d’utilisation de CPU Tous Niveau stats ≥2
Memory Usage Pourcentage d’utilisation de la mémoire RAM Tous Niveau stats ≥2
Net Usage Données de réseau reçues et envoyées des NICs Tous Niveau stats ≥2
Disk Rate Taux I/O ajouté en KB/sec Tous Niveau stats ≥2
Max. Disk Latency Latence maximale de tous les disques Tous Niveau stats ≥2
HeartBeat Nombre de heartbeats de la machine virtuelle Tous Niveau stats ≥2
CPU Ready Pourcentage de temps pendant lequel la machine est prête mais pas en place pour s’exécuter dans le CPU physique Tous Niveau stats ≥2
Number Snapshots Nombre de snapshots pour la machine virtuelle (ce module peut affecter le rendement de la surveillance'. C’est pour cela qu’il est recommandé de l’exécuter avec une haute valeur d’intervalle. Par exemple, chaque heure.) Tous Si configuré
HA Status Etat HA pour la machine virtuelle ≥v5.0 Si configuré

Quelques modules nécessitent d’avoir installés les VMware tools

Surveillance d’évènements VMware

Cette fonctionnalité réalise une copie des évènements présents dans le vCenter de VMware à la liste des évènements de Pandora FMS.

Ces évènements sont parvenus à faire partie du flux d’évènements normaux de Pandora FMS et restent associés de façon automatique à l’agent qui représente le vCenter auquel ils proviennent (si l’agent existe au moment de la création de l’évènement).

Dans le processus de dump des évènements, l’information et la sévérité que VMware indique lors de la création de l’évènement sont respectées, de telle sorte que les évènements avec un niveau de sévérité critique, avertissant, ou informatif conserveront ces niveaux dans Pandora FMS. L’image suivante montre un exemple d’information détaillée d’un évènement de dump de VMware à Pandora FMS.

Avec tous les évènements présents sur Pandora FMS, vous pourrez réaliser toutes les actions disponibles pour la gestion des évènements, comme par exemple la création d’alertes, la configuration de filtres, l’ouverture d’incidences, etc.

Gestion et visualisation de l’architecture virtuelle VMware

Accompagné du plugin VMware, deux extensions sont distribuées, VMware Manager® et VMware View®. VMware View permet de visualiser tous les composants de l’architecture VMware® de façon pratique. De plus, avec VMware Manager®, vous pourrez gérer des machines virtuelles en arrêtant, en démarrant, en réinitialisant ou en suspendant son activité depuis la console de Pandora FMS.

En utilisant VMware View

Pour commencer à utiliser le viseur des architectures VMware®, allez vers Monitoring > VMware view.

Si vous n'avez pas aucun appareil à superviser ou vous n'avez pas configuré l'API des vCenter® et ESXi VMware® vous obtiendrez quelque chose de pareille à l'image suivante :

Si le plugin se trouve en état opératif, vous recevrez le message suivant (cliquez sur Show) :

L’extension VMware vous montrera une carte semblable à celle ci-dessous avec toute l’architecture VMware®.

La carte contient les éléments de l’architecture VMware (machines virtuelles, ESX, Datastores et Datacenters) avec différents icônes qui les identifient, comme l’état des agents de Pandora FMS qui représentent chaque élément. De plus, la relation qui existe est montrée entre machines virtuelles, ESX et Datacenter. De cette façon, l’état de l’architecture VMware® peut se voir en un coup d’oeil.

Cette extension a des options qui aident à améliorer la visualisation de l’architecture en cachant des éléments, en augmentant la taille des lettres et en permettant de faire un zoom pour pouvoir voir les éléments de plus près.

En utilisant les options précédentes, nous ne montrerons que ceux de Datacenter et de ESX.

VMware View Dashboards

Pour des versions de Pandora FMS 5.0 ou plus, VMware View apporte deux vues supplémentaires en plus de la vue de carte topologique de l’architecture virtuelle. Les nouveaux tabs permettent d’interchanger entre les différentes vues de la VMware View.

La première vue est un dashboard général, sur lequel vous pourrez jeter un coup d’oeil sur l’état général de l’architecture virtuelle en nombres, c’est-à-dire, combien de machines virtuelles, host ESXi ou datastores ont des problèmes. De plus, vous pourrez voir des paramètres de performance généraux grâce aux graphiques qui montrent les 5 machines virtuelles qui consomment le plus de mémoire, de CPU, de disque et de réseau sur l’ensemble de l’architecture virtuelle.

La seconde vue permet de voir les paramètres de performance de chaque host ESX. Dans cette vue, vous pourrez choisir un host ESX qui sera chargé du tableau de bord sur lequel se présentera l’état de l’host et des machines virtuelles, comme des métriques de performance relatives à l’utilisation de CPU, de mémoire, de disque et de réseau de l’host ESXi. De plus, cette vue permet aussi de voir des graphiques montrant les machines virtuelles qui consomment le plus de ressources (CPU, mémoire, disque et réseau) de l’host sélectionné.

VMware View Options Tab

Versión Enterprise.

L’extension de VMWare est incluse avec Pandora FMS Console Enterprise. Elle dispose d’un panneau de configuration sur lequel il est possible d’y établir des dashboards et des cartes :

  • Vous pourrez ajuster les seuils de vue (minimum et maximum) des graphiques des dashboards.
  • Vous pourrez ajuster la configuration de la vue de la carte par défaut.
  • Il contient un lien au système de gestion des configurations.

Accessible dans l’onglet des options du VMWare View :

En utilisant le VMware Manager depuis les agents

Pour utiliser l’extension VMware® Manager, il faut aller sur la vue d’opération d’un agent qui correspond à une machine virtuelle dans l’architecture VMware. Dans cette vue, vous pourrez voir un icône avec le symbole de VMware qui correspond à l’extension.

L’extension VMware Manager permet de gérer des machines virtuelles depuis la console de Pandora FMS. L’extension montre l’état actuel de la machine virtuelle avec un code de couleurs :

  • Vert = allumée (machine virtuelle en exécution).
  • Orange = en veille (machine virtuelle dont l'exécution est en pause)
  • Gris = arrêtée (la machine virtuelle n'est pas en exécution).

De plus, les états disponibles sont montrés dans un menu et permettent de changer l’état de la machine virtuelle en le sélectionnant, en cliquant sur Change Status.

En sélectionnant l’état Stop et cliquant Change status :

Cela provoquerait l’arrêt de la machine et la vue de l’extension VMware Manage changerait en montrant que la machine est désormais arrêtée, comme on peut le voir sur l’image suivante :

Cette extension requiert l’installation du SDK de VMware® pour Perl dans la même machine qui supporte la console de Pandora FMS. Sans ce pré-requis, l’extension ne fonctionnera pas.

Si vous avez configuré la surveillance en utilisant RENAME, cet avantage ne fonctionnera pas contre les objectifs renommés.

Métriques de performance personnalisées

Pour utiliser cette fonctionnalité sur Discovery, ajoutez la configuration souhaitée dans Extra settings

Dans cette section, vous pouvez configurer de nouveaux modules relatifs à Performance Counters pour les machines virtuelles et les ESX. Pour configurer un nouveau module de rendement, il faudra utiliser la structure suivante :

custom_performance type = mem; metric = swapinRate; module_type = generic_data; name = Swap In Rate; desc = Swap In Rate for host; limits_warn = 0 0; limits_crit = 0 0

Les paramètres à configurer sont :

  • type : type de métrique à surveiller. Les types de métrique sont :
    • cpu : CPU
    • mem ': Memory
    • disk : Disk
    • net : Network
    • sys : System
  • metric : métrique à surveiller (Plus loin dans le document, il vous sera indiqué comment voir les métriques disponibles).
  • module_type : type de module de Pandora FMS (par exemple : generic_data).
  • name : nom du module.
  • desc: description du module.
  • limits_warn: limites par l’état d’Avertissement.
  • limits_crit: limites pour l’état Critique.

Vous pourrez consulter les métriques disponibles pour chaque type, dans l’aparté Performance de chaque entité. Cette vue se trouve dans le vCenter et montre les métriques de rendement qui peuvent être surveillées avec le plugin VMware. Par exemple, l’image suivante montre la vue Performance pour un host ESX.

Haga clic para ampliar

Pour voir la liste liste complète de toutes les métriques selon leur type, vous devrez cliquer sur le bouton “Advanced” puis sur le bouton “Char option”. Vous verrez une liste avec tous les types de métriques et celles respectives à chaque types seront dans une fenêtre comme le montre l’image suivante.

Pour chaque type de métrique, une série de compteurs apparaîtra, représentant les variables que nous pourrons surveiller avec Pandora FMS. Pour surveiller une variable, il faut son “Internal Name”. De plus, nous devrons nous assurer que le niveau de statistiques, configuré dans le vCenter, permette de montrer la variable que nous recherchons, en le comparant avec le champs “Collection Level” de la métrique.

Si, par exemple, nous souhaitons voir l’utilisation de CPU d’un host ESX, nous chercherons les variables type “cpu” pour un ESX et parmi celles disponibles, nous choisirons “utilization”. La ligne que nous devrons ajouter à l’archive de configuration, dans ce cas-ci dans la section ESX, sera la suivante :

custom_performance type = cpu; metric = utilization; module_type = generic_data; name = CPU Utilization; desc = CPU Utilization for ESX; limits_warn = 0 0; limits_crit = 0 0
Surveillance de plusieurs Datacenter avec un même agent

Chaque module plugin configuré dans l’agent surveille un datacenter, c’est pourquoi si on désire surveiller plusieurs datacenter avec un même agent software de Pandora FMS, il faudra prendre en compte les considérations suivantes :

  • Il faut ajouter un module_plugin pour chaque datacenter à surveiller, par exemple :
 module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter1.conf
 module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter2.conf
  • Dans chaque archive de configuration, il faudrait changer les paramètres : logfile, entities_list, event_pointer_file. Les archives de configuration resteraient comme les suivantes :

vmware-plugin-datacenter1.conf

 ...
 logfile /tmp/vmware_plugin_datacenter1.log
 entities_list /tmp/vmware_entities_list_datacenter1.txt
 event_pointer_file /tmp/vmware_events_pointer_datacenter1.txt
 ...

vmware-plugin-datacenter2.conf

 ...
 logfile /tmp/vmware_plugin_datacenter2.log
 entities_list /tmp/vmware_entities_list_datacenter2.txt
 event_pointer_file /tmp/vmware_events_pointer_datacenter2.txt
 ...
  • Si, en plus, vous souhaitez réaliser la copie des évènements, vous devrez avoir deux modules plugin en plus, avec les archives respectives de configuration et en activant le flag event_mode. La configuration des module_plugin serait comme la suivante :
module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter1.conf
module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter1-events.conf
module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter2.conf
module_plugin /etc/pandora/plugins/vmware-plugin.pl /etc/pandora/plugins/vmware-plugin-datacenter2-events.conf
Diviser la charge de la surveillance entre plusieurs serveurs de Pandora

Les options de l’archive de configuration du plugin permettent de distribuer facilement la charge de surveillance entre plusieurs serveurs de Pandora FMS. Par exemple, supposons que nous ayons la structure suivante dans notre environnement de virtualisation :

 DC
 |
 |- Datastore_1
 |- DataStore_2
 |
 |- ESX_1
       |- mv1.1
       |- mv1.2
       |- mv1.3

 |- ESX_2
       |- mv2.1
       |- mv2.2
       |- mv2.3

Dans notre environnement, nous disposons de deux serveurs de Pandora FMS pour réaliser la surveillance. Une manière simple de diviser la charge serait de surveiller le Datacenter, les Datastores et les ESX dans le premier serveur et toutes les machines virtuelles dans le second. Les archives de configuration du plugin seraient les suivantes :

Serveur 1 :

 Reject
 all_vm

Serveur 2 :

 Reject
 all_datacenter
 all_datastore
 all_esx

Le serveur 1 surveille tout sauf les machines virtuelles et le Serveur 2 surveille les machines virtuelles.

Une autre façon de distribuer la charge serait de diviser la surveillance par ESX : le premier serveur de Pandora FMS surveillerait tout ce qui est relatif au premier serveur ESX et le second, tout ce qui appartiendrait au second serveur ESX. Grâce à cela, nous diviserons l’archive entities_list.txt en deux archives et nous configurerons deux exécutions du plugin dans différents agents. Les archives entities_list.txt seraient telles que :

Serveur 1 :

 Datacenter
 DC
 Datastore
 Datastore_1
 ESX
 ESX_1
 VM
 mv1.1
 mv1.2
 mv1.3

Le Serveur 1 ignore tout ce qui est lié au second groupe d’entités VMware, c’est pourquoi il se charge de surveiller que la moitié de l’environnement.

Serveur 2 :

 Datastore
 DataStore_2
 ESX
 ESX_2
 VM
 mv2.1
 mv2.2
 mv2.3

Le Serveur 2 ignore tout ce qui est lié au premier groupe d’entités VMware en plus du Datacenter, puisque ce dernier est surveillé par le Serveur 1.

La configuration des entités exclues est très flexible et permet de diviser la charge qui attribue quelques entitées à chaque agent de Pandora FMS.

Exemples d’archive configuration

Archive avec tous les modules désactivés

#These lines are comments

#Datacenter Modules
Datacenter
ping disabled
check443 disabled

#Datastore Modules
Datastore
capacity disabled
freeSpace disabled
overallocation disabled
freeSpaceBytes disabled

#ESX Modules
ESX
bootTime disabled
cpuInfo disabled
memorySize disabled
overallCpuUsage disabled
overallMemoryUsage disabled
powerState disabled
sslThumbprint disabled
uptime disabled
vnicInfo disabled
hostAlive disabled
connectionState disabled
diskRead disabled
diskWrite disabled
diskReadLatency disabled
diskWriteLatency disabled
netReceived disabled
netTransmitted disabled
netPkgRx disabled
netPkgTx disabled
cpuUsagePercent disabled
memoryUsagePercent disabled
netUsage disabled
diskRate disabled
maxDiskLatency disabled
haStatus disabled

#VM Modules
VM
bootTime disabled
connectionState disabled
consumedOverheadMemory disabled
cpuAllocation disabled
diskFree disabled
guestState disabled
host disabled
hostAlive disabled
hostMemoryUsage disabled
hostName disabled
ipAddress disabled
macAddress disabled
maxCpuUsage disabled
maxMemoryUsage disabled
memoryAllocation disabled
memoryOverhead disabled
overallCpuDemand disabled
overallCpuUsage disabled
powerState disabled
privateMemory disabled
sharedMemory disabled
toolsRunningStatus disabled
triggeredAlarmState disabled
virtualImagePath disabled
uptimeSeconds disabled
diskRead disabled
diskWrite disabled
diskReadLatency disabled
diskWriteLatency disabled
netReceived disabled
netTransmitted disabled
netPkgRx disabled
netPkgTx  disabled
cpuUsagePercent disabled
memoryUsagePercent disabled
netUsage disabled
diskRate disabled
maxDiskLatency disabled
heartbeat disabled
cpuReady disabled
snapshotCounter disabled

Table de correspondance des noms courts

Datacenter
Nom délivré Nom court
Ping ping
Check 443 port check443
Datastores
Nom délivré Nom court
Capacity capacity
Free Space freeSpace
Disk Overallocation overallocation
Free Space Bytes freeSpaceBytes
ESX
Nom délivré Nom court
Boot Time bootTime
CPU Info cpuInfo
Memory Size memorySize
Overall CPU Usage overallCpuUsage
Overall Memory Usage overallMemoryUsage
Power State powerState
SSL Thumbprint sslThumbprint
Uptime uptime
VNIC Info vnicInfo
Host Alive hostAlive
Connection State connectionState
Disk Read diskRead
Disk Write diskWrite
Disk Read Latency diskReadLatency
Disk Write Latency diskWriteLatency
Data received netReceived
Data transmitted netTransmitted
Packages Received netPkgRx
Packages Transmitted netPkgTx
CPU Usage cpuUsagePercent
Memory Usage memoryUsagePercent
Net Usage netUsage
Disk Rate diskRate
Max Disk Latency maxDiskLatency
HA Status haStatus
Sensor* systemHealthInfo
Machines Virtuelles
Nom délivré Nom court
Boot Time bootTime
Connection State connectionState
Consumed Overhead Memory consumedOverheadMemory
CPU Allocation cpuAllocation
Disk Free diskFree
Guest State guestState
Host Info host
Host Alive hostAlive
Host Memory Usage hostMemoryUsage
Host Name hostName
IP Address ipAddress
MAC Address macAddress
Max CPU Usage maxCpuUsage
Max Memory Usage maxMemoryUsage
Memory Allocation memoryAllocation
Memory Overhead memoryOverhead
Overall CPU Demand overallCpuDemand
Overall CPU Usage overallCpuUsage
Power State powerState
Private Memory privateMemory
Shared Memory sharedMemory
Tools Running Status toolsRunningStatus
Trigger Alarm State triggeredAlarmState
Uptime Seconds uptimeSeconds
Virtual Image Path virtualImagePath
Disk Read diskRead
Disk Write diskWrite
Disk Read Latency diskReadLatency
Disk Write Latency diskWriteLatency
Data received netReceived
Data transmitted netTransmitted
Packages Received netPkgRx
Packages Transmitted netPkgTx
CPU Usage cpuUsagePercent
Memory Usage memoryUsagePercent
Net Usage netUsage
Disk Rate diskRate
Max Disk Latency maxDiskLatency
HeartBeat heartbeat
CPU Ready cpuReady
Number Snapshots snapshotCounter
HA Status haStatus
Table d’évènements

Cette liste d’évènements permet de faciliter la tâche de configuration des alertes des évèenments sur Pandora FMS. Pour obtenir une référence complète et mise à jour de tous les évènements possibles, vous devrez consulter la documentation que VMware possède à ce propos.

Evènement Sévérité Type d’évènementGroupe
An account was created on host {host.name} Informational System All
Account {account} was removed on host {host.name} Informational System All
An account was updated on host {host.name} Informational System All
The default password for the root user on the host {host.name} has not been changed Informational System All
Alarm '{alarm.name}' on {entity.name} triggered an action Informational System All
Created alarm '{alarm.name}' on {entity.name} Informational System All
Alarm '{alarm.name}' on {entity.name} sent email to {to} Informational System All
Alarm '{alarm.name}' on {entity.name} cannot send email to {to} Critical System All
Reconfigured alarm '{alarm.name}' on {entity.name} Informational System All
Removed alarm '{alarm.name}' on {entity.name} Informational System All
Alarm '{alarm.name}' on {entity.name} ran script {script} Informational System All
Alarm '{alarm.name}' on {entity.name} did not complete script: {reason.msg} Critical System All
Alarm '{alarm.name}': an SNMP trap for entity {entity.name} was sent Informational System All
Alarm '{alarm.name}' on entity {entity.name} did not send SNMP trap: {reason.msg} Critical System All
Alarm '{alarm.name}' on {entity.name} changed from {[email protected]} to {[email protected]} Informational System All
All running virtual machines are licensed Informational System All
User cannot logon since the user is already logged on Informational System All
Cannot login {userName}@{ipAddress} Critical System All
The operation performed on host {host.name} in {datacenter.name} was canceled Informational System All
Changed ownership of file name {filename} from {oldOwner} to {newOwner} on {host.name} in {datacenter.name}. Informational System All
Cannot change ownership of file name {filename} from {owner} to {attemptedOwner} on {host.name} in {datacenter.name}. Critical System All
Checked cluster for compliance Informational System All
Created cluster {computeResource.name} in {datacenter.name} Informational System All
Removed cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
Insufficient capacity in cluster {computeResource.name} to satisfy resource configuration in {datacenter.name} Critical System All
Reconfigured cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
Configuration status on cluster {computeResource.name} changed from {[email protected]} to {[email protected]} in {datacenter.name} Informational System All
Created new custom field definition {name} Informational System All
Removed field definition {name} Informational System All
Renamed field definition from {name} to {newName} Informational System All
Changed custom field {name} on {entity.name} in {datacenter.name} to {value} Informational System All
Cannot complete customization of VM {vm.name}. See customization log at {logLocation} on the guest OS for details. Informational System All
An error occurred while setting up Linux identity. See log file '{logLocation}' on guest OS for details. Critical System All
An error occurred while setting up network properties of the guest OS. See the log file {logLocation} in the guest OS for details. Critical System All
Started customization of VM {vm.name}. Customization log located at {logLocation} in the guest OS. Informational System All
Customization of VM {vm.name} succeeded. Customization log located at {logLocation} in the guest OS. Informational System All
The version of Sysprep {sysprepVersion} provided for customizing VM {vm.name} does not match the version of guest OS {systemVersion}. See the log file {logLocation} in the guest OS for more information. Critical System All
An error occurred while customizing VM {vm.name}. For details reference the log file {logLocation} in the guest OS. Critical System All
dvPort group {net.name} in {datacenter.name} was added to switch {dvs.name}. Informational System All
dvPort group {net.name} in {datacenter.name} was deleted. Informational System All
Informational System All
dvPort group {net.name} in {datacenter.name} was reconfigured. Informational System All
dvPort group {oldName} in {datacenter.name} was renamed to {newName} Informational System All
HA admission control disabled on cluster {computeResource.name} in {datacenter.name} Informational System All
HA admission control enabled on cluster {computeResource.name} in {datacenter.name} Informational System All
Re-established contact with a primary host in this HA cluster Informational System All
Unable to contact a primary HA agent in cluster {computeResource.name} in {datacenter.name} Critical System All
All hosts in the HA cluster {computeResource.name} in {datacenter.name} were isolated from the network. Check the network configuration for proper network redundancy in the management network. Critical System All
HA disabled on cluster {computeResource.name} in {datacenter.name} Informational System All
HA enabled on cluster {computeResource.name} in {datacenter.name} Informational System All
A possible host failure has been detected by HA on {failedHost.name} in cluster {computeResource.name} in {datacenter.name} Critical System All
Host {isolatedHost.name} has been isolated from cluster {computeResource.name} in {datacenter.name} Warning System All
Created datacenter {datacenter.name} in folder {parent.name} Informational System All
Renamed datacenter from {oldName} to {newName} Informational System All
Datastore {datastore.name} increased in capacity from {oldCapacity} bytes to {newCapacity} bytes in {datacenter.name} Informational System All
Removed unconfigured datastore {datastore.name} Informational System All
Discovered datastore {datastore.name} on {host.name} in {datacenter.name} Informational System All
Multiple datastores named {datastore} detected on host {host.name} in {datacenter.name} Critical System All
<internal> Informational System All
File or directory {sourceFile} copied from {sourceDatastore.name} to {datastore.name} as {targetFile} Informational System All
File or directory {targetFile} deleted from {datastore.name} Informational System All
File or directory {sourceFile} moved from {sourceDatastore.name} to {datastore.name} as {targetFile} Informational System All
Reconfigured Storage I/O Control on datastore {datastore.name} Informational System All
Configured datastore principal {datastorePrincipal} on host {host.name} in {datacenter.name} Informational System All
Removed datastore {datastore.name} from {host.name} in {datacenter.name} Informational System All
Renamed datastore from {oldName} to {newName} in {datacenter.name} Informational System All
Renamed datastore from {oldName} to {newName} in {datacenter.name} Informational System All
Disabled DRS on cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
Enabled DRS on {computeResource.name} with automation level {behavior} in {datacenter.name} Informational System All
DRS put {host.name} into standby mode Informational System All
DRS is putting {host.name} into standby mode Informational System All
DRS cannot move {host.name} out of standby mode Critical System All
DRS moved {host.name} out of standby mode Informational System All
DRS is moving {host.name} out of standby mode Informational System All
DRS invocation not completed Critical System All
DRS has recovered from the failure Informational System All
Unable to apply DRS resource settings on host {host.name} in {datacenter.name}. {reason.msg}. This can significantly reduce the effectiveness of DRS. Critical System All
Resource configuration specification returns to synchronization from previous failure on host '{host.name}' in {datacenter.name} Informational System All
{vm.name} on {host.name} in {datacenter.name} is now compliant with DRS VM-Host affinity rules Informational System All
{vm.name} on {host.name} in {datacenter.name} is violating a DRS VM-Host affinity rule Informational System All
DRS migrated {vm.name} from {sourceHost.name} to {host.name} in cluster {computeResource.name} in {datacenter.name} Informational System All
DRS powered On {vm.name} on {host.name} in {datacenter.name} Informational System All
Virtual machine {macAddress} on host {host.name} has a duplicate IP {duplicateIP} Informational System All
A vNetwork Distributed Switch {dvs.name} was created in {datacenter.name}. Informational System All
vNetwork Distributed Switch {dvs.name} in {datacenter.name} was deleted. Informational System All
vNetwork Distributed Switch event Informational System All
The vNetwork Distributed Switch {dvs.name} configuration on the host was synchronized with that of the vCenter Server. Informational System All
The host {hostJoined.name} joined the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
The host {hostLeft.name} left the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
The host {hostMember.name} changed status on the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
The vNetwork Distributed Switch {dvs.name} configuration on the host differed from that of the vCenter Server. Warning System All
vNetwork Distributed Switch {srcDvs.name} was merged into {dstDvs.name} in {datacenter.name}. Informational System All
dvPort {portKey} was blocked in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
The port {portKey} was connected in the vNetwork Distributed Switch {dvs.name} in {datacenter.name} Informational System All
New ports were created in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
Deleted ports in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
The dvPort {portKey} was disconnected in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
dvPort {portKey} entered passthrough mode in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
dvPort {portKey} exited passthrough mode in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
dvPort {portKey} was moved into the dvPort group {portgroupName} in {datacenter.name}. Informational System All
dvPort {portKey} was moved out of the dvPort group {portgroupName} in {datacenter.name}. Informational System All
The port {portKey} link was down in the vNetwork Distributed Switch {dvs.name} in {datacenter.name} Informational System All
The port {portKey} link was up in the vNetwork Distributed Switch {dvs.name} in {datacenter.name} Informational System All
Reconfigured ports in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
dvPort {portKey} was unblocked in the vNetwork Distributed Switch {dvs.name} in {datacenter.name}. Informational System All
The vNetwork Distributed Switch {dvs.name} in {datacenter.name} was reconfigured. Informational System All
The vNetwork Distributed Switch {oldName} in {datacenter.name} was renamed to {newName}. Informational System All
An upgrade for the vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} is available. Informational System All
An upgrade for the vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} is in progress. Informational System All
Cannot complete an upgrade for the vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} Informational System All
vNetwork Distributed Switch {dvs.name} in datacenter {datacenter.name} was upgraded. Informational System All
Host {host.name} in {datacenter.name} has entered maintenance mode Informational System All
The host {host.name} is in standby mode Informational System All
Host {host.name} in {datacenter.name} has started to enter maintenance mode Informational System All
The host {host.name} is entering standby mode Informational System All
{message} Critical System All
Host {host.name} in {datacenter.name} has exited maintenance mode Informational System All
The host {host.name} could not exit standby mode Critical System All
The host {host.name} is no longer in standby mode Informational System All
The host {host.name} is exiting standby mode Informational System All
Sufficient resources are available to satisfy HA failover level in cluster {computeResource.name} in {datacenter.name} Informational System All
General event: {message} Informational System All
Error detected on {host.name} in {datacenter.name}: {message} Critical System All
Issue detected on {host.name} in {datacenter.name}: {message} Informational System All
Issue detected on {host.name} in {datacenter.name}: {message} Warning System All
User logged event: {message} Informational System All
Error detected for {vm.name} on {host.name} in {datacenter.name}: {message} Critical System All
Issue detected for {vm.name} on {host.name} in {datacenter.name}: {message} Informational System All
Issue detected for {vm.name} on {host.name} in {datacenter.name}: {message} Warning System All
The vNetwork Distributed Switch corresponding to the proxy switches {switchUuid} on the host {host.name} does not exist in vCenter Server or does not contain this host. Informational System All
A ghost proxy switch {switchUuid} on the host {host.name} was resolved. Informational System All
The message changed: {message} Informational System All
{componentName} status changed from {oldStatus} to {newStatus} Informational System All
Cannot add host {hostname} to datacenter {datacenter.name} Critical System All
Added host {host.name} to datacenter {datacenter.name} Informational System All
Administrator access to the host {host.name} is disabled Warning System All
Administrator access to the host {host.name} has been restored Warning System All
Cannot connect {host.name} in {datacenter.name}: cannot configure management account Critical System All
Cannot connect {host.name} in {datacenter.name}: already managed by {serverName} Critical System All
Cannot connect host {host.name} in {datacenter.name} : server agent is not responding Critical System All
Cannot connect {host.name} in {datacenter.name}: incorrect user name or password Critical System All
Cannot connect {host.name} in {datacenter.name}: incompatible version Critical System All
Cannot connect host {host.name} in {datacenter.name}. Did not install or upgrade vCenter agent service. Critical System All
Cannot connect {host.name} in {datacenter.name}: error connecting to host Critical System All
Cannot connect {host.name} in {datacenter.name}: network error Critical System All
Cannot connect host {host.name} in {datacenter.name}: account has insufficient privileges Critical System All
Cannot connect host {host.name} in {datacenter.name} Critical System All
Cannot connect {host.name} in {datacenter.name}: not enough CPU licenses Critical System All
Cannot connect {host.name} in {datacenter.name}: incorrect host name Critical System All
Cannot connect {host.name} in {datacenter.name}: time-out waiting for host response Critical System All
Host {host.name} checked for compliance. Informational System All
Host {host.name} is in compliance with the attached profile Informational System All
Host configuration changes applied. Informational System All
Connected to {host.name} in {datacenter.name} Informational System All
Host {host.name} in {datacenter.name} is not responding Critical System All
dvPort connected to host {host.name} in {datacenter.name} changed status Informational System All
HA agent disabled on {host.name} in cluster {computeResource.name} in {datacenter.name} Informational System All
HA is being disabled on {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
HA agent enabled on {host.name} in cluster {computeResource.name} in {datacenter.name} Informational System All
Enabling HA agent on {host.name} in cluster {computeResource.name} in {datacenter.name} Warning System All
HA agent on {host.name} in cluster {computeResource.name} in {datacenter.name} has an error {message}: {[email protected]} Critical System All
HA agent on host {host.name} in cluster {computeResource.name} in {datacenter.name} is configured correctly Informational System All
Disconnected from {host.name} in {datacenter.name}. Reason: {[email protected]} Informational System All
Cannot restore some administrator permissions to the host {host.name} Critical System All
Host {host.name} has the following extra networks not used by other hosts for HA communication:{ips}. Consider using HA advanced option das.allowNetwork to control network usage Critical System All
Cannot complete command 'hostname -s' on host {host.name} or returned incorrect name format Critical System All
Maximum ({capacity}) number of hosts allowed for this edition of vCenter Server has been reached Critical System All
The virtual machine inventory file on host {host.name} is damaged or unreadable. Informational System All
IP address of the host {host.name} changed from {oldIP} to {newIP} Informational System All
Configuration of host IP address is inconsistent on host {host.name}: address resolved to {ipAddress} and {ipAddress2} Critical System All
Cannot resolve IP address to short name on host {host.name} Critical System All
Host {host.name} could not reach isolation address: {isolationIp} Critical System All
A host license for {host.name} has expired Critical System All
Host {host.name} does not have the following networks used by other hosts for HA communication:{ips}. Consider using HA advanced option das.allowNetwork to control network usage Critical System All
Host monitoring state in {computeResource.name} in {datacenter.name} changed to {[email protected]} Informational System All
Host {host.name} currently has no available networks for HA Communication. The following networks are currently used by HA: {ips} Critical System All
Host {host.name} has no port groups enabled for HA communication. Critical System All
Host {host.name} currently has no management network redundancy Critical System All
Host {host.name} is not in compliance with the attached profile Critical System All
Host {host.name} is not a cluster member in {datacenter.name} Critical System All
Insufficient capacity in host {computeResource.name} to satisfy resource configuration in {datacenter.name} Critical System All
Primary agent {primaryAgent} was not specified as a short name to host {host.name} Critical System All
Profile is applied on the host {host.name} Informational System All
Cannot reconnect to {host.name} in {datacenter.name} Critical System All
Removed host {host.name} in {datacenter.name} Informational System All
Host names {shortName} and {shortName2} both resolved to the same IP address. Check the host's network configuration and DNS entries Critical System All
Cannot resolve short name {shortName} to IP address on host {host.name} Critical System All
Shut down of {host.name} in {datacenter.name}: {reason} Informational System All
Configuration status on host {computeResource.name} changed from {[email protected]} to {[email protected]} in {datacenter.name} Informational System All
Cannot synchronize host {host.name}. {reason.msg} Critical System All
Cannot install or upgrade vCenter agent service on {host.name} in {datacenter.name} Critical System All
The userworld swap is not enabled on the host {host.name} Warning System All
Host {host.name} vNIC {vnic.vnic} was reconfigured to use dvPort {vnic.port.portKey} with port level configuration, which might be different from the dvPort group. Informational System All
WWNs are changed for {host.name} Warning System All
The WWN ({wwn}) of {host.name} conflicts with the currently registered WWN Critical System All
Host {host.name} did not provide the information needed to acquire the correct set of licenses Critical System All
{message} Informational System All
Insufficient resources to satisfy HA failover level on cluster {computeResource.name} in {datacenter.name} Critical System All
The license edition '{feature}' is invalid Critical System All
License {feature.featureName} has expired Critical System All
License inventory is not compliant. Licenses are overused Critical System All
Unable to acquire licenses due to a restriction in the option file on the license server. Critical System All
License server {licenseServer} is available Informational System All
License server {licenseServer} is unavailable Critical System All
Created local datastore {datastore.name} on {host.name} in {datacenter.name} Informational System All
The Local Tech Support Mode for the host {host.name} has been enabled Informational System All
Datastore {datastore} which is configured to back the locker does not exist Warning System All
Locker was reconfigured from {oldDatastore} to {newDatastore} datastore Informational System All
Unable to migrate {vm.name} from {host.name} in {datacenter.name}: {fault.msg} Critical System All
Unable to migrate {vm.name} from {host.name} to {dstHost.name} in {datacenter.name}: {fault.msg} Critical System All
Migration of {vm.name} from {host.name} to {dstHost.name} in {datacenter.name}: {fault.msg} Warning System All
Cannot migrate {vm.name} from {host.name} to {dstHost.name} and resource pool {dstPool.name} in {datacenter.name}: {fault.msg} Critical System All
Migration of {vm.name} from {host.name} to {dstHost.name} and resource pool {dstPool.name} in {datacenter.name}: {fault.msg} Warning System All
Migration of {vm.name} from {host.name} in {datacenter.name}: {fault.msg} Warning System All
Created NAS datastore {datastore.name} on {host.name} in {datacenter.name} Informational System All
Cannot login user {userName}@{ipAddress}: no permission Critical System All
No datastores have been configured on the host {host.name} Informational System All
A required license {feature.featureName} is not reserved Critical System All
Unable to automatically migrate {vm.name} from {host.name} Informational System All
Non-VI workload detected on datastore {datastore.name} Critical System All
Not enough resources to failover {vm.name} in {computeResource.name} in {datacenter.name} Informational System All
The vNetwork Distributed Switch configuration on some hosts differed from that of the vCenter Server. Warning System All
Permission created for {principal} on {entity.name}, role is {role.name}, propagation is {[email protected]} Informational System All
Permission rule removed for {principal} on {entity.name} Informational System All
Permission changed for {principal} on {entity.name}, role is {role.name}, propagation is {[email protected]} Informational System All
Profile {profile.name} attached. Informational System All
Profile {profile.name} was changed. Informational System All
Profile is created. Informational System All
Profile {profile.name} detached. Informational System All
Profile {profile.name} reference host changed. Informational System All
Profile was removed. Informational System All
Remote Tech Support Mode (SSH) for the host {host.name} has been enabled Informational System All
Created resource pool {resourcePool.name} in compute-resource {computeResource.name} in {datacenter.name} Informational System All
Removed resource pool {resourcePool.name} on {computeResource.name} in {datacenter.name} Informational System All
Moved resource pool {resourcePool.name} from {oldParent.name} to {newParent.name} on {computeResource.name} in {datacenter.name} Informational System All
Updated configuration for {resourcePool.name} in compute-resource {computeResource.name} in {datacenter.name} Informational System All
Resource usage exceeds configuration for resource pool {resourcePool.name} in compute-resource {computeResource.name} in {datacenter.name} Critical System All
New role {role.name} created Informational System All
Role {role.name} removed Informational System All
Modifed role {role.name} Informational System All
Task {scheduledTask.name} on {entity.name} in {datacenter.name} completed successfully Informational System All
Created task {scheduledTask.name} on {entity.name} in {datacenter.name} Informational System All
Task {scheduledTask.name} on {entity.name} in {datacenter.name} sent email to {to} Informational System All
Task {scheduledTask.name} on {entity.name} in {datacenter.name} cannot send email to {to}: {reason.msg} Critical System All
Task {scheduledTask.name} on {entity.name} in {datacenter.name} cannot be completed: {reason.msg} Critical System All
Reconfigured task {scheduledTask.name} on {entity.name} in {datacenter.name} Informational System All
Removed task {scheduledTask.name} on {entity.name} in {datacenter.name} Informational System All
Running task {scheduledTask.name} on {entity.name} in {datacenter.name} Informational System All
A vCenter Server license has expired Critical System All
vCenter started Informational System All
A session for user '{terminatedUsername}' has stopped Informational System All
Task: {info.descriptionId} Informational System All
Task: {info.descriptionId} time-out Informational System All
Upgrading template {legacyTemplate} Informational System All
Cannot upgrade template {legacyTemplate} due to: {reason.msg} Informational System All
Template {legacyTemplate} upgrade completed Informational System All
The operation performed on {host.name} in {datacenter.name} timed out Warning System All
There are {unlicensed} unlicensed virtual machines on host {host} - there are only {available} licenses available Informational System All
{unlicensed} unlicensed virtual machines found on host {host} Informational System All
The agent on host {host.name} is updated and will soon restart Informational System All
User {userLogin} was added to group {group} Informational System All
User {userName}@{ipAddress} logged in Informational System All
User {userName} logged out Informational System All
Password was changed for account {userLogin} on host {host.name} Informational System All
User {userLogin} removed from group {group} Informational System All
{message} Informational System All
Created VMFS datastore {datastore.name} on {host.name} in {datacenter.name} Informational System All
Expanded VMFS datastore {datastore.name} on {host.name} in {datacenter.name} Informational System All
Extended VMFS datastore {datastore.name} on {host.name} in {datacenter.name} Informational System All
A vMotion license for {host.name} has expired Critical System All
Cannot uninstall vCenter agent from {host.name} in {datacenter.name}. {[email protected]} Critical System All
vCenter agent has been uninstalled from {host.name} in {datacenter.name} Informational System All
Cannot upgrade vCenter agent on {host.name} in {datacenter.name}. {[email protected]} Critical System All
vCenter agent has been upgraded on {host.name} in {datacenter.name} Informational System All
VIM account password was changed on host {host.name} Informational System All
Remote console to {vm.name} on {host.name} in {datacenter.name} has been opened Informational System All
A ticket for {vm.name} of type {ticketType} on {host.name} in {datacenter.name} has been acquired Informational System All
Invalid name for {vm.name} on {host.name} in {datacenter.name}. Renamed from {oldName} to {newName} Informational System All
Cloning {vm.name} on host {host.name} in {datacenter.name} to {destName} on host {destHost.name} Informational System All
Cloning {vm.name} on host {host.name} in {datacenter.name} to {destName} on host {destHost.name} Informational System All
Creating {vm.name} on host {host.name} in {datacenter.name} Informational System All
Deploying {vm.name} on host {host.name} in {datacenter.name} from template {srcTemplate.name} Informational System All
Migrating {vm.name} from {host.name} to {destHost.name} in {datacenter.name} Informational System All
Relocating {vm.name} from {host.name} to {destHost.name} in {datacenter.name} Informational System All
Relocating {vm.name} in {datacenter.name} from {host.name} to {destHost.name} Informational System All
Cannot clone {vm.name}: {reason.msg} Critical System All
Clone of {sourceVm.name} completed Informational System All
Configuration file for {vm.name} on {host.name} in {datacenter.name} cannot be found Informational System All
Virtual machine {vm.name} is connected Informational System All
Created virtual machine {vm.name} on {host.name} in {datacenter.name} Informational System All
dvPort connected to VM {vm.name} on {host.name} in {datacenter.name} changed status Informational System All
{vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} reset by HA. Reason: {[email protected]} Informational System All
{vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} reset by HA. Reason: {[email protected]}. A screenshot is saved at {screenshotFilePath}. Informational System All
Cannot reset {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} Warning System All
Unable to update HA agents given the state of {vm.name} Critical System All
HA agents have been updated with the current state of the virtual machine Informational System All
Disconnecting all hosts as the date of virtual machine {vm.name} has been rolled back Critical System All
Cannot deploy template: {reason.msg} Critical System All
Template {srcTemplate.name} deployed on host {host.name} Informational System All
{vm.name} on host {host.name} in {datacenter.name} is disconnected Informational System All
Discovered {vm.name} on {host.name} in {datacenter.name} Informational System All
Cannot create virtual disk {disk} Critical System All
Migrating {vm.name} off host {host.name} in {datacenter.name} Informational System All
End a recording session on {vm.name} Informational System All
End a replay session on {vm.name} Informational System All
Cannot migrate {vm.name} from {host.name} to {destHost.name} in {datacenter.name} Critical System All
Cannot complete relayout {vm.name} on {host.name} in {datacenter.name}: {reason.msg} Critical System All
Cannot complete relayout for virtual machine {vm.name} which has disks on a VMFS2 volume. Critical System All
vCenter cannot start the Secondary VM {vm.name}. Reason: {[email protected]} Critical System All
Cannot power Off {vm.name} on {host.name} in {datacenter.name}: {reason.msg} Critical System All
Cannot power On {vm.name} on {host.name} in {datacenter.name}. {reason.msg} Critical System All
Cannot reboot the guest OS for {vm.name} on {host.name} in {datacenter.name}. {reason.msg} Critical System All
Cannot suspend {vm.name} on {host.name} in {datacenter.name}: {reason.msg} Critical System All
{vm.name} cannot shut down the guest OS on {host.name} in {datacenter.name}: {reason.msg} Critical System All
{vm.name} cannot standby the guest OS on {host.name} in {datacenter.name}: {reason.msg} Critical System All
Cannot suspend {vm.name} on {host.name} in {datacenter.name}: {reason.msg} Critical System All
vCenter cannot update the Secondary VM {vm.name} configuration Critical System All
Failover unsuccessful for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name}. Reason: {reason.msg} Warning System All
Fault Tolerance state on {vm.name} changed from {[email protected]} to {[email protected]} Informational System All
Fault Tolerance protection has been turned off for {vm.name} Informational System All
The Fault Tolerance VM ({vm.name}) has been terminated. {[email protected]} Informational System All
Guest OS reboot for {vm.name} on {host.name} in {datacenter.name} Informational System All
Guest OS shut down for {vm.name} on {host.name} in {datacenter.name} Informational System All
Guest OS standby for {vm.name} on {host.name} in {datacenter.name} Informational System All
VM monitoring state in {computeResource.name} in {datacenter.name} changed to {[email protected]} Informational System All
Assign a new instance UUID ({instanceUuid}) to {vm.name} Informational System All
The instance UUID of {vm.name} has been changed from ({oldInstanceUuid}) to ({newInstanceUuid}) Informational System All
The instance UUID ({instanceUuid}) of {vm.name} conflicts with the instance UUID assigned to {conflictedVm.name} Critical System All
New MAC address ({mac}) assigned to adapter {adapter} for {vm.name} Informational System All
Changed MAC address from {oldMac} to {newMac} for adapter {adapter} for {vm.name} Warning System All
The MAC address ({mac}) of {vm.name} conflicts with MAC assigned to {conflictedVm.name} Critical System All
Reached maximum Secondary VM (with FT turned On) restart count for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name}. Warning System All
Reached maximum VM restart count for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name}. Warning System All
Error message on {vm.name} on {host.name} in {datacenter.name}: {message} Critical System All
Message on {vm.name} on {host.name} in {datacenter.name}: {message} Informational System All
Warning message on {vm.name} on {host.name} in {datacenter.name}: {message} Warning System All
Migration of virtual machine {vm.name} from {sourceHost.name} to {host.name} completed Informational System All
No compatible host for the Secondary VM {vm.name} Critical System All
Not all networks for {vm.name} are accessible by {destHost.name} Warning System All
{vm.name} does not exist on {host.name} in {datacenter.name} Warning System All
{vm.name} was powered Off on the isolated host {isolatedHost.name} in cluster {computeResource.name} in {datacenter.name} Informational System All
{vm.name} on {host.name} in {datacenter.name} is powered off Informational System All
{vm.name} on {host.name} in {datacenter.name} is powered on Informational System All
Virtual machine {vm.name} powered On with vNICs connected to dvPorts that have a port level configuration, which might be different from the dvPort group configuration. Informational System All
VM ({vm.name}) failed over to {host.name}. {[email protected]} Critical System All
Reconfigured {vm.name} on {host.name} in {datacenter.name} Informational System All
Registered {vm.name} on {host.name} in {datacenter.name} Informational System All
Relayout of {vm.name} on {host.name} in {datacenter.name} completed Informational System All
{vm.name} on {host.name} in {datacenter.name} is in the correct format and relayout is not necessary Informational System All
{vm.name} on {host.name} reloaded from new configuration {configPath}. Informational System All
{vm.name} on {host.name} could not be reloaded from {configPath}. Critical System All
Cannot relocate virtual machine '{vm.name}' in {datacenter.name} Critical System All
Completed the relocation of the virtual machine Informational System All
Remote console connected to {vm.name} on host {host.name} Informational System All
Remote console disconnected from {vm.name} on host {host.name} Informational System All
Removed {vm.name} on {host.name} from {datacenter.name} Informational System All
Renamed {vm.name} from {oldName} to {newName} in {datacenter.name} Warning System All
{vm.name} on {host.name} in {datacenter.name} is reset Informational System All
Moved {vm.name} from resource pool {oldParent.name} to {newParent.name} in {datacenter.name} Informational System All
Changed resource allocation for {vm.name} Informational System All
Virtual machine {vm.name} was restarted on {host.name} since {sourceHost.name} failed Informational System All
{vm.name} on {host.name} in {datacenter.name} is resumed Informational System All
A Secondary VM has been added for {vm.name} Informational System All
vCenter disabled Fault Tolerance on VM '{vm.name}' because the Secondary VM could not be powered On. Critical System All
Disabled Secondary VM for {vm.name} Informational System All
Enabled Secondary VM for {vm.name} Informational System All
Started Secondary VM for {vm.name} Informational System All
{vm.name} was shut down on the isolated host {isolatedHost.name} in cluster {computeResource.name} in {datacenter.name}: {[email protected]} Informational System All
Start a recording session on {vm.name} Informational System All
Start a replay session on {vm.name} Informational System All
{vm.name} on host {host.name} in {datacenter.name} is starting Informational System All
Starting Secondary VM for {vm.name} Informational System All
The static MAC address ({mac}) of {vm.name} conflicts with MAC assigned to {conflictedVm.name} Critical System All
{vm.name} on {host.name} in {datacenter.name} is stopping Informational System All
{vm.name} on {host.name} in {datacenter.name} is suspended Informational System All
{vm.name} on {host.name} in {datacenter.name} is being suspended Informational System All
Starting the Secondary VM {vm.name} timed out within {timeout} ms Critical System All
Unsupported guest OS {guestId} for {vm.name} on {host.name} in {datacenter.name} Warning System All
Virtual hardware upgraded to version {version} Informational System All
Cannot upgrade virtual hardware Critical System All
Upgrading virtual hardware on {vm.name} in {datacenter.name} to version {version} Informational System All
Assigned new BIOS UUID ({uuid}) to {vm.name} on {host.name} in {datacenter.name} Informational System All
Changed BIOS UUID from {oldUuid} to {newUuid} for {vm.name} on {host.name} in {datacenter.name} Warning System All
BIOS ID ({uuid}) of {vm.name} conflicts with that of {conflictedVm.name} Critical System All
New WWNs assigned to {vm.name} Informational System All
WWNs are changed for {vm.name} Warning System All
The WWN ({wwn}) of {vm.name} conflicts with the currently registered WWN Critical System All
{message} Warning System All
Booting from iSCSI failed with an error. See the VMware Knowledge Base for information on configuring iBFT networking. Warning System All
com.vmware.license.AddLicenseEventLicense {licenseKey} added to VirtualCenter Informational System All
com.vmware.license.AssignLicenseEventLicense {licenseKey} assigned to asset {entityName} with id {entityId} Informational System All
com.vmware.license.DLFDownloadFailedEventFailed to download license information from the host {hostname} due to {[email protected]ownloadFailedReason} Warning System All
com.vmware.license.LicenseAssignFailedEventLicense assignment on the host fails. Reasons: {[email protected]}. Informational System All
com.vmware.license.LicenseExpiryEventYour host license will expire in {remainingDays} days. The host will be disconnected from VC when its license expires. Warning System All
com.vmware.license.LicenseUserThresholdExceededEventCurrent license usage ({currentUsage} {costUnitText}) for {edition} exceeded the user-defined threshold ({threshold} {costUnitText}) Warning System All
com.vmware.license.RemoveLicenseEventLicense {licenseKey} removed from VirtualCenter Informational System All
com.vmware.license.UnassignLicenseEventLicense unassigned from asset {entityName} with id {entityId} Informational System All
com.vmware.vc.HA.ClusterFailoverActionCompletedEventHA completed a failover action in cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
com.vmware.vc.HA.ClusterFailoverActionInitiatedEventHA initiated a failover action in cluster {computeResource.name} in datacenter {datacenter.name} Warning System All
com.vmware.vc.HA.DasAgentRunningEventHA Agent on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} is running Informational System All
com.vmware.vc.HA.DasFailoverHostFailedEventHA failover host {host.name} in cluster {computeResource.name} in {datacenter.name} has failed Critical System All
com.vmware.vc.HA.DasHostCompleteDatastoreFailureEventAll shared datastores failed on the host {hostName} in cluster {computeResource.name} in {datacenter.name} Critical System All
com.vmware.vc.HA.DasHostCompleteNetworkFailureEventAll VM networks failed on the host {hostName} in cluster {computeResource.name} in {datacenter.name} Critical System All
com.vmware.vc.HA.DasHostFailedEventA possible host failure has been detected by HA on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} Critical System All
com.vmware.vc.HA.DasHostMonitoringDisabledEventNo virtual machine failover will occur until Host Monitoring is enabled in cluster {computeResource.name} in {datacenter.name} Warning System All
com.vmware.vc.HA.DasTotalClusterFailureEventHA recovered from a total cluster failure in cluster {computeResource.name} in datacenter {datacenter.name} Warning System All
com.vmware.vc.HA.HostDasAgentHealthyEventHA Agent on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} is healthy Informational System All
com.vmware.vc.HA.HostDasErrorEventHA agent on {host.name} in cluster {computeResource.name} in {datacenter.name} has an error: {[email protected]} Critical System All
com.vmware.vc.VCHealthStateChangedEventvCenter Service overall health changed from '{oldState}' to '{newState}' Informational System All
com.vmware.vc.cim.CIMGroupHealthStateChangedHealth of [data.group] changed from [data.oldState] to [data.newState]. Informational System All
com.vmware.vc.datastore.UpdateVmFilesFailedEventFailed to update VM files on datastore {ds.name} using host {hostName} Critical System All
com.vmware.vc.datastore.UpdatedVmFilesEventUpdated VM files on datastore {ds.name} using host {hostName} Informational System All
com.vmware.vc.datastore.UpdatingVmFilesEventUpdating VM files on datastore {ds.name} using host {hostName} Informational System All
com.vmware.vc.ft.VmAffectedByDasDisabledEventVMware HA has been disabled in cluster {computeResource.name} of datacenter {datacenter.name}. HA will not restart VM {vm.name} or its Secondary VM after a failure. Warning System All
com.vmware.vc.npt.VmAdapterEnteredPassthroughEventNetwork passthrough is active on adapter {deviceLabel} of virtual machine {vm.name} on host {host.name} in {datacenter.name} Informational System All
com.vmware.vc.npt.VmAdapterExitedPassthroughEventNetwork passthrough is inactive on adapter {deviceLabel} of virtual machine {vm.name} on host {host.name} in {datacenter.name} Informational System All
com.vmware.vc.vcp.FtDisabledVmTreatAsNonFtEventHA VM Component Protection protects virtual machine {vm.name} on {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} as non-FT virtual machine because the FT state is disabled Informational System All
com.vmware.vc.vcp.FtFailoverEventFT Primary VM {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} is going to fail over to Secondary VM due to component failure Informational System All
com.vmware.vc.vcp.FtFailoverFailedEventFT virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} failed to failover to secondary Critical System All
com.vmware.vc.vcp.FtSecondaryRestartEventHA VM Component Protection is restarting FT secondary virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} due to component failure Informational System All
com.vmware.vc.vcp.FtSecondaryRestartFailedEventFT Secondary VM {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} failed to restart Critical System All
com.vmware.vc.vcp.NeedSecondaryFtVmTreatAsNonFtEventHA VM Component Protection protects virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} as non-FT virtual machine because it has been in the needSecondary state too long Informational System All
com.vmware.vc.vcp.TestEndEventVM Component Protection test ends on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
com.vmware.vc.vcp.TestStartEventVM Component Protection test starts on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
com.vmware.vc.vcp.VcpNoActionEventHA VM Component Protection did not take action on virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} due to the feature configuration setting Informational System All
com.vmware.vc.vcp.VmDatastoreFailedEventVirtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} lost access to {datastore} Critical System All
com.vmware.vc.vcp.VmNetworkFailedEventVirtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} lost access to {network} Critical System All
com.vmware.vc.vcp.VmPowerOffHangEventHA VM Component Protection could not power off virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} successfully after trying {numTimes} times and will keep trying Critical System All
com.vmware.vc.vcp.VmRestartEventHA VM Component Protection is restarting virtual machine {vm.name} due to component failure on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} Informational System All
com.vmware.vc.vcp.VmRestartFailedEventVirtual machine {vm.name} affected by component failure on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} failed to restart Critical System All
com.vmware.vc.vcp.VmWaitForCandidateHostEventHA VM Component Protection could not find a destination host for virtual machine {vm.name} on host {host.name} in cluster {computeResource.name} in datacenter {datacenter.name} after waiting {numSecWait} seconds and will keep trying Critical System All
com.vmware.vc.vmam.AppMonitoringNotSupportedApplication monitoring is not supported on {host.name} in cluster {computeResource.name} in {datacenter.name} Warning System All
com.vmware.vc.vmam.VmAppHealthMonitoringStateChangedEventApplication heartbeat status changed to {status} for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} Warning System All
com.vmware.vc.vmam.VmDasAppHeartbeatFailedEventApplication heartbeat failed for {vm.name} on {host.name} in cluster {computeResource.name} in {datacenter.name} Warning System All
esx.clear.net.connectivity.restoredNetwork connectivity restored on virtual switch {1}, portgroups: {2}. Physical NIC {3} is up. Informational System All
esx.clear.net.dvport.connectivity.restoredNetwork connectivity restored on DVPorts: {1}. Physical NIC {2} is up. Informational System All
esx.clear.net.dvport.redundancy.restoredUplink redundancy restored on DVPorts: {1}. Physical NIC {2} is up. Informational System All
esx.clear.net.redundancy.restoredUplink redundancy restored on virtual switch {1}, portgroups: {2}. Physical NIC {3} is up. Informational System All
esx.clear.net.vmnic.linkstate.upPhysical NIC {1} linkstate is up. Informational System All
esx.clear.storage.connectivity.restoredConnectivity to storage device {1} (Datastores: {2}) restored. Path {3} is active again. Informational System All
esx.clear.storage.redundancy.restoredPath redundancy to storage device {1} (Datastores: {2}) restored. Path {3} is active again. Informational System All
esx.problem.apei.bert.memory.error.correctedA corrected memory error occurred in last boot. The following details were reported. Physical Addr: {1}, Physical Addr Mask: {2}, Node: {3}, Card: {4}, Module: {5}, Bank: {6}, Device: {7}, Row: {8}, Column: {9} Error type: {10} Critical System All
esx.problem.apei.bert.memory.error.fatalA fatal memory error occurred in the last boot. The following details were reported. Physical Addr: {1}, Physical Addr Mask: {2}, Node: {3}, Card: {4}, Module: {5}, Bank: {6}, Device: {7}, Row: {8}, Column: {9} Error type: {10} Critical System All
esx.problem.apei.bert.memory.error.recoverableA recoverable memory error occurred in last boot. The following details were reported. Physical Addr: {1}, Physical Addr Mask: {2}, Node: {3}, Card: {4}, Module: {5}, Bank: {6}, Device: {7}, Row: {8}, Column: {9} Error type: {10} Critical System All
esx.problem.apei.bert.pcie.error.correctedA corrected PCIe error occurred in last boot. The following details were reported. Port Type: {1}, Device: {2}, Bus #: {3}, Function: {4}, Slot: {5}, Device Vendor: {6}, Version: {7}, Command Register: {8}, Status Register: {9}. Critical System All
esx.problem.apei.bert.pcie.error.fatalPlatform encounterd a fatal PCIe error in last boot. The following details were reported. Port Type: {1}, Device: {2}, Bus #: {3}, Function: {4}, Slot: {5}, Device Vendor: {6}, Version: {7}, Command Register: {8}, Status Register: {9}. Critical System All
esx.problem.apei.bert.pcie.error.recoverableA recoverable PCIe error occurred in last boot. The following details were reported. Port Type: {1}, Device: {2}, Bus #: {3}, Function: {4}, Slot: {5}, Device Vendor: {6}, Version: {7}, Command Register: {8}, Status Register: {9}. Critical System All
esx.problem.iorm.nonviworkloadAn external I/O activity is detected on datastore {1}, this is an unsupported configuration. Consult the Resource Management Guide or follow the Ask VMware link for more information. Informational System All
esx.problem.net.connectivity.lostLost network connectivity on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. Critical System All
esx.problem.net.dvport.connectivity.lostLost network connectivity on DVPorts: {1}. Physical NIC {2} is down. Critical System All
esx.problem.net.dvport.redundancy.degradedUplink redundancy degraded on DVPorts: {1}. Physical NIC {2} is down. Warning System All
esx.problem.net.dvport.redundancy.lostLost uplink redundancy on DVPorts: {1}. Physical NIC {2} is down. Warning System All
esx.problem.net.e1000.tso6.notsupportedGuest-initiated IPv6 TCP Segmentation Offload (TSO) packets ignored. Manually disable TSO inside the guest operating system in virtual machine {1}, or use a different virtual adapter. Critical System All
esx.problem.net.migrate.bindtovmkThe ESX advanced configuration option /Migrate/Vmknic is set to an invalid vmknic: {1}. /Migrate/Vmknic specifies a vmknic that vMotion binds to for improved performance. Update the configuration option with a valid vmknic. Alternatively, if you do not want vMotion to bind to a specific vmknic, remove the invalid vmknic and leave the option blank. Warning System All
esx.problem.net.proxyswitch.port.unavailableVirtual NIC with hardware address {1} failed to connect to distributed virtual port {2} on switch {3}. There are no more ports available on the host proxy switch. Warning System All
esx.problem.net.redundancy.degradedUplink redundancy degraded on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. Warning System All
esx.problem.net.redundancy.lostLost uplink redundancy on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. Warning System All
esx.problem.net.uplink.mtu.failedVMkernel failed to set the MTU value {1} on the uplink {2}. Warning System All
esx.problem.net.vmknic.ip.duplicateA duplicate IP address was detected for {1} on the interface {2}. The current owner is {3}. Warning System All
esx.problem.net.vmnic.linkstate.downPhysical NIC {1} linkstate is down. Informational System All
esx.problem.net.vmnic.watchdog.resetUplink {1} has recovered from a transient failure due to watchdog timeout Informational System All
esx.problem.scsi.device.limitreachedThe maximum number of supported devices of {1} has been reached. A device from plugin {2} could not be created. Critical System All
esx.problem.scsi.device.thinprov.atquotaSpace utilization on thin-provisioned device {1} exceeded configured threshold. Affected datastores (if any): {2}. Warning System All
esx.problem.scsi.scsipath.limitreachedThe maximum number of supported paths of {1} has been reached. Path {2} could not be added. Critical System All
esx.problem.storage.connectivity.deviceporFrequent PowerOn Reset Unit Attentions are occurring on device {1}. This might indicate a storage problem. Affected datastores: {2} Warning System All
esx.problem.storage.connectivity.lostLost connectivity to storage device {1}. Path {2} is down. Affected datastores: {3}. Critical System All
esx.problem.storage.connectivity.pathporFrequent PowerOn Reset Unit Attentions are occurring on path {1}. This might indicate a storage problem. Affected device: {2}. Affected datastores: {3} Warning System All
esx.problem.storage.connectivity.pathstatechangesFrequent path state changes are occurring for path {1}. This might indicate a storage problem. Affected device: {2}. Affected datastores: {3} Warning System All
esx.problem.storage.redundancy.degradedPath redundancy to storage device {1} degraded. Path {2} is down. Affected datastores: {3}. Warning System All
esx.problem.storage.redundancy.lostLost path redundancy to storage device {1}. Path {2} is down. Affected datastores: {3}. Warning System All
esx.problem.vmfs.heartbeat.recoveredSuccessfully restored access to volume {1} ({2}) following connectivity issues. Informational System All
esx.problem.vmfs.heartbeat.timedoutLost access to volume {1} ({2}) due to connectivity issues. Recovery attempt is in progress and outcome will be reported shortly. Informational System All
esx.problem.vmfs.heartbeat.unrecoverableLost connectivity to volume {1} ({2}) and subsequent recovery attempts have failed. Critical System All
esx.problem.vmfs.journal.createfailedNo space for journal on volume {1} ({2}). Opening volume in read-only metadata mode with limited write support. Critical System All
esx.problem.vmfs.lock.corruptondiskAt least one corrupt on-disk lock was detected on volume {1} ({2}). Other regions of the volume might be damaged too. Critical System All
esx.problem.vmfs.nfs.mount.connect.failedFailed to mount to the server {1} mount point {2}. {3} Critical System All
esx.problem.vmfs.nfs.mount.limit.exceededFailed to mount to the server {1} mount point {2}. {3} Critical System All
esx.problem.vmfs.nfs.server.disconnectLost connection to server {1} mount point {2} mounted as {3} ({4}). Critical System All
esx.problem.vmfs.nfs.server.restoredRestored connection to server {1} mount point {2} mounted as {3} ({4}). Informational System All
esx.problem.vmfs.resource.corruptondiskAt least one corrupt resource metadata region was detected on volume {1} ({2}). Other regions of the volume might be damaged too. Critical System All
esx.problem.vmfs.volume.lockedVolume on device {1} locked, possibly because remote host {2} encountered an error during a volume operation and could not recover. Critical System All
vim.event.LicenseDowngradedEventLicense downgrade: {licenseKey} removes the following features: {lostFeatures} Warning System All
vprob.net.connectivity.lostLost network connectivity on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. Critical System All
vprob.net.e1000.tso6.notsupportedGuest-initiated IPv6 TCP Segmentation Offload (TSO) packets ignored. Manually disable TSO inside the guest operating system in virtual machine {1}, or use a different virtual adapter. Critical System All
vprob.net.migrate.bindtovmkThe ESX advanced config option /Migrate/Vmknic is set to an invalid vmknic: {1}. /Migrate/Vmknic specifies a vmknic that vMotion binds to for improved performance. Please update the config option with a valid vmknic or, if you do not want vMotion to bind to a specific vmknic, remove the invalid vmknic and leave the option blank. Warning System All
vprob.net.proxyswitch.port.unavailableVirtual NIC with hardware address {1} failed to connect to distributed virtual port {2} on switch {3}. There are no more ports available on the host proxy switch. Warning System All
vprob.net.redundancy.degradedUplink redundancy degraded on virtual switch {1}. Physical NIC {2} is down. {3} uplinks still up. Affected portgroups:{4}. Warning System All
vprob.net.redundancy.lostLost uplink redundancy on virtual switch {1}. Physical NIC {2} is down. Affected portgroups:{3}. Warning System All
vprob.scsi.device.thinprov.atquotaSpace utilization on thin-provisioned device {1} exceeded configured threshold. Warning System All
vprob.storage.connectivity.lostLost connectivity to storage device {1}. Path {2} is down. Affected datastores: {3}. Critical System All
vprob.storage.redundancy.degradedPath redundancy to storage device {1} degraded. Path {2} is down. {3} remaining active paths. Affected datastores: {4}. Warning System All
vprob.storage.redundancy.lostLost path redundancy to storage device {1}. Path {2} is down. Affected datastores: {3}. Warning System All
vprob.vmfs.heartbeat.recoveredSuccessfully restored access to volume {1} ({2}) following connectivity issues. Informational System All
vprob.vmfs.heartbeat.timedoutLost access to volume {1} ({2}) due to connectivity issues. Recovery attempt is in progress and outcome will be reported shortly. Informational System All
vprob.vmfs.heartbeat.unrecoverableLost connectivity to volume {1} ({2}) and subsequent recovery attempts have failed. Critical System All
vprob.vmfs.journal.createfailedNo space for journal on volume {1} ({2}). Opening volume in read-only metadata mode with limited write support. Critical System All
vprob.vmfs.lock.corruptondiskAt least one corrupt on-disk lock was detected on volume {1} ({2}). Other regions of the volume may be damaged too. Critical System All
vprob.vmfs.nfs.server.disconnectLost connection to server {1} mount point {2} mounted as {3} ({4}). Critical System All
vprob.vmfs.nfs.server.restoredRestored connection to server {1} mount point {2} mounted as {3} ({4}). Informational System All
vprob.vmfs.resource.corruptondiskAt least one corrupt resource metadata region was detected on volume {1} ({2}). Other regions of the volume might be damaged too. Critical System All
vprob.vmfs.volume.lockedVolume on device {1} locked, possibly because remote host {2} encountered an error during a volume operation and could not recover. Critical System All

RHEV

Red Hat® Enterprise Virtualization (RHEV) est unes des technologies les plus utilisés par les entreprises qui ont comme base le système d'exploitation Red Hat dans son Data Center. Pandora FMS Enterprise offre la possibilité de superviser les architectures virtuelles basées sur RHEV par le biais du plugin RHEV Monitoring Plugin, qui permet contrôler de manière simple tous les aspects liés à l'architecture virtuelle RHEV.

Architecture à superviser

Avec le plugin il est possible de superviser l'architecture complète d'un système RHEV : Data Centers, Host Clusters, Storage Domains, Networks, Hosts et Virtual Machines, en offrant une vision globale de l'état de l'environnement virtuel.

Pour ça, Pandora FMS utilise l'API officielle fournit par le système de virtualisation RHEV.

Supervision avec RHEV Monitoring Plugin

La supervision d'environnements virtuels RHEV se base sur deux composants :

  1. Un plugin d'Agent qui fait les tâches de auto-découverte et collecte de données. Le plugin d'Agent est chargé d'envoyer les informations vers Pandora FMS.
  2. Un script de reconnaissance qui met à jour de différents valeurs pour les entités découvertes. Ce script est nécessaire pour le correcte fonctionnement des extensions du plugin.
  3. Extension RHEV Viewer et RHEV Manager. Ils sont des extensions qui ajoutent une valeur supplémentaire permettant de visualiser l'infrastructure supervisée et opérer en allumant/éteindant les machines virtuelles, tout ça depuis la console web de Pandora FMS.

Pour pouvoir utiliser le script de reconnaissance il est nécessaire d'avoir activé le Reconserver

Afin que certaines variables de l'API réfletent la valeur réelle de la machine virtuele asociée, il est nécessaire d'installer l'agent RHEV ; vous pourrez trouver tout regardant la documentation de sa version RHEV.

Pour la supervision du système d'exploitation installé dans las machines virtuelles, il est recommandé d'utiliser un Agent de Pandora FMS au lieu de l'API RHEV.

Fonctionnement interne du plugin

Le plugin RHEV Monitoring Plugin extrait de l'información grâce à l'API web qui fournit du service à l'environnement de virtualisation RHEV.

Si vous avez seulement besoin de l'information de supervision, vous avez seulement à configurer le plugin de l'agent qui fera cette tâche.

Le plugin d'agent découvre des appareils et compose les XML avec les modules pour chacun d'entre eux. La configuration du plugin permet de choisir quels éléments seront superviser et la configuration de ses modules. Les modules créés par le plugin sont configurables, et il est possible de changer le nom et la description et ajouter des valeurs maximales et minimales pour les états Warning et Critical du module.

Une fois créés les XML, le plugin d'agent envoi les fichiers, soit grâce à Tentacle ou en les copint vers un répértoire local, selon la méthode de transfert choisie.

Si en outre vous allez utiliser les extensions RHEV Viewer et RHEV Manager vous aurez besoin d'utiliser le script de reconnaissance.

Le script de reconnaissance est chargé de mettre à jour quelques variables de chacun des agent détectés dans Pandora FMS selon les valeurs configurés dans RHEV. Ces variables sont nécessaires pour visualiser les entités correctement dans l'extension RHEV Viewer et gérer correctement les machines virtuelles avec l'extension RHEV Manager.

Exigences préalables à l'installation

Le plugin d'agent exige le logiciel suivant :

  • curl.
  • perl-XML-Simple.
  • Agent Logiciel de Pandora FMS.
  • tentacle_client (si vous voulez utiliser tentacle pour envoyer les fichiers, tentacle_client est installé avec l'agent logiciel de Pandora FMS).
Red Hat

Vous pouvez installer les dépendances dans les systèmes fondés sur Red Hat® avec la commande :

yum install perl-XML-Simple curl
SLES

Dans les systèmes fondés sur SUSE, vous pouvez installer les dépendances avec la commande :

zypper install perl-XML-Simple curl
Debian/Ubuntu

Dans les systèmes fondés sur Debiand/Ubuntu, vous pouvez installer les dépendances avec la commande :

apt-get install libxml-simple-perl curl
Installation de l'agent logiciel Pandora FMS

L'installation de l'agent logiciel Pandora FMS est expliqué dans la section Installation de Pandora FMS, là-bas vous troverez tout ce dont vous avez besoin afin d'installer ledit agent dans la plate-forme.

Téléchargement du certificat RHEV

Avant d'utiliser le plugin, il sera nécessaire de télécharger le certificat qui permet la connexion par moyen de HTTPS à l'API de RHEV. Pour ça, exécutez la commande suivante :

curl -o rhevm.cer http://[RHEVM-HOST]:8080/ca.crt

[rhevm-host] est le nom du serveur auqle l'API de RHEV fournit du service. Un exemple pourrait être :

curl -o rhevm.cer http://rhevm.server:8080/ca.crt

Aprés le certificat est téléchargé, vous pouvez vérifier que la connexion à l'API se fait de manière correcte par le biais de l'utilisation des connecteurs de ligne >

curl -X GET \
             -H "Accept: application/xml" \
             -u [USER:PASS] \
             --cacert [CERT] https://[RHEVM-HOST]:8443/api

Avec les valeurs suivantes :

  • USER : user @domain pour se connecter à l'API.
  • PASS : mot de passe de l'utilisateur avec lequel vous vous connecterez à l'API.
  • CERT : chemin au certificat téléchargé dand l'étape précédente.
  • RHEVM-HOST : addresse de l'hôte qui fournit du service à l'API.

Un exemple avec des données spécifiques de la commande serait comme suit :

curl -X GET \
            -H "Accept: application/xml" \
            -u [[email protected]:12345] \
            --cacert /home/user/ca.crt https://rhevm.server:8443/api

Si l'exécution de la commande est positive, il retournera une sortie en format XML avec l'information général sur l'API de RHEV.

Considerations préalables sur la configuration RHEV

Dans l'environnement de virtualisation RHEV il se peut que quelques entités aient le même nom. Cela suppose un problème, puisque dans Pandora FMS ces entités se convertiront en des agents qui ne permettent pas la duplication des noms. En outre il généra aussi des problèmes lors de la correction avec des patchs le résultat retourné par l'API en format XML, vous montrant un erreur pareille a celui-ci :

Warning: <data_center> element has non-unique value in 'name' key attribute: Default at ./plugin-rhev.pl line 199

Afin de réssoudre le problème, ce dont vus avez besoin est de suivre une nomenclature de noms pour les entités dans l'environnement de virtualisation RHEV dans lequel les noms ne se répétent pas.

Installation du plugin d'agente

Afin d'installer le plugin d'agent vous n'avez qu'à copier le script rhev-plugin.pl et le fichier de configuration rhev-plugin.conf dans un répertoire de la machine où l'agent Pandora FMS qui exécutera le plugin est installée. Le plugin peut être exécuté dans un agent installé dans les mêmes machines que le serveur Pandora FMS ou dnas une autre machine.

Pour exécuter le plugin, ajoutez le fichier de configuration de l'agent (par défaut /etc/pandora/pandora_agent.conf) la ligne suivante :

module_plugin /root/rhev-plugin.pl /root/rhev-plugin.conf

En ajoutant cette ligne, le plugin de l'agent fera ses fonctions dans chaque exécution.

En supervisant l'architecture virtuelle RHEV

700px‎‎‎‎‎‎

Afin de voir le résultat de l'exécution du plugin d'agent, allez vers MonitoringViewsAgent Detail.

cosa222.jpg

Le plugin crée un agent dans Pandora FMS pour chacune des entités détéctées dans la découverte de l'architecture RHEV.

Lorsque vous cliquez sur le nom d0'un agent, vous pourrez voir les modules de supervision créés par le plugin, outre d'autres données rélatives :

Pour chaque type d'entité, une série des modules déterminés sont créés, en supervisant les informations importantes de chacune.

rhev5.jpg

Si l'agent sélectionné se correspond avec un hôte au lieu d'une machine virtuelle, les modules de supervision seraient différents.

Le plugin RHEV supervise aussi les evénnements qui se passent dans l'architecture virtuelle. Le plugin créera un module pour chaque evénnement supervisé dans l'entité affectée :

rhev1.jpg

Les données pour les modules crées à partir des evénnemens sont des données de l'événnement : heure de l'événnement, description de l'événnement. Exemple de données :

Outre les agents et les modules relatifs à l'architecture RHEV en tant que telle, un module est généré dans l'agent qui exécute le plugin. ce module s'appele par défaut RHEV Plugin :

rhev3.jpg

Le contenu du module sera le résultat de l'exécution du plugin ; il peut être OK si tout est correcte ou il montrera un chaîne d'erreur avec son explication si quelque chose se passe. Cette information peut se trouver dans le module du plugin ou dans un fichier journal.

Superviser l'état des entités

Les modules d'état de différentes entités retournent les valeurs prédéfinies dans l'architecture RHEV. Cela signifie que les valeurs seront les chaînes de texte dont le contenu sera up, down, error, maintenance, non_operational, etc., selon l'état et l'entité supervisée.

Afin d'attribuer les valeurs warning et critical il sera nécessaire de définir une expression regulière dans la configuration du module. Par exemple pour définir un état critique dans un module déterminé par les valeurs error, down et non_operational, insérez dans le champ Str. de la valeur critical du module l'expression regulière suivante :

error|down|non_operational

Modules d'agent de l'architecture virtuelle RHEV

Ici on detaille les modules disponibles pour chaque élément de l'architecture RHEV.

Data Center
  • Status: État du Data Center.
Storage Domain
  • Available Space : Espace disponible dans le Storage Domain.
  • Committed Space : Espace compromis dans le Storage Domain.
  • Used Space : Espace utilisé dans le Storage Domain.
  • Percent Free Space : Pourcentage d'espace libre dans le Storage Domain.
Network
  • Status : État du réseau virtuel.
  • STP Status : État de la fonctionnalité Spanning Tree Protocol.
Cluster
  • Overcommit Percent : Pourcentage de surallocation du cluster.
  • Transparent HugePages : État de la fonctionnalité Transparent HugePages.
  • High threshold : Limite supérieure dans les politiques de planification.
  • Low threshold : Limite inférieure des politiques de planification.
  • Threshold duration : Duration des limites dans les politiques de planification.
Host
  • Status : État de l'hôte.
  • Buffers size : Taille des buffers.
  • Cache size : Taille du cache.
  • Cached swap : Quantité de mémoire Swap caching (en octets).
  • Free memory : Quantité de mémoire libre (en octets).
  • Percent free memory : Pourcentage de mémoire libre.
  • Swap cached percent : Pourcentage de mémoire Swap caching.
  • Swap free : Quantité de mémoire Swap libre (en octets).
  • Swap free percent : Pourcentage de mémoire Swap libre.
  • Total Memory : Quantité de mémoire de l'hôte (en octets).
  • Total Swap : Quantité totale de mémoire Swap (en octets).
  • Used memory : Quantité totale de mémoire utilisée (en octets).
  • Used Swap : Quantité totale de mémoire Swap utilisée (en octets).
  • Nic [x] TX : Ratio de transfert de l'interface du réseau [x] (en octets/seconde). Un est généré par chaque interface réseau détectée.
  • Nic [x] RX : Ratio de réception de l'interface réseau [x] (en octets/seconde). Un est généré par chaque interface réseau détectée.
  • Nic [x] erros TX : Nombre d'erreurs de transmission de l'interface réseau [x]. Un est généré par chaque interface réseau détectée.
  • Nic [x] erros RX : Nombre d'erreurs de réception de l'interface réseau [x]. Un est généré par chaque interface réseau détectée.
  • User CPU : Pourcentage d'UCT utilisé par l'utilisateur.
  • System CPU : Pourcentage d'UCT utilisée par le système.
  • CPU Idle : Pourcentage d'UCT sans utiliser.
  • CPU Load : Charge moyenne d'UCT des dérniers 5 minutes.
  • KSM CPU : Pourcentage d'UCT utilisé par KSM.
  • Active VM : Nombre de machines virtuelles actives sur l'hôte.
  • Migrating VM : Nombre de machines virtuelles dans la migration dans l'hôte.
  • Total VM : Nombre totale de machines virtuelles dans l'hote.
  • Fence Status : État du fencingde l'hôte.
Virtual Machine
  • Status : État de la machine virtuelle.
  • Disk [x] read : Taux de lecture du disque x (octets/seconde). Un est généré par chaque disque (stockage) détecté.
  • Disk [x] write : Taux d'écriture du disque x (octets/seconde). Un est généré par chaque disque détecté.
  • Disk [x] size : Taille du disque x (en octets). Un est généré par chaque disque détecté.
  • Disk [x] status : État du disque x. Un est généré par chaque disque détecté.
  • Nic [x] TX : Ratio de transfert pour l'interface réseau [x] (en octets/segundo). Un est généré par chaque disque détecté.
  • Nic [x] RX : Ratio de réception pour l'interface réseau [x] (en octets/seconde). Un est généré par chaque disque détecté.
  • Nic [x] erros TX : Nombre d'erreurs transmission pour l'interface réseau [x]. Un est généré par chaque disque détecté.
  • Nic [x] erros RX : Nombre d'erreurs de réception pour l'interface réseau [x]. Un est généré par chaque disque détecté.
  • Installed memory : Quantité de mémoire installée (en octets).
  • Percent free memory : Pourcentage de mémoire libre.
  • Used memory : Quantité de mémoire utilisée (en octets).
  • Stateless : État de la fonctionnalité Stateless.
  • HA Status : État de la focntionnalité du HA.
  • Total CPU : Pourcentage totale de l'UCT utilisé par la machine virtuel.
  • Hypervisor CPU : Pourcentage de l'UCT de l'Hypervisor utilisé par la même machine virtuelle.
  • Guest CPU : Pourcentage de l'UCT de l'hôte qui utilise la machine virtuelle.
Événnements
  • Event [x] : Description de l'événnement x qui se passe dans le système. Un sera créé par chaque événnement détecté dans les agents affectés.

Gestion et visualisation de l'architecture RHEV

Dans cette section s'explique l'installation, configuration et fontionnement des extensions RHEV View et RHEV Manager.

Tâches de reconnaissance

Il existe la possibilité de créer des tâches personnalisés de reconnaissance grâce au Discovery server.

Installation d'extensions RHEV View et RHEV Manager

Pour installer les extensions juste copiez le contenu du dossier extensions, que vous trouverez lorsque vous décompressez le plugin, dans le dossier correspondante extensions de la partie Enterprise de la Console Pandora FMS. La commande à exécuter est la suivante :

cp -R extensions/* <pandora_console_dir>/enterprise/extensions/

À partir de ce moment les extensions de supervision RHEV seront disponibles.

Utilisation de l'extension RHEV View

Afin d'utiliser l'extension RHEV View juste cliquez sur l'option RHEV View dans le submenu Monitoring.

L'extension vous montrera une carte comme la suivante, avec tous les composants de l'architecture RHEV découverts par le plugin :

rhev12.jpg

La carte représente les différents éléments de l'architecture RHEV (Data Centers, Storage Domains, Clusters, Networks, Hosts et Virtual machines). Chaque élément est représenté par un icône, différent pour chaque type de l'élément de l'architecture. Les rélations entre les différents éléments de l'architecture RHEV sont aussi représentés. Avec cette vue il est très facile de voir l'état des éléments et comment ils interagissent.

L'extension compte sur un menu qui permet de configurer la vue en cachant ou montrant des entités, en élargeant ou réduissant la taille du texte et en zoomant pour voir l'image avec plus de détails.

Par exemple, dans l'image suivante de la carte les éléments elementos Networks, Hosts et Virtual Machine ont été cachés de l'architecture parce que on a besoin de voir en détail les rélations des Clusters et Storage Domains avec les Data Center.

rhev8.jpg

Utilisation de l'extension RHEV Manager

L'extension RHEV Manager est disponible dans la vue d'opération des agents Pandora FMS qui se correspondent avec les machines virtuelles dans l'architecture de virtualisation RHEV.

Cette extension utilise la commande curl, donc il sera nécessaire qu'il soit installé et accessible pour le serveur web qui supporte la Console Pandora FMS.

Pour accéder à l'extension, cliquez sur le bouton avec le logo de Red Hat que vous trouverez ensemble avec les autres tabs de l'agent.

L'extension perment de gérer des machines virtuelles (allumer, éteindre et suspendre) sans besoin d'ouvrir la console de gestion RHEV. Dans l'extension l'état actuel de la machine virtuelle est montré avec un code de couleurs :

  • Verde = Allumé.
  • Naranja = Suspendu.
  • Gris = Arrêté.

Avec un combo avec les états disponibles aux états que la machine virtuelle peut prende lorsque vous cliquez Change Status.

Si vous choisissez l'état Stop pour arrêter la machine virtuelle, l'extension connectera avec l'API RHEV et envoiera l'ordre. Le résultat sera le changement d'état dans la machine virtuelle et les options du combo :

Le changemant de quelques état n'est pas automatique, comme par exemple de l'état Stop vers Start. Dans ce cas, l'extension montrera l'état de la machine virtuelle selon le changement dans l'architecture de virtualisation. Exemple :

Configuration du plugin de l'agent

La configuration du plugin de l'agent se fait par le biais d'un fichier de configuration dont le nom par défaut est rhev-plugin.conf.

Par défaut, le plugin de l'agent choisit toutes les entités et rée tous les modules correspondants avec des valeurs predéfinis pour le nom et la descripton. Tous ces aspects, ainsi que les variables générales du plugin, peuvent être configurés à travers le fichier de configuration.

Fichier de configuration

Le fichier de configuration a deux sections très bien définies : les variables globales et la configuration de supervision.

La section de variables globales commence avec le jeton Configuration et contient les informations de configuration du plugin. Les paramètres autorisés dans cette section :

  • module_name : Nom du module de l'agent avec l'état de l'exécution du plugin.
  • server : Nom de l'hôte qui fournit du service de l'API de RHEV.
  • user : Utilisateur sous format user @domain pour se connecter à l'API.
  • pass : Mot de passe pour se connecter à l'API.
  • cert : Chemin du certificat pour se connecter à l'API.
  • temporal : Répertoire temporel.
  • logfile : Fichier journal.
  • transfer_mode : Mode de transfert. Vous pouvez prender les valeurs : local ou tentacle.
  • tentacle_ip : Addresse IP du serveur Tentacle auquel envoyer les informations. Normarellement il se trouvera dans la même machine que celle du serveur Pandora FMS. Cette option s'utilise seulement si transfer_mode a la valeur tentacle.
  • tentacle_port : Port du serveur Tentacle. Cette option seulement s'utilise si transfer_mode a la valeur tentacle.
  • tentacle_opts : Options d'envoi de données pour Tentacle. Cette option seulement s'utilise si transfer_mode a la valeur tentacle.

La section de configuration de la supervision se divise en quelques sous-sections. La première sous-section a comme jeton Reject et liste les entités de l'environnement de virtualisation qui seront écartés de la supervision. Afin d'écarter une entité il sera nécessaire d'entrer son nom dans cette liste. Par exemple :

 #Dismissed entities
 Reject
 mv1
 mv_Windows10
 mv_WebServer1
 ...

Il és possible d'écarter toutes les entités du même type, par exemple toutes les hôtes, toutes les machines virtuelles, etc. Les jeton pour chaque entité sont : all_dc (Data Center), all_host (Hosts), all_network (Networks), all_storage (Storage Domain), all_cluster (Cluster), all_vm (machines virtuelles). Exemple d'utilisation de ces jetons :

 #Dismissed entities
 Reject
 all_dc
 all_host
 all_network
 all_storage
 all_cluster
 all_vm

La deuxième section a comme jeton Rename et sert à changer les noms des entités supervisées à travers le plugin. Cette fonctionnalité esttrès utile si vous voulez combiner la supervision d'agent logiciels avec les données extraits de l'API de Pandora FMS. La configuration de cette section se fait en écrivant au début le nom ancienne et après le nouveau nom séparé par un espace ; par exemple :

 #Rename entities
 Rename
 mv_WebServer1 WebServer1
 mv_Windows10 Windows10 Test
 ...

Les sous-sections suivantes corresponderont la configuration de supervision pour chaque entité. Chaque entité a son propre jeton, qui sont les suivants : DataCenter, StorageDomain, Network, Cluster, Host et VM. Pour chacune des entités, il est possible de définir les modules qui seront désactivés ou définir des valeurs personnalisés pour le nom, la description et les plages de maximums et minimums pour les états Warning et Critical. Un exemple serait le suivant :

#VM Modules
VM
status disabled
errors_total_tx name = Errores TX Net [%s]; desc = Erreurs totales TX réseau; limits = 60 70 71 100
memory_used name = Memoire en utilisation; desc = Mémoire utilisée par la machine virtuelle; limits = 256 1024 1025 2048
...

Chaque ligne de configuration des modules de supervision se correspond à deux options disponibles :

  • <module> disabled: Le module NE ser pas créé.
  • <module> nom = <nom>; desc = <description>; limits = <min_warning> <max_warning> <min_critical> <max_critical» Le module sera créé avec le nom et la description fournis et en outre les seuils pour les maximums et minimums des valeurs Warning et Critical.

Il est très important d'avoir sur compte l'estructure des lignes de fichier de configuration et sourtout de voir que le caractère ; est à côté du nom et la description u module. Ces deux lignes NE SONT PAS ÉQUIVALENTES (voyez les espaces avent le caractère ; ) :

errors_total_tx name = Erreurs TX Net [%s]; desc = Erreurs totales TX réseau; limits = 60 70 71 100 #Correcte
errors_total_tx name = Erreurs TX Net [%s]    ; desc = Erreurs totales TX réseau    ; limits = 60 70 71 100 #Incorrecte

Les modules sont référencies par son nom court, un nom équivalent plus facile à écrire dans la ligne de commande. La table de correspondance entre les noms courts et étendus se trouve dans la section suivante.

Exemple de configuration pour les machines virtuelles, section VM :

Pour la supervision de machines virtuelles une série de modules activés ou pas définis dans la section VM du fichier de configuration ont été définis. Particulièrement : le module status a été desactivé et pour les modules errors_total_tx et memory_used des valeurs personnalisables ont été définis. Les autres modules qui n'apparaîtrent pas dans la liste seront créés avec les valeurs par défaut. Avec cette configuration, le module memory_used prendra les valeurs suivantes :

  • Nom : Mémoire en utilisation.
  • Descripction : Mémoire utilisée par la machine virtuelle.
  • Min Warning : 256.
  • Max Warning : 1024.
  • Min Critical : 1025.
  • Max Critical : 2048.

Les modules se générent dynamiquement ; par exemple, deux relatifs aus disques ou interfaces dont l'un de chaque élément détécté est créé. Ils ont une syntaxe speciale pour le nom du module, qui est la suivante :

errors_total_tx name = Errores TX Net [%s]; desc = Errores totales TX de red; limits = 60 70 71 100

Dans ces cas, comme le nom a une partie dynamique, ce qui permet d'utiliser la macro %s qui sera remplacé par le plugin par la partie variable du nom du module.

Par exemple, le module errors_total_tx a un nom par défaut :

Nic [nic1] errors TX

Il changera son nom par :

Errores TX Net [nic1]

nic1 étant la partie dynamique du nom du module.

Tous les erreurs rélatifs au fichier de configuration sont présentés dans le log défini dans le fichier de configuration et en outre sont envoyés en tant que module aynchrone vers Pandora FMS qui sera reflété en tant que module dans l'agent qui exécute le plugin.

En outre les sections propres de chaque élément de l'architecture, le fichier de configuration a une section commune pour les événements. Cette section est définie avec le jeton EventCodes et là-bas les codes des événements à superviser seront listés ; par exemple :

 EventCodes
 30
 920
 980
 509
 956

Si vous ne definissez pas cette section, la supervision d'événements ne se fera pas.

Diviser la charge de la supervision entre différents agents logiciels

Par le biais du fichier de configuration du plugin de l'agent, il est possible de diviser la charge de supervision de l'infrastructure de virtualisation RHEV.

Pour ça les entités à superviser entre les différents agents seront divisés entre les différents agents. Suposons qu'il a l'architecture suivante :

 DC1
  |
  |- Cluster 1.1
        |- c1.1mv1
        |- c1.1mv2
        |- c1.1mv3

  |- Cluster 1.2
        |- c1.2mv1
        |- c1.2mv2
        |- c1.2mv3

 DC2
  |
  |- Cluster 2.1
        |- c2.1mv1
        |- c2.1mv2
        |- c2.1mv3

  |- Cluster 2.2
        |- c2.2mv1
        |- c2.2mv2
        |- c2.2mv3

Una forme de diviser la charge serait alloqué à un Datacenter à chacun des agents logiciels ; pour ça on utiliserait la fonctionnalité pour écarter des entités à superviser (jeton Reject).

Le permier agent logiciel supervise le Datacenter DC1 et écarte les entités DC2.

 Reject
 DC2
 Cluster 2.1
 Cluster 2.2
 c2.1mv1
 c2.1mv2
 c2.1mv3
 c2.2mv1
 c2.2mv2
 c2.2mv3

Le deuxième agent logiciel supervise le Datacenter DC2 et écarte les entités de DC1.

 Reject
 DC1
 Cluster 1.1
 Cluster 1.2
 c1.1mv1
 c1.1mv2
 c1.1mv3
 c1.2mv1
 c1.2mv2
 c1.2mv3

Nous pourrions aussi diviser la charge partant des clusters, par exemple. Pour chaque cluster des deux Datacenters sun agent des cuatre premiers sera alloqué.

Agent logiciel 1, superviser cluster 1.1 et écarte les autres entités.

 Reject
 DC1
 Cluster 1.2
 c1.2mv1
 c1.2mv2
 c1.2mv3
 DC2
 Cluster 2.1
 Cluster 2.2
 c2.1mv1
 c2.1mv2
 c2.1mv3
 c2.2mv1
 c2.2mv2
 c2.2mv3

Agent logiciel 2, superviser cluster 1.2 et il écarte les autres entités.

 Reject
 DC1
 Cluster 1.1
 c1.1mv1
 c1.1mv2
 c1.1mv3
 DC2
 Cluster 2.1
 Cluster 2.2
 c2.1mv1
 c2.1mv2
 c2.1mv3
 c2.2mv1
 c2.2mv2
 c2.2mv3

Agent logiciel 3, superviser cluster 2.1 et écarte les autres entités.

 Reject
 DC1
 Cluster 1.1
 Cluster 1.2
 c1.1mv1
 c1.1mv2
 c1.1mv3
 c1.2mv1
 c1.2mv2
 c1.2mv3
 DC2
 Cluster 2.2
 c2.2mv1
 c2.2mv2
 c2.2mv3

Agent logiciel 4, superviser cluster 2.2 et il écarte les autres entités.

 Reject
 DC1
 Cluster 1.1
 Cluster 1.2
 c1.1mv1
 c1.1mv2
 c1.1mv3
 c1.2mv1
 c1.2mv2
 c1.2mv3
 DC2
 Cluster 2.1
 c2.1mv1
 c2.1mv2
 c2.1mv3

La configuration des entités écartées est complètement flexible et la charge peut se diviser en allouant quelques entités à chaque agent logiciel.

Exemples de fichiers de configuration

Fichier avec tous les modules desactivés

  #These lines are comments

 #Plugin configuration parameters
 Configuration
 server rhevm.server
 user [email protected]
 pass 12345
 cert /home/user/rhevm.cer
 temporal /tmp
 logfile /tmp/plugin-rhev.log
 transfer_mode local
 tentacle_ip 127.0.0.1
 tentacle_port 41121
 tentacle_opts

 #Dismissed entities
 Reject

 #Data Center modules
 DataCenter
 status disabled

 #StorageDomain modules
 StorageDomain
 available disabled
 used disabled
 committed disabled
 free_percent disabled

 #Networks modules
 Network
 status disabled
 stp disabled

 #Clusters modules
 Cluster
 overcommit disabled
 hugepages disabled
 threshold_low disabled
 threshold_high disabled
 threshold_duration disabled

 #Host Modules
 Host
 status disabled
 vm_active disabled
 vm_migrating disabled
 vm_total disabled
 data_current_rx disabled
 data_current_tx disabled
 errors_total_rx disabled
 errors_total_tx disabled
 memory_cached disabled
 memory_total disabled
 swap_free_percent disabled
 swap_cached_percent disabled
 swap_free disabled
 cpu_current_idle disabled
 cpu_current_user disabled
 memory_used disabled
 ksm_cpu_current disabled
 memory_free_percent disabled
 swap_total disabled
 memory_buffers disabled
 cpu_current_system disabled
 cpu_load_avg_5m disabled
 swap_cached disabled
 swap_used disabled
 memory_free disabled
 fence_status disabled

 #VM Modules
 VM
 status disabled
 stateless disabled
 ha disabled
 cpu_current_guest disabled
 cpu_current_hypervisor disabled
 memory_free_percent disabled
 memory_installed disabled
 memory_used disabled
 cpu_current_total disabled
 data_current_read disabled
 data_current_write disabled
 size disabled
 disk_status disabled
 data_current_rx disabled
 data_current_tx disabled
 errors_total_rx disabled
 errors_total_tx disabled
Table de correspondance des noms des modules

Data Center

Nom étendu Nom court
Status status

Storage Domain

Nom étendu Nom court
Available Space available
Used Space used
Committed Space committed
Percent Free Space free_percent

Network

Nom étendu Nom court
Status status
STP Status stp

Cluster

Nom étendu Nom courte
Overcommit Percent overcommit
Transparent HugePages hugepages
Low Threshold threshold_low
High Threshold threshold_high
Threshold duration threshold_duration

Host

Nom étenduNom court
Status status
Active VM vm_active
Migrating VM vm_migrating
Total VM vm_total
Nic [x] RX data_current_rx
Nic [x] TX data_current_tx
Nic [x] errors RX errors_total_rx
Nic [x] errors TX errors_total_tx
Cache size memory_cached
Total memory memory_total
Swap free percent swap_free_percent
Swap cached percent swap_cached_percent
Swap free swap_free
CPU Idle cpu_current_idle
User CPU cpu_current_user
Used memory memory_used
KSM CPU ksm_cpu_current
Percent free memory memory_free_percent
Total swap swap_total
Buffers size memory_buffers
System CPU cpu_current_system
CPU Load cpu_load_avg_5m
Cached swap swap_cached
Used swap swap_used
Free memory memory_free
Fence Status fence_status

Virtual Machine

Nom étendu Nom court
Status status
Stateless stateless
HA Status ha
Guest CPU cpu_current_guest
Hypervisor CPU cpu_current_hypervisor
Percent free memory memory_free_percent
Installed memory memory_installed
Used memory memory_used
Total CPU cpu_current_total
Disk [x] read data_current_read
Disk [x] write data_current_write
Disk [x] size size
Disk [x] status disk_status
Nic [x] RX data_current_rx
Nic [x] TX data_current_tx
Nic [x] errors RX errors_total_rx
Nic [x] errors TX errors_total_tx

Nutanix

Versión Enterprise.

La solution d’hyperconvergence Nutanix nous offre la possibilité de gérer toutes les ressources de réseau, de disque, de traitement et de mémoire depuis un même point.

Le plugin de surveillance de Pandora FMS pour Nutanix® nous permet de contrôler continuellement l’état de notre solution Nutanix®.

Fonctionnement du plugin

Le plugin Nutanix® est un programme écrit dans Perl, qui se connectera à l’API REST de Nutanix PRISM®, en récupérant les métriques nécessaires pour surveiller les éléments suivants :

  • Clusters Nutanix®.
  • Dispositifs de stockage
  • Conteneurs.
  • Machines Virtuelles.
  • Hosts.
  • Etats des processus de réplication.

Pré-requis du plugin

Pour pouvoir récupérer l’information de l’API REST, il nous faudra :

  • L’adresse IP/ FQDN du portail.
  • Un “utilisateur” avec des autorisations de lecture sur l’API.
  • Le mot de passe de l’utilisateur.

En ce qui concerne la communication des résultats de la surveillance à votre Pandora FMS, il faudra :

  • Le mode de transfert de l’information, soit local ou via Tentacle.
    • En local, l’adresse du répertoire où les fichiers XML avec les résultats doivent être remis, tels que les autorisations d’écriture dans ledit répertoire.
    • Via Tentacle, il faudra pouvoir connecter contre l’adresse IP ou FQDN du serveur Pandora FMS, le port utilisé par l’installation Tentacle, la localisation du client de Tentacle, comme n’importe qu’elle option extraordinaire qu’il ait défini.

Installation du plugin

Téléchargez les archives requises par le plugin de la bibliothèque de modules. Transférez les archives à l’équipement à distance d’où vous souhaitez réaliser la surveillance de votre infrastructure Nutanix et extrayez les archives du plugin :

tar xvzf pandora_nutanix.tar.gz

Configuration du plugin Nutanix

Les champs suivants sont déclarés :

Nutanix API configuration

nx_fqdn

adresse du serveur principal Prism

nx_port

port dans lequel l’API REST est publié (par défaut 9440).

nx_user

utilisateur avec des avantages de lecture sur l’API REST.

nx_pass

mot de passe de l’utilisateur

use_https

Usar https (1) o no (0)

nx_rest_version

Version de l’API Rest (par défaut 'v1')

Nutanix agent configuration

agent_interval

Intervalle des agents générés par le plugin (par défaut 300).

agent_group

groupe auquel appartiendront les agents générés (si ‘autocreate_group’ est commenté dans la configuration de votre PandoraServer), par défaut Nutanix.

module_interval

intervalle des modules des agents générés (facteur de multiplication, par défaut 1).

module_tagsÉtiquettes associées aux nouveaux modules des agents générés.

module_group

groupe auquel appartiendront les nouveaux modules.

Configuration de la communication vers le serveur de Pandora FMS

mode

Mode de transfert de données, “ local ” ou “ tentacle ”.

tentacle_ip

Adresse IP du serveur Pandora FMS, qui ne s’applique qu’en mode tentacle.

tentacle_port

Port sur lequel le service Tentacle écoute.

tentacle_opts

Toute option extra que vous ayez configurée sur votre service Tentacle.

tentacle_client

Chemin d’accès complet à votre client Tentacle.

temp

Répertoire de travail temporaire.

local_folder

Chemin d’accès de transfert des données pour le mode “local”

Filtres

cluster_monitoring

Activer(1) ou non (0) la surveillance de clusters.

storage_monitoring

Activer (1) ou non (0) la surveillance de dispositifs de stockage.

container_monitoring

Activer (1) ou non (0) la surveillance des conteneurs de stockage.

vm_monitoring

Activer (1) ou non (0) la surveillance de machines virtuelles.

host_monitoring

Activer (1) ou non (0) la surveillance de serveurs de machines virtuelles (noeuds Nutanix).

pd_monitoring

Activer (1) ou non (0) la surveillance de domaines de protection.

Personnalisations

cluster_agent_header

En-tête pour le nom de l’agent des dispositifs de type cluster.

storage_agent_header

En-tête pour le nom de l’agent des dispositifs de type dispositif de stockage. ;host_agent_header

host_agent_header

En-tête pour le nom de l’agent des dispositifs de type serveur de machines virtuelles (noeuds Nutanix).

container_agent_header

Cn-tête pour le nom de l’agent des dispositifs de type conteneurs de stockage.

vm_agent_header

En-tête pour le nom de l’agent des dispositifs de type machine virtuelle.

pd_agent_header

En-tête pour le nom de l’agent de dispositifs de type domaine de protection.

Règles de génération des modules

vm_stat

Règle pour l’ajout de modules pour la surveillance de machines virtuelles, par défaut hypervisor_cpu_usage_ppm|hypervisor_memory_usage_ppm|.*avg.*. Ceci indique les modules extraordinaires qui se généreront quand le nom de la métrique coincidera avec les expressions régulières indiquées dans ce champs. Ajoutez la valeur .* pour surveiller toutes les métriques disponibles.

host_stat

Règle pour l’ajout de modules pour la surveillances de machines virtuelles (noeuds Nutanix), par défaut hypervisor_cpu_usage_ppm|hypervisor_memory_usage_ppm|.*avg.*. Ceci indique les modules extraordinaires qui se généreront quand le nom de la métrique coincidera avec les expressions régulières indiquées dans ce champs. Ajoutez la valeur .* pour surveiller toutes les métriques disponibles.

pd_stat

Règle pour l’ajout de modules pour la surveillance de domaines de protection, par défaut replication_transmitted_bandwidth_kBps|replication_total_transmitted_bytes. Ceci indique les modules extraordinaires qui se généreront quand le nom de la métrique coincidera avec les expressions régulières indiquées dans ce champs. Ajoutez la valeur .* pour surveiller toutes les métriques disponibles.

Renommé des entités

RENAME aaa TO bbb

Règle pour renommer des entités. Vous pouvez définir autant de directives que d’élément à renommer.

Exclusion des entités

REJECT aaa

Règle pour l’exclusion de surveillance des entités. Vous pouvez définir autant de directives que d’éléments à exclure.

Exécution du plugin Nutanix

Il est recommandé d’exécuter le plugin à distance, depuis un équipement avec un accès aussi bien à Pandora Server qu’à votre infrastructure Nutanix® à surveiller.

Exécution manuelle :

./pandora_nutanix-linux-x64 pandora_nutanix.conf

Vous pouvez automatiser l’exécution du plugin dans le cron du système en ajoutant la ligne suivante à /etc/crontab.

  • /5 * * * * root /path/to/plugin/pandora_nutanix-linux-x64 /path/to/plugin/pandora_nutanix.conf

Résultats du plugin Nutanix

Captures avec les résultats obtenus par le plugin :

Exemple de carte de l’architecture Nutanix® :

nutanix_map.jpg

Exemple de vue de l’agent de l’architecture Nutanix® :

nutanix_agents.jpg

Exemple de vue des modules pour agents de type Host Nutanix® :

nutanix_host_modules.jpg

XenServer

Versión Enterprise.

Xen est un moniteur de machine virtuelle de code ouvert, développé par l’université de Cambridge.

L’objectif de ce concept est de pouvoir exécuter des instances des systèmes opératifs avec toutes les caractéristiques, de façon complètement fonctionnelle dans un équipement simple.

Xen fournit un isolement sûr, un contrôle des ressources et des garanties de qualité de service et de migration des machines virtuelles à chaud. Les systèmes opératifs peuvent être modifiés explicitement pour exécuter Xen (bien qu’en maintenant la compatibilité avec des applications d’utilisateur). Ceci permet à Xen de réaliser la visualisation de haute performance sans un support spécial de hardware.

Intel a réalisé diverses contributions à Xen en ajoutant un support pour ses extensions d’architecture VT-X Vanderpool. Cette technologie permet que des systèmes opératifs, sans les modifier, agissent comme des hosts dans les machines virtuelles de Xen, tant que le serveur physique supporte les extensions VT de Intel ou Pacifica de AMD.

Fonctionnement du plugin

Le plugin Pandora FMS pour la surveillance des environnements Xen est écrit sur Python. Il utilise XenAPI pour récupérer toute l’information nécessaire. Il permet de surveiller les types d’éléments suivants :

  • Systèmes virtualisés dans Xen.
  • Ressources de stockage.
  • Propre serveur Xen (host).

Pré-requis du plugin

Il est indispensable que le système qui exécute le plugin dispose des pré-requis suivants :

  • Python installé
  • Bibliothèques Python installées :
    • XenAPI
    • xmltodict
  • Accès à l’API de votre XenServer (web, il active le trafic depuis l’équipement qui exécute le plugin au port 443 ou 80 du XenServer).
  • Il est recommandé que les machines virtuelles aient Xen Server Tools d’installée puisque, dans le cas contraire, l’information disponible est assez limitée.

Le fonctionnement du plugin a fait ses preuves sur des systèmes XenServer 6.5 y 7.2

Installation du plugin

Téléchargez votre copie du plugin de Pandora FMS pour XenServer depuis la bibliothèque de modules. Vous pouvez le déployer dans l’équipement que vous préférez (Windows ou Linux), en extrayant le contenu de l’archive dans un répertoire stable d’où vous pouvez l’exécuter, et qui utilise déjà correctement l’agent Pandora FMS ou le cron système.

Configuration du plugin

Configuration disponible pour le plugin Pandora FMS pour Xen :

Bloc de configuratio (CONF)

xen_server_ip

Adresse IP/FQDN du serveur Xen

user

Utilisateur avec autorisations de consultation sur l’API de Xen.

password

Mot de passe de l’utilisateur

temporal

Adresse de travail temporaire

Bloc de configuration (pandora)

tentacle_client

Emplacement binaire du client de Tentacle

tentacle_ip

Adresse IP sur lequel le service Tentacle est écouté.

tentacle_port

Port sur lequel le service Tentacle est écouté.

logfile

Chemin d’accès complet au fichier de log

interval

Intervalle des agents générés

group

Groupe assigné aux agents générés.

Bloc de configuration (TUNNING)

time_adjustment

Paramètre qui permet l’ajustement des différences de temps possibles entre l’équipement qui exécute le plugin et le serveur Xen. (Par défaut = 10, mesuré en secondes).

scan_vm_ip

Paramètre qui permet de définir si le plugin essaiera d’obtenir les IPs des VMs du serveur Xen. Seules les IPs de ces VMs avec celles XenTools installées peuvent être utilisées. On peut les activer (scan_vm_ip = true) ou les désactiver (scan_vm_ip = false). Si on ne le précise pas, ce sera considéré comme activé.

Bloc de configuration (RENAME)

xen_element_name = pandora_agent_name

Dans ce bloc, il est possible de définir autant d’entrées que souhaitées avec ce format. Cela permet de changer les noms des éléments du Xen Server en d’autres distincts, afin d’être utilisés commes des noms d’agents dans Pandora FMS. Les VMS, les SRs et le XenServer lui même, peuvent être renommés. Par exemple :

[RENAME]
example-xen-server=Example Xen Server
Example Xen Server 2=example-xen-server-2
example-vm=Example VM
Example VM 2=example-vm-2
example-sr=Example SR
Example SR 2=example-sr-2

Bien que les noms aient des espaces blancs, il ne faut pas mettre de guillemets.

Exécution du plugin

Vous pouvez programmer l’exécution du plugin depuis n’importe quel agent de Pandora FMS, en ajoutant à la configuration de ce dernier :

module_plugin python "<ruta>\xen-plugin.py" "<ruta>\xen-plugin.conf"

Pour le programmer grâce au cron du système, vous pouvez ajouter la ligne suivante à /etc/crontab:

  • /5 * * * * root python “<ruta>\xen-plugin.py” “<ruta>\xen-plugin.conf” > /dev/null 2>&1

Si vous exécutez le plugin manuellement, la sortie doit être semblable à la suivante :

python "<ruta>\xen-plugin.py" "<ruta>\xen-plugin.conf"
<module>
<name><![CDATA[XenServer Plugin]]></name>
<type><![CDATA[async_string]]></type>
<description><![CDATA[Result of XenServer Plugin execution]]></description>
<data><![CDATA[OK]]></data>
</module>

Résultats du plugin

Captures avec les résultats obtenus par le plugin :

Exemple de carte de l’architecture Xen :

Exemple de vue d’un agent de l’archietcture Xen :

Exemple de vue des modules pour des agents de type Host Xen :

OpenNebula

Versión Enterprise.

OpenNebula est une plate-forme informatique dans le nuage, orientée vers des centres de données distribuées et hétérogènes, fournissant une infrastructure virtuelle pour construire des nuages privés, publics et des implémentations hybrides d’infrastructure comme de service (IaaS).

OpenNebula est un logiciel de source ouverte, protégé dans la Licence Apache 2.

Fonctionnement du plugin OpenNebula

Le plugin Pandora FMS, pour la surveillance d’environnements OpenNebula, est écrit sur Perl. Il s’exécute localement dans le serveur OpenNebula et récupérera toute l’information nécessaire en utilisant les propres commandes de gestion d’OpenNebula. Il permet la surveillance des types d’éléments suivants :

  • Clusters
  • Hosts
  • Machines virtuelles
  • Ressources de stockage

Pré-requis du plugin

Il est indispensable que le système qui exécute le plugin dispose des pré-requis suivants :

  • Perl disponible sur l’équipement
  • Utilisateur avec des droits pour exécuter les commandes suivantes :
    • onehost
    • onecluster
    • onedatastore

      Le bon fonctionnement du plugin a fait ses preuves sur des systèmes OpenNebula 5.X.X

Installation du plugin

Téléchargez votre copie du plugin de Pandora FMS pour OpenNebula de la bibliothèque des modules. Vous devez extraire le contenu de l’archive dans un répertoire stable, d’où vous pourrez l’exécuter, qui utilise déjà correctement l’agent de Pandora FMS ou le cron du système.

unzip pandora_OpenNebula.zip

Configuration du plugin

Configuration disponible pour le plugin Pandora FMS pour OpenNebula :

Configuration de la communication vers le serveur Pandora FMS

mode

Mode de transfert de données, “local” ou “tentacle”

tentacle_ip

Adresse IP du serveur Pandora FMS, qui ne s’applique qu’en mode tentacle.

tentacle_port

Port dans lequel le service Tentacle est écouté

tentacle_opts

Toute option supplémentaire qui soit configurée dans votre service Tentacle.

tentacle_client

Chemin d’accès complet au client Tentacle

temp

Adresse de travail temporaire

local_folder

Chemin d’accès de l’emplacement des données pour le mode de transfert “local”.

Configuration de l’agent

agent_interval

Intervalle de l’agent, par défaut 300

agent_group

Groupe de l’agent, par défaut OpenNebula

Personnalisation des modules

MODULE_GROUP

Groupe des modules, par défaut OpenNebula

MODULE_INTERVAL

Intervalle des modules (multiplicateur), par défaut 1.

MODULE_TAGSÉtiquettes pour les modules.

Personnalisation des noms

cluster_agent_header

En-tête pour le nom de l’agent des dispositifs de type cluster

host_agent_header

En-tête pour le nom de l’agent des dispositifs de type serveur de machines virtuelles.

storage_agent_header

En-tête pour le nom de l’agent des dispositifs de type dispositif de stockage.

vm_agent_header

En-tête pour le nom de l’agent des dispositifs de type machine virtuelle.

Filtres

cluster_monitoring

Activer (1) ou non (0) la surveillance clusters.

host_monitoring

Activer (1) ou non (0) la surveillance de serveurs de machines virtuelles.

storage_monitoring

Activer (1) ou non (0) la surveillance de dispositifs de stockage.

vm_monitoring

Activer (1) ou non (0) la surveillance de machines virtuelles.

Renommer des entités

RENAME aaa TO bbb

Règle pour renommer des entités : vous pouvez définir autant de directives que d’éléments qui nécessitent d’être renommés.

Exclusion des entités

REJECT aaa

Règle pour l’exclusion de surveillance des entités : vous pouvez définir autant de directives que d’éléments à exclure.

Exécution du plugin

Pour le programmer grâce au cron du système, vous pouvez ajouter la ligne suivante à /etc/crontab:

/5 * * * * root "<ruta>/pandora_opennebula" "<ruta>/pandora_opennebula.conf"> /dev/null 2>&1

Si vous l’exécutez manuellement, la sortie doit ressembler à la suivante :

[[email protected] ~]# ./pandora_opennebula pandora_opennebula.conf
[[email protected] ~]# echo $?
0

Résultats du plugin OpenNebula

Liste des modules générés par le plugin OpenNebula :

Pour les Hosts:

  1. Available CPU
  2. Available Disk
  3. Available memory
  4. Error Error reported by OpenNebula
  5. State
  6. Total zombies
  7. VMs running

Pour des dispositifs de stockage :

  1. Disk Free %

Pour des machines virtuelles :

  1. Assigned CPU
  2. Assigned Memory
  3. Network RX
  4. Network TX
  5. State
  6. Time running

Exemple de carte d’architecture OpenNebula :

IBM HMC

Ce plugin permet de surveiller des équipements de virtualisation IBM AIX grâce à la console d’administration de hardware HMC. Ce plugin collectera des informations de toutes les partitions logiques créées dans un environnement AIX administré par un système HMC, en créant un agent pour chaque serveur administré, chaque partition logique et chaque serveur IO virtuel.

Pour récupérer l’information via SSH, le plugin peut utiliser trois modes de travail :

  1. Basé sur expect en utilisant le script ssh_launcher.sh
  2. Basé sur la bibliothèque Net::SSH::Perl
  3. Basé sur la bibliothèque Net::SSH::Expect

Pour compléter l’information capturée, des requêtes sur l’API REST seront réalisées par défaut sur:

 https://fqdn:12443/rest/api/{root_element})

Pré-requis

Les paramètres nécessaires pour la surveillance, que doit fournir le domaine qui nécessite les services de surveillance, sont :

  • Nom d’utilisateur pour s’authentifier dans le système HMC (lecture seule)
  • L’utilisateur doit avoir l’autorisation pour pouvoir se connecter à l’API REST et pour se connecter dans la shell du HMC et exécuter les commandes suivantes (minimum requis) :
    • lssyscfg
    • lshwres
  • Mot de passe dudit utilisateur
  • Emplacement (FQDN/IP) du HMC (p.e. myhmc.mydomain)
  • URL de base de l’API REST du HMC p.e. :
 https://myhmc.mydomain:12443

Modules générés par le plugin

Les paramètres qui surveille le plugin sont (regroupés par type d’élément) :

  • Current logical partitions
  • Max logical partitions
  • Max memory available
  • Max memory installed
  • Proc pool DefaultPool current proc units
  • Proc pool DefaultPool max proc units
  • Proc pool DevelopmentPool current proc units
  • Proc pool DevelopmentPool max proc units
  • Proc pool ProductionPool current proc units
  • Proc pool ProductionPool max proc units
  • Proc pool TestPool current proc units
  • Proc pool TestPool max proc units
  • Proc pool VIOPool current proc units
  • Proc pool VIOPool max proc units
  • Processor pools configured
  • Processor units available
  • Processor units installed
  • State
  • UUID
  • Virtual proc units max

LPAR :

  • Auto start : Configuration de partitions logiques auto démarrage.
  • LPAR type : Type de partition logique.
  • LPAR UUID : Utilisé pour vérifier les HMC API.
  • Max memory : Memoire maximale.
  • Max memory : Memoire disponible.
  • Processor units available : Unités de traitement disponibles.
  • Processor units current : Unités de traitement installées
  • RMC IP address : Addresse IP RMC.
  • RMC state : État du RMC dans LPAR
  • State : État de la partition logique.
  • Virtual proc units : Unités de traitement virtuel alloués à ce LPAR.

Virtual IO :

  • Auto start : Configuration de partitions logiques auto-démarrage.
  • LPAR type : Type de partition logique.
  • LPAR UUID : Utilisé pour vérifier les HMC API.
  • Max memory : Mémoire maximale.
  • Max memory current : Mémoire disponible.
  • Processor units available: Unités de traitement disponibles
  • Processor units current : Unités de traitement instaladas
  • RMC IP address : Adresse IP RMC.
  • RMC state RMC : État du RMC en LPAR.
  • State : État de la partition logique.
  • Virtual proc units : Unités de traitement virtuel alloués à ce LPAR.

Configuration du plugin IBM HMC

Configuration disponible pour le plugin Pandora FMS pour IBM HMC :

Configuration de la communication vers le serveur de Pandora FMS

mode

Mode de transfert de données, “local” ou “tentacle”

tentacle_ip

Adresse IP du serveur Pandora FMS, qui ne s’applique qu’en mode tentacle.

tentacle_port

Port sur lequel le service Tentacle est écouté.

tentacle_opts

Toute option supplémentaire qui ait été configurée sur le service Tentacle.

tentacle_client

Chemin d’accès complet au client Tentacle.

temp

Répertoire de travail temporaire.

local_folder

Chemin d’accès de dépôt des données en mode transfert “local”.

Configuration de l’accès à HMC

hmc_host

IP ou FQDN de l’HMC.

hmc_user

Utilisateur avec autorisation de lecture.

hmc_pass

Mot de passe.

as_agent_plugin

La sortie du plugin sera renvoyée en format XML pour des exécutions programmées avec l’agent de Pandora FMS (as_agent_plugin = 1). Ou sortie standard (as_agent_plugin = 0) pour des exécutions programmées avec le cron système ou réalisées comme plugin de serveur.

Configuration de l’agent

agent_name

Optionnel : indiquer un nom pour l’agent père, par défaut “hostname”.

agent_interval

Intervalle de l’agent, par défaut 300.

agent_group

Groupe de l’agent, par défaut IBM.

Personnalisation des modules

module_group

Groupe des modules, par défaut IBM

module_interval

Intervalle des modules (multiplicateur), par défaut 1

module_tagsÉtiquettes pour les modules

Renommer des entités

Pour renommer des entités, un renommage pour chaque bloc est utilisé :

 rename
 MyLPAR_NAME TO my new name
 MyLPAR_NAME2 TO my second new name
 rename_end

Exécution du plugin IBM HMC

Le plugin de Pandora FMS pour la surveillance des systèmes IBM AIX grâce à HMC se déploie de la façon suivante :

En configurant le paramètre as_agent_plugin à 1 (exécution en tant que plugin d’agent) :

module_plugin /usr/bin/perl pandora_hmc.pl pandora_hmc.conf

En configurant le paramètre as_agent_plugin a 0 (exécution en tant que plugin de serveur) :

# /etc/crontab
*/5 * * * * root /usr/bin/perl /root/hmc/pandora_hmc.pl /root/vmware/pandora_hmc .conf

HPVM

La virtualisation de machines fournie par Hewlett-Packard permet d’exécuter simultanément plusieurs machines virtuelles dans n’importe quel serveur Itanium exécutant HP-UX. C’est un produit optimisé pour des serveurs.

Fonctionnement du plugin HPVM

Ce plugin permet de surveiller des équipements de virtualisation HPVM. Il se lance comme un plugin d’agent, en générant en parallèle, un agent en plus pour chaque équipement virtualisé et hébergé dans le système surveillé.

Pour collecter l’information, des commandes locales sont utilisées.

Pré-requis du plugin HPVM

  1. Déployer un agent de Pandora FMS dans l’équipement que vous souhaitez surveiller
  2. Disposer d’un utilisateur avec des autorisations pour exécuter le plugin
  3. Cet utilisateur doit disposer des autorisations pour exécuter la commande hpvmstatus pour pouvoir interpréter la sortie :
    1. hpvmstatus
    2. hpvmstatus -X
    3. hpvmstatus -r -X

Installation du plugin HPVM

Téléchargez votre copie du plugin de Pandora FMS pour OpenNebula de la bibliothèque de modules. Vous pouvez programmer l’exécution en utilisant les collectes et l’agent de Pandora FMS, déployer ou bien extraire le contenu de l’archive dans un répertoire stable à partir duquel vous pourrez l’exécuter grâce au cron de votre système.

unzip pandora_HPVM.zip

Configuration du plugin HPVM

Configuration disponible pour le plugin Pandora FMS pour HPVM :

Configuration de la communication vers le serveur de Pandora FMS

mode

Mode de transfert de données, “local” ou “Tentacle”

tentacle_ip

Adresse IP du serveur Pandora FMS, qui ne s’applique qu’en mode tentacle.

tentacle_port

Port sur lequel le service Tentacle est écouté.

tentacle_opts

Toute option supplémentaire qui ait été configurée dans le service Tentacle.

tentacle_client

Chemin d’accès complet au client Tentacle.

temp

Répertoire de travail temporaire.

local_folder

Cchemin d’accès de dépôt des données en mode “local”.

Configuration de l’agent

agent_name

facultatif : indiquer un nom pour l’agent père, par défaut hostname.

agent_interval

intervalle de l’agent, par défaut 300.

agent_group

groupe auquel les agents appartiendront, par défaut HPVM.

Personnalisation des modules

module_group

Groupes des modules.

module_interval

intervalle des modules (multiplicateur), par défaut 1.

module_tagsÉtiquettes pour les modules

Exécution du plugin IBM HMC

En exécutant le plugin depuis l’agent de Pandora FMS, la ligne suivante apparaîtra dans le fichier de configuration de l’agent :

module_plugin /usr/bin/perl pandora_hpvm.pl pandora_hpvm.conf

Pour un test manuel, configurez le plugin en suivant les étapes décrites. Vous pouvez le lancer comme ci-après :

perl pandora_hpvm.pl pandora_hpvm.conf

Résultats du plugin HPVM

Liste des modules générés par le plugin par type d’élément.

Agents serveur :

  • Available VMs : Machines virtuelles disponibles.
  • HPVM Plugin : État d'exécution du plugin HPVM.
  • HPVM Service : Présence de hpvmctrld (X instances).
  • HPVM Service CPU usage CPU : Utilisation d'UCT du hpvmctrld (X instances).
  • HPVM Service RAM : Utilisation de RAM du hpvmctrld (X instances).
  • hpvmapp : Présence de hpvmapp (X instances).
  • hpvmapp CPU : Utilisation d'UCT du hpvmapp (X instances).
  • hpvmapp RAM : Utilisation RAM du hpvmapp (X instances)

Machines virtuelles

  • boot_type
  • console_type
  • CPU usage
  • device_number
  • direct_io_number
  • distributed
  • effective_serverid
  • guest_type
  • Host RAM available
  • Host RAM free
  • local_id
  • memory total
  • model_name
  • networks_number
  • run_pid
  • run_serverid
  • serial_number
  • uuid
  • vcpu_number
  • vm_condition
  • vm_config_label
  • vm_config_version
  • vm_state
  • vm_version
  • vm_version_label

Retour à l'index de documentation du Pandora FMS