vmware

Indicadores de latencia en vSphere/ESXi/Almacenamiento

En ocasiones puede suceder que una máquina virtual tenga un rendimiento degradado y no encuentres en la propia máquina virtual el motivo. Puede ocurrir que el sistema de almacenamiento esté saturado y no pueda responder adecuadamente a la demanda de las máquinas virtuales del entorno. Existen unos indicadores para determinar si tu cabina de discos, ESXi o una LUN en concreto, está experimentando problemas de rendimiento.

Fundamentalmente debes revisar 2 parámetros:

  • Latencia de comandos de dispositivos físicos: mide el tiempo que los discos del almacenamiento tardan para completar el comando SCSI. Si supera 15 ms indica que la cabina está saturada, se necesitaría mover máquinas virtuales a otra LUN o bien trasladar máquinas virtuales a discos de mayor velocidad o SSD.
  • Latencia de comandos del Kernel: este contador mide el timepo medio por el vmkernel en procesar un comando SCSI. Debde de oscilar entre 0 y 1, un valor superior a 4 ms indica que las máquinas virtuales solicitan más capacidad de respuesta al almacenamiento o el ESXi está teniendo problemas de rendimiento. En el caso del ESXi hay que revisar el consumo de CPU y puedes aumentar la profundidad de cola.

Más info sobre Supervisión y Rendimiento de vSpehere 7.0

En un entorno de prueba con vSphere 7.0 se obtienen los valores de estos indicadores en el propio ESXi en el menú “Superisar” –> “Avanzado”, seleccionando los indicadores anteriormente comentados para la vista de “Disco”

En la anterior captura, desmarca el resto de indicadores marcados por defecto y selecciona la unidad a verificar su rendimeinto. Sólo marco la unidad de almacenamiento iSCSI, que es un sistema Linux con iSCSI en SSD del laboratorio. El resultado del entorno es:

En el almacenamiento iSCSI de tipo SSD están en funcionamiento 2 máquinas virtuales sin impacto en su rendimiento.

En el caso del indicador de Latencia de comandos del Kernel existe la opción de aumentar la cola de proceso de los comandos SCSI que ejecuta. Si tienes un entorno modesto con un adaptador iSCSI por software puedes ampliar este parámetro. Su valor por defecto es de 128, para aumentar este valor conectar al ESXi y ejecutar el siguiente comando:

esxcli system module parameters set -m iscsi_vmk -p iscsivmk_LunQDepth=value

y después reiniciar el ESXi para aplicar el cambio. No existe un valor de referencia a aplicar, todo depende del entorno, carga de trabajo de las máquinas virtuales, del propio servidor ESXi y del rendimiento de la cabina de discos o NAS.

Más info Adjust Maximum Queue Depth for Software iSCSI

Continué buscando información acerca del rendimiento en entornos vSphere y localicé una genial charla en el VMworld2017 titulada “Find performance bottlenecks” por Cody Hosterman.

Cody realiza un análisis profundo sobre el rendimiento, dejo también un enalce a su blog donde detalla las pruebas realizadas y conclusiones. Merece la pena leerlo !!!

Understanding VMware ESXi Queuing and the FlashArray

Espero que os sea de utilidad.