Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. Introduction

Avec Checkmk, vous pouvez surveiller les ordinateurs hôtes ESXi ainsi que leurs machines virtuelles. Ainsi, sur un ordinateur hôte, il est par exemple possible d'interroger les E/S disque, les performances de la mémoire de données, l'état des interfaces réseau physiques, divers capteurs matériels, et bien plus encore. Checkmk propose également une série de plugins de supervision pour les machines virtuelles. Vous trouverez une liste complète de ces plugins de supervision dans le catalogue des plugins de supervision.

Grâce au mécanisme de ferroutage, les données de la machine virtuelle s’affichent directement sur l’ordinateur hôte associé. Ainsi, les données relatives à la machine virtuelle se trouvent exactement là où elles sont nécessaires et peuvent être comparées à celles rapportées par le système d’exploitation de la machine virtuelle :

vmware services

L'accès à ces données s'effectue via l'API vSphere basée sur HTTP, et non via les agents habituels ou le protocole SNMP. Cela signifie qu'aucun agent ni aucun autre logiciel ne doit être installé sur les ordinateurs hôtes ESXi, et que la configuration de l'accès est très simple.

2. Configuration

2.1. Configuration via l’ordinateur hôte ESXi

La configuration initiale pour la supervision d'un serveur ESXi est très simple et peut être effectuée en moins de cinq minutes. Avant de pouvoir configurer l'accès, les conditions préalables suivantes doivent toutefois être remplies :

  • Vous devez avoir défini un utilisateur sur le serveur ESXi. Il suffit que cet utilisateur dispose d'un accès en lecture seule.

  • Vous devez avoir défini le serveur ESXi comme hôte dans Checkmk et configuré son agent de supervision en tant qu’API integrations if configured, else Checkmk agent. Conseil : sélectionnez le nom de domaine de manière à ce qu’il corresponde à celui connu du serveur lui-même.

Une fois les conditions préalables remplies, vous pouvez créer une règle dans le jeu de règles « Setup > VM, cloud, container > VMware ESX via vSphere ». Celle-ci sera attribuée à l'ordinateur hôte défini, de sorte que l'agent spécial soit utilisé à la place de l'agent standard pour récupérer les données de la supervision VMware.

Saisissez le nom d'utilisateur et le mot de passe tels qu'ils ont été définis sur le serveur ESXi. La condition de la règle doit être définie sur l'ordinateur hôte défini dans Checkmk. La première installation est alors terminée et Checkmk peut récupérer les données du serveur.

vmware username

Enfin, revenez à la configuration de l'ordinateur hôte et lancez la reconnaissance du service. Cela devrait permettre de détecter plusieurs services :

vmware discovery

Activez les modifications comme d'habitude. Si aucun service n'a été identifié, vous pouvez rechercher des erreurs dans la configuration à l'aide des options de diagnostic, comme décrit plus loin dans cet article.

2.2. Configuration à l'aide de vCenter

Si un vCenter est disponible, au lieu de récupérer les données de supervision via les ordinateurs hôtes individuels, vous pouvez également faire appel au vCenter. Cette méthode présente divers avantages et inconvénients :

Avantages Inconvénients

Application simple dans les situations où les machines virtuelles sont attribuées de manière dynamique à l'aide de vMotion.

Pas de supervision si vCenter n'est pas disponible.

La supervision de la charge de travail totale de la mémoire vive (RAM) d'un cluster est possible.

Pas de supervision des données spécifiques au matériel dans les nœuds du cluster (par exemple, les disques RAM et les cartes réseau).

Il est également possible de combiner les deux méthodes — vous bénéficiez ainsi du meilleur des deux mondes.

Configuration de vCenter

Les conditions préalables à cette configuration sont similaires à celles de la configuration sur un seul serveur ESXi :

  • Un utilisateur disposant d'un accès en lecture doit être présent sur le vCenter.

    • Pour pouvoir vérifier l'état de la licence, vous devrez peut-être accorder explicitement l'autorisation Global.Licenses.

  • Le vCenter a été défini comme ordinateur hôte dans Checkmk et son agent de supervision est configuré en tant qu'API integrations if configured, else Checkmk agent

  • Si les serveurs ESXi ont déjà été configurés dans Checkmk et que vous souhaitez regrouper la supervision, leurs noms dans vCenter seront alors identiques à ceux sous lesquels ils sont configurés en tant qu’hôtes dans Checkmk

Comme décrit précédemment, créez une règle pour l'agent spécial de supervision VMware, dans « Type of Query », sélectionnez le vCenter et définissez la condition sur l'ordinateur hôte approprié tel que défini dans Checkmk :

vmware vcenter username

La configuration est ainsi terminée. Exécutez la reconnaissance du service pour l'ordinateur hôte vCenter.

Récupération depuis les ordinateurs hôtes ESXi et vCenter

Afin d’éviter la récupération de données en double lorsque vous utilisez une combinaison des deux méthodes de configuration, la règle pour le vCenter peut être configurée pour ne récupérer que des données spécifiques. Une possibilité consiste à accéder à Datastores et à Virtual Machines via le vCenter, et aux autres données directement depuis les hôtes ESXi. L’utilisation de la licence peut être récupérée dans les deux configurations, car le vCenter rapporte un état global.

vmware data1

Si vous avez déjà configuré les hôtes ESXi, leurs règles seront adaptées en conséquence. Ici, seul l'accès à Host Systems et Performance Counters est disponible, car ces adresses appartiennent de manière immuable à un serveur ESXi particulier. L'état de la licence s'applique uniquement au serveur ESXi récupéré.

vmware data2

2.3. Supervision des machines virtuelles

Par défaut, seul le statut des machines virtuelles en tant que services est créé et attribué respectivement à l’ESXi ou au vCenter. Ces machines virtuelles fournissent toutefois encore davantage d’informations — concernant la mémoire vive (RAM) ou les snapshots, par exemple. Ces données sont stockées en tant que données ferroutées et attribuées directement aux hôtes correspondant aux machines virtuelles dans Checkmk.

Pour que ces données soient visibles, la machine virtuelle doit être définie comme un hôte dans Checkmk. Vous pouvez bien sûr installer l’agent Checkmk sur la machine virtuelle et profiter pleinement de ses fonctionnalités. Les données ferroutées seront simplement ajoutées à celles déjà disponibles.

Nommer les données ferroutées

Si le nom de domaine de la VM dans Checkmk correspond au nom de la VM, l’affectation s’effectue automatiquement. Si ce n’est pas le cas, Checkmk propose différentes options pour personnaliser le nom des données de ferroutage. Les options suivantes sont disponibles dans la règle de configuration elle-même :

  • Vous pouvez utiliser le nom de domaine du système d'exploitation de la VM, s'il est accessible via l'API vSphere.

  • Si le nom de la VM contient des espaces, celui-ci sera tronqué après le premier espace. Il est également possible de remplacer les espaces par des traits de soulignement.

vmware nametranslation

Si le nom de domaine de l'ordinateur hôte est très différent dans Checkmk, une attribution explicite peut être effectuée à l'aide de la règle « Setup > Agents > Access to agents > Host name translation for piggybacked hosts ».

vmware nametranslation2

Si l'ordinateur hôte est configuré dans Checkmk et que les noms correspondent, vous pouvez cocher la case « Display VM power state on » dans la règle de configuration — sélectionnez si et où les données doivent être mises à disposition. Sélectionnez ici « The Virtual Machine ».

vmware vms

Grâce à la reconnaissance du service sur le ou les ordinateurs hôtes, les nouveaux services seront désormais identifiés et pourront être activés. Veuillez noter que les informations provenant des services peuvent différer les unes des autres. Le serveur ESXi perçoit l’utilisation de la mémoire vive d’une machine virtuelle différemment de la façon dont le système d’exploitation de la machine la rapporte.

vmware services

3. Options de diagnostic

3.1. Introduction

Lors de la recherche de la source d’une erreur, il existe plusieurs « points de départ ». Étant donné que les données proviennent du serveur ESXi/vCenter, c’est un point de départ logique pour rechercher l’erreur. Par la suite, il est important que les données parviennent au serveur Checkmk et puissent y être correctement traitées et affichées.

3.2. Problèmes liés à la configuration d’un serveur ESXi/vCenter

À l'aide de l'instruction « curl », vous pouvez vérifier si le serveur est accessible depuis la supervision :

OMD[mysite]:~$ curl -Ik https://myESXhost.my-domain.net
HTTP/1.1 200 OK
Date: Fri, 4 Nov 2016 14:29:31 GMT
Connection: Keep-Alive
Content-Type: text/html
X-Frame-Options: DENY
Content-Length: 5426
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

Vous pouvez vérifier sur la console, à l'aide de l'agent spécial, si les données d'accès ont été saisies correctement et si Checkmk peut accéder à l'ordinateur hôte. Utilisez l'option --help ou -h pour obtenir la liste complète des options disponibles. Dans l'exemple, à l'aide de grep, la sortie a été limitée à une section spécifique et aux quatre premières lignes qui la suivent ; vous pouvez omettre cette partie pour obtenir une sortie complète, ou filtrer les résultats :

OMD[mysite]:~$ share/check_mk/agents/special/agent_vsphere --debug --user myesxuser --secret myesxpassword -D myESXhost | grep -A4 esx_vsphere_objects
<<<esx_vsphere_objects:sep(9)>>>
hostsystem      myESXhost           poweredOn
hostsystem      myESXhost2          poweredOn
virtualmachine  myVM123             myESXhost   poweredOn
virtualmachine  myVM126             myESXhost   poweredOn
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

Vous pouvez vérifier sur la console si Checkmk peut accéder à l'ordinateur hôte. Ici, la sortie est également limitée à quatre lignes :

OMD[mysite]:~$ cmk -d myESXhost | grep -A4 esx_vsphere_objects
<<<esx_vsphere_objects:sep(9)>>>
hostsystem      myESXhost           poweredOn
hostsystem      myESXhost2          poweredOn
virtualmachine  myVM123             myESXhost   poweredOn
virtualmachine  myVM126             myESXhost   poweredOn
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

Vous pouvez également effectuer le test sur la page de diagnostic de l'ordinateur hôte dans la section Configuration :

vmware agent test

Si tout fonctionne correctement jusqu'à présent, la sortie devrait avoir été enregistrée dans un répertoire temporaire. Vous pouvez vérifier si un tel fichier a été créé et si son contenu est correct à l'aide de la commande suivante :

OMD[mysite]:~$ ll tmp/check_mk/cache/myESXhost
-rw-r--r-- 1 mysite mysite 17703 Nov  4 15:42 myESXhost
OMD[mysite]:~$ head -n5 tmp/check_mk/cache/myESXhost
<<<esx_systeminfo>>>
Version: 6.0
AgentOS: VMware ESXi
<<<esx_systeminfo>>>
vendor VMware, Inc.
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

3.3. Problèmes avec les données ferroutées

Checkmk crée pour chaque hôte ferrouté un répertoire contenant un fichier texte. Ce fichier texte contient les données qui doivent être attribuées aux hôtes.

OMD[mysite]:~$ ll tmp/check_mk/piggyback/
total 0
drwxr-xr-x 2 mysite mysite 60 Nov  4 15:51 myVM123/
drwxr-xr-x 2 mysite mysite 60 Nov  4 15:51 myVM124/
drwxr-xr-x 2 mysite mysite 60 Nov  4 15:51 myVM126/
drwxr-xr-x 2 mysite mysite 60 Nov  4 15:51 myESXhost2/
OMD[mysite]:~$ ll tmp/check_mk/piggyback/myVM123/
-rw-r--r-- 1 mysite mysite 1050 Nov  4 15:51 myESXhost
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !

Si ces répertoires ou fichiers sont absents, cela signifie qu’ils n’ont pas été créés par les agents spéciaux. Vous pouvez vérifier si les données de la machine virtuelle sont incluses dans la sortie de l’agent. Si cette situation se présente, consultez la règle de configuration de l’ordinateur hôte ESXi/vCenter pour vérifier si la récupération des données a été activée.

OMD[mysite]:~$ grep "<<<<myVM123>>>>" tmp/check_mk/cache/myESXhost
<<<<myVM123>>>>
Copier les instructions dans le presse-papiers
Instruction(s) copiée(s) avec succès dans le presse-papiers !
L'accès en écriture au presse-papiers a été refusé !
Tip

Dans le cas d’un très grand nombre de répertoires de ce type pour les données ferroutées, il peut être très difficile de trouver ceux qui ne sont affectés à aucun ordinateur hôte. Avec l’instruction cmk-piggyback list orphans, vous pouvez trouver tous les hôtes ferroutés orphelins pour lesquels il existe des données mais qui n’ont pas encore été créés en tant qu’ordinateurs hôtes dans Checkmk.

4. Fichiers et répertoires

Chemin d'accès au fichier Fonction

~/tmp/check_mk/piggyback/

Checkmk enregistre ici les données ferroutées. Pour chaque ordinateur hôte ferrouté, un sous-dossier est créé avec le nom de l’ordinateur hôte — ce sous-dossier contient un fichier texte avec les données de l’ordinateur hôte. Le nom du fichier correspond au nom de l’ordinateur hôte ferrouté fournissant les données.

~/tmp/check_mk/cache/

C'est ici que sont temporairement enregistrées les dernières sorties respectives de l'agent pour tous les ordinateurs hôtes. Le contenu du fichier d'un ordinateur hôte est identique à l'instruction cmk -d myserver123.

~/share/check_mk/agents/special/agent_vsphere

L'agent spécial permettant d'exécuter une requête sur les serveurs ESXi et vCenter. Ce script peut également être exécuté manuellement à des fins de test.


Last modified: Tue, 16 Dec 2025 16:08:21 GMT via commit 72e42836d
Sur cette page