La Memoria Dinámica de Hyper-V fue introducida por primera vez en Windows Server 2008 R2 con SP1. Antes de su lanzamiento, una máquina virtual de Hyper-V (VM) se iniciaba y ejecutaba con la cantidad total de RAM asignada, lo que resultaba en un uso excesivo de memoria y afectaba el rendimiento general de la VM. Además, la cantidad de memoria de VM disponible solo podía cambiarse cuando la VM estaba apagada. Por lo tanto, era razonable que la asignación de memoria estática tuviera que ser reemplazada por la asignación de memoria dinámica y se introdujo la función de Memoria Dinámica de Hyper-V.
¿Qué es la Memoria Dinámica de Hyper-V?
La Memoria Dinámica de Hyper-V es una característica que te permite asignar dinámicamente recursos de memoria a las VM que se ejecutan en entornos de Hyper-V. Esta funcionalidad recupera una parte de la memoria no utilizada de las VM que no la necesitan en ese momento y luego reasigna la memoria recuperada a otras VM que realmente la requieren.
Con la Memoria Dinámica de Hyper-V, puedes especificar la cantidad de memoria de inicio que la VM puede utilizar, establecer el rango de memoria física disponible para una VM específica y determinar la prioridad de la VM para la asignación de memoria. La memoria física puede asignarse de manera eficiente y dinámica a la VM según sea necesario y con un impacto mínimo en el rendimiento. Como resultado, tienes un control más detallado sobre el uso de la memoria y una optimización de recursos mejorada.
Ventajas y Desventajas de la Memoria Dinámica de Hyper-V
La Memoria Dinámica de Hyper-V es una característica útil que ofrece muchas ventajas, como:
- Reducción del consumo de memoria, ya que la VM utiliza solo la cantidad de memoria que realmente necesita dentro de los límites establecidos por un administrador
- Distribución eficiente de la memoria, ya que puedes asignar dinámicamente más o menos memoria a la VM en ejecución
- Números de consolidación más altos debido al uso más eficiente de los recursos de memoria
- Mejora de la fiabilidad para operaciones de reinicio con la ayuda de Hyper-V Smart Paging
- Efficiencia de costos ya que los recursos de la VM no se desperdician
Sin embargo, la Memoria Dinámica de Hyper-V también tiene una serie de desventajas, que pueden afectar negativamente el rendimiento de la memoria de la VM. Incluyen lo siguiente:
- Riesgo de sobreaprovisionamiento de la memoria física de la computadora en caso de que no lleves un seguimiento de la asignación de memoria dentro de tu entorno virtual
- Algunas configuraciones de memoria no se pueden cambiar cuando la VM está en ejecución. Por lo tanto, no puedes disminuir o aumentar la cantidad máxima y mínima de memoria, así como modificar la cantidad de memoria de inicio de la VM, cuando la VM aún está en ejecución o en pausa.
- Cuando la Memoria Dinámica de Hyper-V está habilitada, pueden ocurrir problemas con aplicaciones de bases de datos. Se recomienda que utilices aplicaciones compatibles con la Memoria Dinámica de Hyper-V para evitar cualquier problema de rendimiento.
Configuraciones de Memoria Dinámica de Hyper-V La Memoria Dinámica de Hyper-V incluye cinco configuraciones de VM que pueden ser configuradas en Hyper-V Manager . Para ello, abre Hyper-V Manager, selecciona la VM requerida, haz clic en Configuración y elige Memoria. Verás lo siguiente:
Hyper-V Dynamic Memory incluye cinco configuraciones de VM que pueden ser configuradas en Hyper-V Manager. Para ello, abra Hyper-V Manager, seleccione la VM requerida, haga clic en Configuración y elija Memoria. Verá lo siguiente:
Sin embargo, antes de comenzar a configurar los ajustes de Hyper-V Dynamic Memory, se recomienda primero familiarizarse con cómo funcionan estos componentes y cuáles son los beneficios que pueden proporcionar. Echemos un vistazo a cada uno de ellos.
RAM de inicio
Este valor de Hyper-V Dynamic Memory define la cantidad mínima de memoria física que una VM seleccionada puede utilizar durante su inicio. La RAM de inicio debe ser lo suficientemente alta como para permitir que la VM se inicie rápidamente y sin interrupciones. Tenga en cuenta que la RAM de inicio no se puede cambiar cuando la VM está en ejecución.
RAM mínima
Este valor de Hyper-V Dynamic Memory determina la cantidad mínima de memoria física que se debe asignar a la VM después de que se haya iniciado. Si otras VM requieren más RAM, el host de Hyper-V puede comenzar a reclamar la memoria inutilizada de esta VM hasta que se alcance el valor de RAM mínima. Tenga en cuenta que el valor se puede establecer tan bajo como 32 MB, pero no puede ser más alto que la RAM de inicio. Además, no puede aumentar la memoria mínima mientras la VM está en ejecución o pausada, pero puede disminuirla (por ejemplo, puede cambiar el valor de RAM mínima de 512 MB a 64 MB).
RAM máxima
Este valor de Memoria Dinámica de Hyper-V especifica la cantidad máxima de memoria física que la VM puede usar. Tenga en cuenta que este valor no puede ser inferior a la RAM asignada para el inicio, pero puede llegar hasta 1 TB (1,048,576 MB). Además, no puede disminuir la cantidad máxima de memoria mientras la VM está en ejecución o pausada, pero puede aumentarla (por ejemplo, puede cambiar el valor de RAM máximo de 512 MB a 2048 MB).
Buffer de Memoria
Este valor de Memoria Dinámica de Hyper-V determina el porcentaje de memoria física que debe asignarse a la VM como buffer. El buffer de memoria es una porción de memoria física que se reserva para la VM en función de sus necesidades de memoria. Para calcular el buffer de memoria, debe usar la siguiente fórmula:
Cantidad de buffer de memoria = cuánta memoria necesita la máquina virtual / (valor del buffer de memoria / 100).
Por defecto, el valor del buffer de memoria es del 20%, pero puede configurarse para ser tan bajo como el 5% y tan alto como el 2000%. Puede cambiar el valor del buffer de memoria en cualquier momento, incluso mientras la VM está en ejecución.
Peso de Memoria
Este valor de Memoria Dinámica de Hyper-V especifica la prioridad de la VM seleccionada en comparación con otras VMs en este host. Con base en este orden de prioridades, puede determinar cómo distribuir la memoria disponible entre varias VMs que se ejecutan en el mismo host de Hyper-V.
Tenga en cuenta que si la prioridad de la VM se establece demasiado baja y la cantidad de memoria física disponible disminuye, existe el riesgo de que esta VM no pueda iniciarse. Puede cambiar el valor de peso de memoria en cualquier momento, incluso mientras la VM está en ejecución.
Prácticas recomendadas para la memoria dinámica de Hyper-V
Para lograr un alto rendimiento y mejorar la utilización de la memoria en entornos de Hyper-V, se recomienda que siga las prácticas recomendadas para la memoria dinámica de Hyper-V.
Las prácticas recomendadas para la memoria dinámica de Hyper-V enumeradas a continuación pueden mejorar considerablemente el rendimiento de la memoria de VM y su experiencia general en entornos de Hyper-V.
Habilitar los Servicios de Integración de Hyper-V
Servicios de Integración de Hyper-V es un conjunto de utilidades que permiten mejorar el rendimiento de VM en entornos de Hyper-V. Cada Servicio de Integración de Hyper-V debe estar habilitado tanto en el host como en el invitado para que puedan funcionar correctamente y entregar servicios según lo requerido. Por defecto, todos los Servicios de Integración de Hyper-V, excepto la Interfaz de Servicio de Invitado de Hyper-V, están habilitados en los sistemas operativos invitados.
Para que la Memoria Dinámica de Hyper-V funcione de manera efectiva, asegúrese de que los Servicios de Integración de Hyper-V estén actualizados a la versión más reciente y que el sistema operativo invitado admita la función de Memoria Dinámica. De lo contrario, Hyper-V puede experimentar problemas porque la memoria no se puede proporcionar de manera dinámica y las demandas de memoria no se pueden abordar adecuadamente.
Desde el lanzamiento de Windows Server 2016, los Servicios de Integración de Hyper-V y las actualizaciones correspondientes se pueden instalar a través de Windows Update. Por lo tanto, debe configurar sus VM para recibir actualizaciones con el fin de asegurarse de que su infraestructura de Hyper-V use la versión más reciente de los Servicios de Integración de Hyper-V.
Monitorear el uso de la memoria y la asignación de recursos
Actualmente, hay muchos herramientas de gestión de Hyper-V en el mercado que permiten monitorear el uso de memoria y la asignación de recursos en entornos de Hyper-V. Con la memoria dinámica de Hyper-V habilitada, es posible sobreasignar RAM y quedarse sin memoria. Por lo tanto, se recomienda realizar un seguimiento de la RAM que asigna a varias máquinas virtuales (VM) en su host de Hyper-V.
Para este propósito, puede utilizar herramientas de monitoreo nativas o comprar software de terceros. Por ejemplo, puede verificar el estado de la memoria de la VM a través del host en Hyper-V Manager o la VM invitada en Task Manager.
De esta manera, podemos monitorear cómo se utilizan los recursos de memoria dentro del sistema. Sin embargo, tenga en cuenta que Hyper-V Manager y Task Manager muestran diferentes salidas para el uso de memoria. La herramienta de monitoreo de invitados no muestra los resultados reales porque la VM invitada cree que la cantidad total de memoria asignada a la VM está realmente en uso por su controlador. De hecho, el host generalmente tiene una mayor conciencia de la forma en que se distribuye la memoria a las VMs dentro de la infraestructura. La memoria no utilizada se reasigna a otras VMs y esto se refleja en Hyper-V Manager.
Tome en cuenta la RAM de inicio
Configurar la RAM de inicio más alta o más baja puede afectar significativamente el rendimiento de Hyper-V. Debe aumentar la RAM de inicio para garantizar que el sistema operativo y las aplicaciones que se ejecutan en él inicien según lo requerido. Esto se debe a que Windows requiere más RAM durante el inicio que cuando el sistema operativo está inactivo.
Además, durante las operaciones de instalación o actualización, la cantidad de RAM disponible para el sistema operativo invitado es igual al valor de RAM de inicio. Por lo tanto, antes de realizar instalaciones o actualizaciones, es fundamental asegurarse de que el valor de RAM de inicio cumpla con los requisitos mínimos de memoria del sistema operativo seleccionado.
Tenga en cuenta que si el valor de RAM de inicio se establece demasiado alto, esto también podría afectar negativamente el rendimiento de la memoria dinámica de Hyper-V y el uso general de la memoria. Por lo tanto, se recomienda asignar 512 MB como valor de RAM de inicio para el sistema operativo invitado para que pueda iniciarse sin interrupciones.
No olvide las fugas de memoria
Al establecer límites de memoria dinámica de Hyper-V para una VM en particular, es crucial tener en cuenta que su infraestructura puede verse afectada por fugas de memoria. Las fugas de memoria implican la pérdida gradual de memoria disponible como resultado de una asignación de memoria incorrecta. Suele ocurrir cuando una aplicación no libera la memoria que se proporcionó solo para uso temporal. Si el problema no se detecta antes de que se cause algún daño serio, la memoria del sistema operativo puede agotarse y la aplicación finalmente fallará.
Para mitigar los efectos negativos de este problema, se recomienda instalar una herramienta de monitoreo (por ejemplo, RAMMap) y escanear toda la infraestructura para detectar cualquier inconsistencia y casos inusuales de uso de memoria por parte de las aplicaciones en ejecución. Además, estas herramientas pueden ayudarlo a determinar los valores mínimo y máximo de RAM que serían más apropiados para esta VM en particular.
Configure los valores máximo y mínimo de RAM
Para garantizar que la Memoria Dinámica de Hyper-V funcione como se requiere, se recomienda determinar límites que el sistema no pueda superar. De esta manera, el uso de memoria en su infraestructura se controla de manera efectiva, lo que significa que la VM no consumirá demasiada ni demasiado poca memoria.
Establezca cuidadosamente el valor del Buffer de Memoria
Una práctica recomendada de Memoria Dinámica de Hyper-V es asignar el valor de Buffer de Memoria apropiado, que especifica cuánta memoria extra debe estar disponible para una VM seleccionada. Si el valor de Buffer de Memoria se establece alto, esta cantidad extra de memoria generalmente se utiliza para el almacenamiento en caché de archivos en VM de gran escala y para agilizar las operaciones de E/S dentro del sistema.
Al mismo tiempo, el valor de Buffer de Memoria debe establecerse bajo si hay una aplicación en ejecución que requiere una gran cantidad de memoria física. Con el valor de Buffer de Memoria reducido, puede estar seguro de que la memoria disponible no se consuma completamente por una sola VM.
Además, si se ha asignado una gran cantidad de memoria a la VM, es poco probable que alguna vez necesite memoria extra. Por lo tanto, tiene más sentido compartir los recursos de memoria inutilizados con otras VM que los necesiten más.
Actualice los hosts de Hyper-V cuando sea necesario
El volumen de trabajo de producción aumenta considerablemente durante las horas laborales, lo que eventualmente afecta el rendimiento de Hyper-V, así como la asignación de recursos y la utilización de memoria. Como una de las Mejores Prácticas de Memoria Dinámica de Hyper-V, se recomienda monitorear los cambios en el uso de la memoria a lo largo del día laboral. Al detectar cuándo suelen ocurrir los ciclos de uso alto y bajo de memoria, puedes aprender cómo aprovechar Hyper-V Dynamic Memory a tu favor.
Habilita Hyper-V Dynamic Memory solo cuando sea necesario
Aunque Hyper-V Dynamic Memory es una característica extremadamente útil que mejora el uso de la memoria física, hay casos en los que la asignación estática de memoria es la opción preferible. Por lo tanto, debes considerar si Hyper-V Dynamic Memory debe estar habilitado en una VM específica o no. Por ejemplo, algunas aplicaciones funcionan mejor si tienen una cantidad predeterminada de RAM que pueden usar sin interrupción. La cantidad de RAM preasignada permanece igual a pesar de las fluctuaciones en las demandas de memoria.
Por lo tanto, se recomienda que planifiques de antemano cómo se distribuirá la memoria física en tu entorno de Hyper-V para evitar quedarte sin RAM y evitar fallas en las aplicaciones en el futuro.Utiliza Hyper-V Dynamic Memory solo con aplicaciones compatibles
Aunque la memoria dinámica de Hyper-V es una característica extremadamente útil que mejora el uso de la memoria física, hay casos en los que la asignación de memoria estática es la opción preferida. Por lo tanto, debe considerar si la memoria dinámica de Hyper-V debe activarse en una VM en particular o no. Por ejemplo, algunas aplicaciones funcionan mejor si tienen una cantidad predeterminada de RAM que pueden usar sin interrupciones. La cantidad de RAM preasignada permanece igual a pesar de las fluctuaciones en la demanda de memoria.
Por lo tanto, se recomienda planificar con anticipación cómo se distribuirá la memoria física en su entorno de Hyper-V para evitar quedarse sin RAM y evitar fallas de aplicaciones en el futuro.
Utilice la memoria dinámica de Hyper-V solo con aplicaciones compatibles
Antes de instalar cualquier aplicación en su host o invitado de Hyper-V, asegúrese de que esta aplicación pueda usarse junto con la memoria dinámica de Hyper-V. Para verificar dicha información, se recomienda que primero lea la documentación de soporte del producto para conocer sus funciones y requisitos del sistema. Tales medidas preventivas pueden ayudarlo a evitar cualquier problema con el uso y la asignación de memoria que pueda surgir.
Conclusión
Después de aprender sobre las mejores prácticas de Hyper-V Dynamic Memory, puedes empezar a utilizar la memoria física de manera más eficiente y segura. Sin embargo, tu infraestructura virtual sigue expuesta a diversos peligros y amenazas que pueden afectar su rendimiento. Para garantizar la seguridad de tu entorno virtual, utilizar una solución de protección de datos es la opción más viable. NAKIVO Backup & Replication es una solución confiable, efectiva y asequible que ofrece copia de seguridad de VM, replicación, copia de seguridad en la nube, copia de seguridad adicional, recuperación de sitios y un amplio conjunto de funciones.
Source:
https://www.nakivo.com/blog/full-overview-hyper-v-dynamic-memory-best-practices/