Aller au contenu

VMware vSphere

Un vCenter Server et les hôtes qu’il gère, ou un hôte ESXi autonome : hôtes qui arrêtent de répondre, sont laissés en mode maintenance ou rapportent une santé rouge, machines virtuelles et leurs VMware Tools, datastores qui se remplissent ou deviennent inaccessibles, et les alarmes que vSphere lui-même a levées.

Du serveur DumbMonit (ou de son agent relais) vers l’équipement :

PortProtocoleUsage
443TCPAPI vSphere (HTTPS, par défaut)

DumbMonit lit vSphere avec un utilisateur dédié portant le rôle intégré Read-only. Il n’allume ni n’éteint jamais une VM, n’entre jamais en mode maintenance et n’acquitte jamais une alarme.

La panne à surveiller : un datastore qui se remplit. Quand un datastore en provisionnement fin atteint 100 %, chaque VM qui a besoin d’y écrire est mise en pause d’un coup. Les alarmes que vCenter lève le disent aussi, mais seulement à qui a le client ouvert.

DumbMonit parle à la Web Services API de vSphere (SOAP, /sdk), pas à l’API REST (/api/vcenter/*) : un hôte ESXi autonome n’a pas d’API REST, et sur un vCenter l’API REST ne dit pas le mode maintenance, la santé globale (overallStatus), l’état des VMware Tools ou les alarmes déclenchées. Une vue de tout l’inventaire est lue en une seule passe, page par page, et libérée à la fin.

La session est gardée d’une sonde à l’autre et rouverte seulement quand elle expire : vCenter n’enregistre pas une nouvelle connexion chaque minute.

Toutes les métriques sont préfixées dumbmonit_vsphere_. Les valeurs de santé suivent le overallStatus de vSphere : 0 vert, 1 jaune, 2 rouge, 3 gris (inconnu).

MétriqueQuoiLabels
infovaleur 1product (vcenter ou esxi), version, build
hostshôtes par état de connexion : connected, disconnected, notRespondingstate
host_connection_state0 connecté, 1 déconnecté par un administrateur, 2 ne répond pashost
host_power_state0 allumé, 1 veille, 2 éteint, 3 inconnuhost
host_maintenance1 en mode maintenancehost
host_statussanté globalehost
host_cpu_percent, host_memory_percent, host_memory_bytes, host_uptime_secondshôtes connectés seulementhost
vmsVM par état d’alimentation : poweredOn, poweredOff, suspended (templates exclus)state
templatestemplates de VM
vm_power_state0 allumée, 1 éteinte, 2 suspendue ; 1000 VM au plusvm
vm_statussanté globalevm
vm_tools_statusVM allumées seulement : 0 à jour, 1 vieille version, 2 installé mais pas lancé, 3 pas installévm
vm_ip_infoVM allumées seulement, toujours 1 : l’adresse principale que rapporte VMware Tools (guest.ipAddress, le rôle Read-only suffit ; aucune sans Tools, boucle locale et lien local ignorés). La carte dessine sous la VM les surveillances visées à cette adressevm, ip
datastoresdatastores
datastore_capacity_bytes, datastore_free_bytes, datastore_used_percentdatastore
datastore_accessible1 accessible, 0 inaccessibledatastore
datastore_statussanté globaledatastore
alarmsalarmes déclenchées non acquittées, par couleur : red, yellowstatus
alarms_acknowledgedalarmes déclenchées déjà acquittées
alarmune série par alarme non acquittée, valeur = son code de santé, 64 au plusalarm (son nom), entity, entity_type, status
scrape_errorsappels qui ont échoué à la dernière sonde

Les règles intégrées qui s’appliquent : hôte vSphere ne répond pas, santé d’hôte vSphere rouge, hôte vSphere laissé en maintenance, datastore vSphere presque plein, datastore vSphere inaccessible, VMware Tools vSphere non lancés, alarme rouge vSphere, plus Surveillance inaccessible.

Le panneau au-dessus des graphiques lit ce que la sonde a stocké ; ouvrir la page n’interroge jamais vSphere. Il dit d’abord ce qui ne va pas (hôtes qui ne répondent pas, alarmes rouges, datastores presque pleins ou inaccessibles), puis les hôtes avec leur charge, les datastores avec leur niveau de remplissage, et les VM par état d’alimentation.

Contre le simulateur govmomi vcsim 0.56.0, en mode vCenter et en mode ESXi : connexion et mot de passe refusé, réutilisation et expiration de session, pagination dans l’inventaire, un hôte qui ne répond pas, un hôte en mode maintenance, une VM éteinte et un template. Le simulateur ne lève aucune alarme : lire les alarmes déclenchées est validé contre la structure AlarmState documentée de la Web Services API.

Créer un utilisateur en lecture seule dans vSphere

Section intitulée « Créer un utilisateur en lecture seule dans vSphere »
  1. Sur un vCenter, ouvrez Administration → Single Sign On → Users and Groups → Users, choisissez le domaine vsphere.local, cliquez sur Add et saisissez ce nom d’utilisateur avec un long mot de passe aléatoire.

    dumbmonit
  2. Ouvrez Administration → Access Control → Global Permissions → Add : choisissez cet utilisateur, le rôle Read-only, cochez Propagate to children.

  3. Sur un hôte ESXi autonome, à la place : dans le host client, Manage → Security & users → Users → Add user dumbmonit, puis Host → Actions → Permissions → Add user avec le rôle Read-only.

  4. Dans DumbMonit, saisissez l’adresse du vCenter ou de l’hôte, avec l’utilisateur [email protected] sur un vCenter ou dumbmonit sur un hôte. N’ajoutez que le vCenter quand il gère les hôtes.

  • Read-only, propagé aux enfants : Voit les hôtes, VM, datastores et alarmes

Documentation de l’éditeur : vSphere global permissions

Ne réutilisez pas le compte du domaine Single Sign On ni le compte intégré de l’hôte : le rôle Read-only suffit à DumbMonit. Il voit chaque hôte, VM, datastore et alarme, et ne peut rien modifier.

Quand un vCenter gère les hôtes, n’ajoutez que le vCenter : il remonte tous les hôtes, VM et datastores.

DumbMonit ne fait que lire, via l’API Web Services de vSphere (/sdk). Il n’allume ni n’éteint jamais une VM, n’active jamais le mode maintenance et n’acquitte jamais une alarme.

IdentifiantChamps
Nom d’utilisateur / mot de passeL’utilisateur dédié avec le rôle Read-only : [email protected] sur un vCenter, dumbmonit sur un hôte.

Adresse : un nom d’hôte ou une IP (vcenter.lan), host:port, ou une URL complète ; un /sdk ou /ui final est accepté. Options : port (443), vérification du certificat, délai de requête (20 s) et alarmes déclenchées (lues).