Consejos y herramientas para la supervisión de Microsoft Hyper-V
Las principales ventajas de la virtualización de hardware incluyen el aislamiento lógico y el uso racional de los recursos. Cuando se utiliza Microsoft Hyper-V, es importante supervisar el uso de los recursos de hardware por parte de las máquinas virtuales y los servidores físicos Hyper-V. La asignación insuficiente o excesiva de recursos a una máquina virtual puede provocar una degradación del rendimiento de la máquina virtual o afectar al rendimiento de otras máquinas virtuales y de todo el entorno. Esta entrada de blog cubre consejos de supervisión de Hyper-V y herramientas nativas de supervisión de Hyper-V que están a su disposición de forma gratuita.
¿Por qué necesita supervisión del rendimiento de Hyper-V?
La supervisión de recursos de Hyper-V permite detectar cuellos de botella y gestionar los recursos para optimizar el rendimiento. Mediante la supervisión del rendimiento de Hyper-V, podrá ver estadísticas sobre los recursos que le ayudarán a tomar decisiones sobre cuestiones como: aprovisionar más recursos en el host Hyper-V actual, reconfigurar el software en una máquina virtual o migrar una máquina virtual a otro host Hyper-V. Tenga en cuenta que SNMP (Simple Network Management Protocol) ha quedado obsoleto para la supervisión de hosts Hyper-V.
Si detecta un bajo rendimiento de la máquina virtual, utilice las siguientes preguntas para acotar las posibles causas:
- ¿Hay suficientes recursos asignados a una máquina virtual que se ejecuta en un host Hyper-V?
- ¿Hay suficientes recursos de hardware libres en un host Hyper-V?
- ¿Existen problemas de rendimiento en una o varias máquinas virtuales?
Afortunadamente, Hyper-V dispone de algunas herramientas nativas gratuitas para supervisar el rendimiento y el consumo de recursos desde la GUI de un Hyper-V Manager. Si desea automatizar la migración de máquinas virtuales entre hosts Hyper-V para equilibrar la carga, existen funciones básicas para hacerlo dentro de un clúster. Tenga en cuenta que si utiliza un clúster Hyper-V, necesitará SCVMM (System Center Virtual Machine Manager), que es una solución de pago, para migrar las máquinas virtuales automáticamente con el fin de optimizar el uso de los recursos de los servidores Hyper-V y realizar el equilibrio de carga. La supervisión de la replicación de Hyper-V también puede realizarse en SCVMM.
No utilice el Administrador de tareas de Windows para supervisar los recursos dentro de las máquinas virtuales
Abrir el Administrador de tareas es un método rápido y sencillo para ver el rendimiento y el uso de recursos en ordenadores físicos con Windows. Sin embargo, no utilice el Administrador de tareas de Windows para supervisar el rendimiento dentro de una máquina virtual. El Administrador de tareas de Windows no muestra el uso real de CPU y memoria por parte de una máquina virtual. Esto se debe a que el Administrador de tareas no identifica las máquinas como virtuales y no puede saber cómo se aprovisionan los recursos a una máquina virtual. Utilice el Administrador de tareas para supervisar los procesos, servicios y aplicaciones en ejecución, pero no para supervisar el rendimiento dentro de las máquinas virtuales.
Uso de Performance Monitor en un host Hyper-V
Utilice Performance Monitor (perfmon) en un host Hyper-V y los contadores apropiados para supervisar la utilización de un procesador, memoria, interfaz, disco físico y otro hardware. La utilidad perfmon se utiliza ampliamente para solucionar problemas de rendimiento en sistemas Windows.
Ejecute perfmon en el cuadro de diálogo Ejecutar o busque Monitor de rendimiento en la ventana Gestión de equipos, añada los contadores necesarios y supervise las estadísticas en la interfaz gráfica de usuario (GUI). La información recopilada puede mostrarse en forma de cuadros, gráficos y diagramas.
También puede ser útil abrir Resource Monitor en un host Hyper-V(resmon.exe).
Uso de contadores para Hyper-V
El Monitor de Rendimiento puede proporcionar información incorrecta para las máquinas virtuales que se ejecutan en un host Hyper-V porque los contadores estándar (normales) no están adaptados para la supervisión de máquinas virtuales. Imagine que un ordenador físico que ejecuta Hyper-V tiene un procesador con cuatro núcleos, y dos máquinas virtuales residen en el host Hyper-V. Se aprovisionan cuatro procesadores virtuales para la primera máquina virtual. Una aplicación que carga cuatro procesadores virtuales al 100% se ejecuta en la primera máquina virtual y consume todos los recursos del procesador en el host físico Hyper-V.
Al mismo tiempo, inicia la segunda máquina virtual en este host Hyper-V que tiene la misma configuración de dispositivos virtuales y ejecuta la misma aplicación. Dentro de ambas máquinas virtuales se ve información de que los procesadores de cada VM están cargados al 100%. Sin embargo, las aplicaciones en cada VM están trabajando al 50% de la velocidad comparando con el primer caso cuando solo una VM estaba corriendo (si abres el Administrador de Tareas o el Monitor de Rendimiento dentro de las VMs). La información sobre la memoria se muestra de forma similar si la memoria dinámica está activada.
Utilice los contadores específicos de Hyper-V en Performance Monitor en un host Hyper-V para supervisar los recursos en este host Hyper-V. Los contadores Hyper-V muestran la información más precisa para la supervisión del rendimiento de Hyper-V.
Rendimiento del procesador
Utilice este contador para supervisar el rendimiento de los procesadores físicos en un host Hyper-V: Hyper-V Hypervisor Logical Processor% Total Run Time
El contador para supervisar el rendimiento de los procesadores virtuales de una máquina virtual: Hyper-V Hypervisor Virtual Processor% Guest Run Time
- El rendimiento óptimo es cuando el contador muestra un valor del 75% o menos para una máquina virtual en ejecución.
- Un valor entre 75 y 85% es una advertencia.
- Para un valor superior al 85%, se recomienda investigar la razón de un uso tan elevado de la CPU.
El contador para supervisar la utilización del procesador virtual raíz: \Hyper-V Hypervisor Root Virtual Processor(*)\% Total Run Time
Utilización de la memoria
Hay varios contadores para la supervisión de Hyper-V y para comprobar cuánta RAM se utiliza.
El contador MemoryAvailable Mbytes en un host Hyper-V se utiliza para supervisar el uso de memoria.
- Más del 10% de RAM libre – Saludable
- Menos del 10% de RAM libre – Advertencia
- Menos de 100 MB de RAM libre – Crítico
Utilice el contador MemoryCommitted Bytes para comprobar cuánta memoria utilizan las máquinas virtuales y definir cuánta memoria debe asignarse a cada máquina virtual.
Utilice el \Hyper-V Dynamic Memory Balancer\Average Pressure
para supervisar la memoria dinámica.
- Menos del 80% – Saludable
- Más del 80% – Advertencia
- 100% – Crítico
Latencia del disco
Utilice los \LogicalDisk(*)\Average Disk Sec\Read or Write
para supervisar la latencia del disco, que es importante para el rendimiento general de las máquinas virtuales que se ejecutan en Hyper-V.
- <10 ms (0,010 s) – OK
- >15ms (0,015 s) – Advertencia
- >25 ms (0,025 s) – Crítico
Red
Utilice el \Network Interface (*)\OutputQueue Length
para supervisar el uso de la red, es decir, mide el número de paquetes de red en la cola de paquetes de salida.
- Menos de 1 de media – Saludable
- Superior a 1 de media – Advertencia
- Más de 2 de media – Crítico
Considere también la posibilidad de utilizar estos contadores:
Network Interface (network adapter name)\Bytes/sec
Hyper-V Virtual Network Adapter (virtual machine name )\Bytes/sec
Memoria suficiente para las máquinas virtuales
Cada máquina necesita memoria suficiente para funcionar correctamente, ya que de lo contrario se degrada el rendimiento, se utiliza intensivamente el archivo de intercambio (si está configurado) y se sobrecarga el disco. Además, los archivos de intercambio funcionan más lentamente que la RAM. Si un sistema operativo y una aplicación consumen unos 12 GB de memoria física, instale 16 GB de RAM en un ordenador. Utilice el mismo enfoque para la asignación de memoria VM. Por ejemplo, si el software que se ejecuta en una máquina virtual consume 6 GB de RAM, proporcione 8 GB de RAM a la máquina virtual. Proporcione al menos un 20% de memoria adicional para trabajar correctamente. Se recomienda que proporcione memoria adicional como búfer.
Utilice el Visor de sucesos para supervisar los registros
Utilice el Visor de eventos para supervisar los registros en hosts Hyper-V y máquinas virtuales invitadas que son útiles para la solución de problemas. Ver y analizar los registros, como los eventos del sistema y de las aplicaciones, puede ayudar a determinar los problemas y encontrar una solución correcta para solucionarlos. El Visor de sucesos muestra los registros de errores relacionados con las aplicaciones y funciona a nivel del sistema operativo. Para abrir el Visor de sucesos, primero debe abrir Administración de equipos.
Los registros de Hyper-V se encuentran en:
Visor de sucesos > Registros de aplicaciones y servicios > Microsoft > Windows
Estas son las categorías de registros de Hyper-V en Visor de sucesos:
- Hyper-V-Compute
- Hyper-V-Config
- Controladores Hyper-V-Guest
- Hipervisor Hyper-V
- Hyper-V-StorageVSP
- Hyper-V-VID
- Hyper-V-VMMS
- Hyper-VmSwitch
- Hyper-V-Worker
En Administración de equipos puede administrar los servicios de Windows. Se recomienda supervisar los siguientes servicios Hyper-V:
- Servicio de gestión de imágenes de Hyper-V (vhdsvc)
- Gestión de máquinas virtuales Hyper-V (vmms)
- Servicio de gestión de redes Hyper-V (nvspwmi)
Supervisión de recursos en PowerShell
Puede supervisar los recursos de hosts Hyper-V y máquinas virtuales en PowerShell. Esto es especialmente útil con un sistema operativo Windows sin interfaz gráfica de usuario. Utilice cmdlets especiales para supervisar el rendimiento en PowerShell.
Vea los registros operativos de Hyper-V interactuando con el Registro de sucesos de Windows:
Get-WinEvent -LogName Microsoft-Windows-Hyper-V-Hypervisor-Operational | select -First 1 | Format-List *
Este comando interactúa con objetos contadores de rendimiento en un host Hyper-V o VM huésped y le permite obtener datos directamente de máquinas remotas o locales utilizando las funciones de supervisión de Windows:
Get-Counter
Obtener el conjunto de listas de contadores y ordenar los resultados mostrados:
Get-Counter -ListSet * |
Sort-Object -Property CounterSetName |
Format-Table CounterSetName, CounterSetType -AutoSize
Supervisión del rendimiento de los discos que funcionan en varias máquinas:
$DiskReads = "\LogicalDisk(C:)\Disk Reads/sec"
$DiskReads |
Get-Counter -ComputerName Server01, Server02 -MaxSamples 10
Puede crear scripts personalizados para la supervisión del rendimiento de Hyper-V en PowerShell.
Conclusión
La supervisión de Hyper-V le ayuda a determinar si los problemas de rendimiento de las máquinas virtuales están relacionados con los hosts Hyper-V o con las máquinas virtuales invitadas. La supervisión del rendimiento de Hyper-V permite optimizar el uso de los recursos de hardware en un host Hyper-V. Algunas herramientas, como el Administrador de tareas de Windows, utilizadas para supervisar hosts físicos no son adecuadas para supervisar el rendimiento de las máquinas virtuales que se ejecutan en Hyper-V. La supervisión del rendimiento incluye contadores específicos de Hyper-V adoptados para supervisar los recursos de hosts y máquinas virtuales Hyper-V. Puede utilizar Hyper-V Manager, Event Viewer y Resource Monitor si utiliza la GUI, y comandos especiales en PowerShell si utiliza la interfaz de línea de comandos.
Si las funciones de las herramientas nativas no son suficientes para usted, intente utilizar otro software de supervisión de Hyper-V. La supervisión puede ayudarle a optimizar el rendimiento de Hyper-V, pero no puede protegerle de la pérdida de datos en caso de desastre. Considere un software de backup de Hyper-V fiable para proteger sus datos. Descargue la edición gratuita de NAKIVO para obtener compatibilidad multiplataforma, recuperación de ransomware y mucho más.