Ir al contenido

VMware vSphere

Un vCenter Server y los hosts que gestiona, o un host ESXi independiente: hosts que dejan de responder, se quedan en modo mantenimiento o reportan un estado de salud rojo, máquinas virtuales y sus VMware Tools, datastores que se llenan o se vuelven inaccesibles, y las alarmas que el propio vSphere lanzó.

DumbMonit lee vSphere con un usuario dedicado que tiene el rol integrado Read-only. Nunca enciende ni apaga una VM, nunca entra en modo mantenimiento y nunca confirma una alarma.

El fallo que vale la pena vigilar: un datastore que se llena. Cuando un datastore thin provisioned alcanza el 100 %, toda VM que necesita escribir en él se pausa de golpe. Las alarmas que lanza vCenter también lo indican, pero solo a quien tenga el cliente abierto.

DumbMonit habla con la vSphere Web Services API (SOAP, /sdk), no con la API REST (/api/vcenter/*): un host ESXi independiente no tiene API REST, y en un vCenter la API REST no indica el modo mantenimiento, la salud general (overallStatus), el estado de las VMware Tools ni las alarmas activadas. Se lee una vista de todo el inventario en una sola pasada, página por página, y se libera al final.

La sesión se conserva de una sonda a la siguiente y se vuelve a abrir solo cuando caduca: vCenter no registra un nuevo inicio de sesión cada minuto.

Todas las métricas tienen el prefijo dumbmonit_vsphere_. Los valores de salud siguen el overallStatus de vSphere: 0 verde, 1 amarillo, 2 rojo, 3 gris (desconocido).

MétricaQuéEtiquetas
infovalor 1product (vcenter o esxi), version, build
hostshosts por estado de conexión: connected, disconnected, notRespondingstate
host_connection_state0 conectado, 1 desconectado por un administrador, 2 sin respuestaesxi
host_power_state0 encendido, 1 en espera, 2 apagado, 3 desconocidoesxi
host_maintenance1 en modo mantenimientoesxi
host_statussalud generalesxi
host_cpu_percent, host_memory_percent, host_memory_bytes, host_uptime_secondssolo hosts conectadosesxi
vmsVMs por estado de encendido: poweredOn, poweredOff, suspended (plantillas excluidas)state
templatesplantillas de VM
vm_power_state0 encendida, 1 apagada, 2 suspendida; como máximo 1000 VMsvm
vm_statussalud generalvm
vm_tools_statussolo VMs encendidas: 0 actualizadas, 1 versión antigua, 2 instaladas pero no en ejecución, 3 no instaladasvm
datastoresdatastores
datastore_capacity_bytes, datastore_free_bytes, datastore_used_percentdatastore
datastore_accessible1 accesible, 0 inaccesibledatastore
datastore_statussalud generaldatastore
alarmsalarmas activadas no confirmadas, por color: red, yellowstatus
alarms_acknowledgedalarmas activadas ya confirmadas
alarmuna serie por alarma no confirmada, valor = su código de salud, como máximo 64alarm (su nombre), entity, entity_type, status
scrape_errorsllamadas que fallaron en la última sonda

Las reglas integradas que se aplican: vSphere host not responding, vSphere host health red, vSphere host left in maintenance, vSphere datastore almost full, vSphere datastore inaccessible, vSphere VM tools not running, vSphere red alarm, además de Monitor unreachable.

El panel sobre las gráficas lee lo que guardó la sonda; abrir la página nunca consulta vSphere. Indica primero qué va mal (hosts sin respuesta, alarmas rojas, datastores casi llenos o inaccesibles), luego los hosts con su carga, los datastores con su nivel de llenado, y las VMs por estado de encendido.

Contra el simulador govmomi vcsim 0.56.0, en modo vCenter y en modo ESXi: inicio de sesión y contraseña rechazada, reutilización y caducidad de sesión, paginación por el inventario, un host sin respuesta, un host en modo mantenimiento, una VM apagada y una plantilla. El simulador no lanza ninguna alarma: la lectura de las alarmas activadas se validó contra la estructura AlarmState documentada de la Web Services API.

  1. En un vCenter: Administration → Single Sign On → Users and Groups → Users, dominio vsphere.local → Add. Nombra el usuario como sigue y dale una contraseña larga y aleatoria.

    dumbmonit
  2. Todavía en el vCenter: Administration → Access Control → Global Permissions → Add. Elige ese usuario, el rol Read-only, y marca Propagate to children. Read-only ve cada host, VM, datastore y alarma, y no puede cambiar nada.

  3. En un host ESXi independiente en su lugar: en el host client, Manage → Security & users → Users → Add user, con el mismo nombre. Luego Host → Actions → Permissions → Add user: elígelo, el rol Read-only, y marca Propagate to all children.

  4. En DumbMonit, introduce la dirección del vCenter o del host, por ejemplo «vcenter.lan» o «esxi1.lan», con el nombre de usuario tal como se creó: dumbmonit@vsphere.local en un vCenter, dumbmonit en un host. Cuando un vCenter gestiona los hosts, añade solo el vCenter: reporta cada host, VM y datastore.

  5. DumbMonit solo lee, a través de la vSphere Web Services API (/sdk). Nunca enciende ni apaga una VM, nunca entra en modo mantenimiento y nunca confirma una alarma.

CredencialCampos
Nombre de usuario / contraseñaEl usuario dedicado con el rol Read-only: dumbmonit@vsphere.local en un vCenter, dumbmonit en un host.

Dirección: un nombre de host o IP (vcenter.lan), host:puerto, o una URL completa; se acepta un /sdk o /ui final. Opciones: puerto (443), comprobación de certificado, tiempo de espera de la petición (20 s) y alarmas activadas (lectura).