Aller au contenu principal

VMware ESX

Vue d'ensemble

VMWare est une solution de Virtualisation et d'infrastructure de Cloud Computing.

Le Plugin-Pack Centreon s'appuie sur le SDK Centreon VMWare Connecteur pour requêter l'API du vCenter.

Avec le connecteur, Centreon peut superviser les VMs, Datastores, ESXs, Clusters, etc.

Contenu du Plugin-Pack

Objets supervisés

  • ESX ou ESXi

Règles de découvertes

Nom de la règleDescription
Virt-VMWare2-Esx-HostDiscoveryDécouvrez vos ESX liés à vCenter ou vos ESXi

Métriques Collectées

En plus des modes et des métriques détaillées ci-après, il est également possible de superviser les éléments suivants :

  • Alarms : contrôle les alarmes d'un ESX
  • Datastores-Latency : contrôle la latence pour accéder aux datastores
  • Maintenance : contrôle si une maintenance est prévue
  • Time : contrôle la synchronisation temps
  • Traffic : Contrôle les interfaces et le trafic
  • Uptime : temps écoulé depuis le dernier redémarrage de l'ESX
Metric nameDescriptionUnit
host.cpu.utilization.percentageTotal CPU usage in percentage%
host.cpu.utilization.mhzTotal CPU usage in MHzMHz
core#host.core.cpu.utilization.percentageCPU usage per core in percentage%

Prérequis

Configuration du connecteur Centreon VMWare

Pour la supervision VMWare, centreon utilise un daemon pour se connecter et requêter le vCenter.

Installer le daemon sur tous les pollers :

yum install centreon-plugin-Virtualization-VMWare-daemon

Pour configurer les accès à votre infrastructure, éditer le fichier "/etc/centreon/centreon_vmware.pm" :

%centreon_vmware_config = (
vsphere_server => {
default => {
url => 'https://<ip_hostname>/sdk',
username => '<username>',
password => '<password>'
}
}
);

1;

Assurez vous d'avoir remplacé toutes les variables avec les informations nécessaires :

  • ip_hostname: Adresse IP ou nom d'hôte du vCenter ou de l'ESX (s'il est en mode standalone),
  • username: utilisateur avec un accès "lecture seule" au vCenter ou à l'ESX (vous pouvez utiliser un utilisateur du domaine),
  • password: le mot de passe de l'utilisateur.

Vous pouvez configurer plusieurs connexions à différents vCenter ou ESX en utilisant cette structure:

%centreon_vmware_config = (
vsphere_server => {
'my_first_vcenter' => {
url => 'https://<ip_hostname>/sdk',
username => '<username>',
password => '<password>'
},
'my_other_vcenter' => {
url => 'https://<ip_hostname>/sdk',
username => '<DOMAIN>\<username>',
password => '<password>'
},
},
port => 5700
);

1;

Chaque entrée est un container.

Pour démarrer le daemon et l'activer au démarrage :

systemctl start centreon_vmware
systemctl enable centreon_vmware

Vous pouvez vérifiez que votre configuration est fonctionelle en consultant les journaux dans /var/log/centreon/centreon_vmware.log.

Balises et Attributs personnalisés

Pour découvrir les balises et les attributs personnalisés, vous devez utiliser la version 3.2.5 de centreon-vmware-daemon et ajouter --tags dans les options supplémentaires de découverte.
Allez à la page Configuration > Hôtes > Découverte, et à la 3ème étape (Définir les paramètres de découverte), dans la section Paramètres supplémentaires, dans le champ Options supplémentaires, saisissez --tags.

Flux réseau

Le Collecteur Centreon avec le connecteur VMWare d'installé doit accéder en HTTPS (TCP/443) au vCenter.

Les Collecteurs requêtant le Collecteur avec le connecteur VMWare doivent accéder en TCP/5700 au Collecteur avec le Connecteur VMWare.

Installation

  1. Installer le Plugin sur l'ensemble des Collecteurs Centreon supervisant l'infrastructure VMWare:
yum install centreon-plugin-Virtualization-Vmware2-Connector-Plugin
  1. Installer le Plugin-Pack 'Vmware ESX' depuis la page "Configuration > Plugin packs > Manager" sur l'interface Web de Centreon.

Configuration

  • Depuis l'interface Web de Centreon, ajoutez un nouvel hôte depuis la page Configuration > Hôtes.
  • Appliquez le modèle Virt-VMWare2-ESX-custom et configurez toutes les macros :
MandatoryNameDescription
XCENTREONVMWARECONTAINERName of your container in the file centreon_vmware.pm
XCENTREONVMWAREHOSTThe Centreon server that launches the connection
XCENTREONVMWAREPORTBy default: 5700
XESXNAMEName of the ESX (defined in your VMWare infrastructure
CENTREONVMWAREEXTRAOPTIONSCustomize it with your own if needed

FAQ

Comment puis-je tester le Plugin et que signifient les options des commandes ?

Une fois le Plugin installé, vous pouvez tester celui-ci directement en ligne de commande depuis votre collecteur Centreon avec l'utilisateur centreon-engine :

/usr/lib/centreon/plugins//centreon_vmware_connector_client.pl \
--plugin=apps::vmware::connector::plugin \
--mode=cpu-host \
--custommode=connector \
--connector-hostname='localhost' \
--connector-port='5700' \
--container='vcenter01' \
--esx-hostname='SRV-ESX-TLS' \
--unknown-status='%{status} !~ /^connected$/i' \
--warning-status='' \
--critical-status='' \
--warning-total-cpu='80' \
--critical-total-cpu='90' \
--warning-total-cpu-mhz='' \
--critical-total-cpu-mhz='' \
--warning-cpu='' \
--critical-cpu=''

La commande retourne le message de sortie ci-dessous:

OK: Host 'SRV-ESX-TLS' : status connected - cpu total average : 48.63 %, 14592.00 MHz - All CPUs are ok |
'cpu_total'=48.63%;;;0;100 'cpu_total_MHz'=14592.00MHz;;;0;30000 'cpu_0'=13.95%;;;0;100 'cpu_1'=12.01%;;;0;100
'cpu_2'=24.58%;;;0;100 'cpu_3'=24.55%;;;0;100 'cpu_4'=26.72%;;;0;100 'cpu_5'=24.38%;;;0;100 'cpu_6'=24.23%;;;0;100
'cpu_7'=26.37%;;;0;100 'cpu_8'=27.71%;;;0;100 'cpu_9'=26.16%;;;0;100

Cette commande supervise l'utilisation CPU (--plugin=apps::vmware::connector::plugin --mode=cpu-host) de l'ESX SRV-EX-TLS (--esx-hostname='SRV-ESX-TLS').

Le plugin se connecte au daemon VMWare sur localhost (--connector-hostname='localhost') sur le port 5700 (--connector-port='5700'). Puis la command requête le container vcenter01 (--container='vcenter01') parce que l'ESX SRV-ESX*TLS est managé par vcenter01.

Cette commande déclenchera un WARNING si l'utilisation du CPU est au supérieure à 80% (--warning-total-cpu='80') et un CRITICAL si l'utilisation CPU est supérieure à 90% (--critical-total-cpu='90').

Vous pouvez afficher tous les modes disponibles à l'aide de la commande suivante :`

/usr/lib/centreon/plugins/./centreon_vmware_connector_client.pl \
--plugin=apps::vmware::connector::plugin \
--list-mode

Pour chaque mode, les options disponibles peuvent être consultées en ajoutant l'option --help à la commande :

/usr/lib/centreon/plugins/./centreon_vmware_connector_client.pl \
--plugin=apps::vmware::connector::plugin \
--mode=cpu-host \
--help

J'obtiens les erreurs suivantes :

UNKNOWN: Unknown container name 'default' |

Ce message d'erreur signifie que le container* passé en argument n'existe pas dans la configuration du connecteur VMWare. Vérifiez la macro CENTREONVMWARECONTAINER* sur l'hôte ou vérifiez la configuration dans le fichier /etc/centreon/centreon_vmware.pm*

UNKNOWN: Container connection problem |

Ce message signifie que vous avez un problème avec les identifiants liés à votre container. Vérifiez les identifiants dans le fichier /etc/centreon/centreon_vmware.pm. Vous pouvez aussi regarder les logs pour plus d'informations: /var/log/centreon/centreon_vmware.log

UNKNOWN: Cannot get value for counters (Maybe, object(s) cannot be reached: disconnected, not running, time not synced (see time-host mode),...) |

Ce message signifie que le plugin n'a pu récupérer des valeurs pour des compteurs. La plus part du temps, cela est dû à un décalage de temps entre les Serveurs Centreon et l'infrastructure VMWare. Vérifiez la synchronisation temps avec le mode time-host.

UNKNOWN: Cannot get counter 'net.received.average' for the sampling period '300' (counter level: 2, sampling level: 1)

Certains compteurs comme 'mem.state.latest' et 'net.received.average' ne sont disponibles que pour certains niveaux d'échantillonnages par défaut. Vous pouvez modifier le niveau d'échantillonnage au niveau du vCenter. Vous pouvez aussi configurer la macro SERVICEEXTRAOPTIONS sur les services qui rencontrent cette erreur avec l'option --sampling-period='20'.