Control dinámico de memoria (DMC)

XenServer DMC (a veces conocido como “optimización de memoria dinámica”, “sobreasignación de memoria” o “aumento de memoria”) funciona ajustando automáticamente la memoria de las máquinas virtuales en ejecución, manteniendo la cantidad de memoria asignada a cada máquina virtual entre los valores de memoria mínimo y máximo especificados, lo que garantiza y permite una mayor densidad de máquinas virtuales por servidor.

Sin DMC, cuando un servidor está lleno, al iniciar más máquinas virtuales se producirá un error con errores de “memoria insuficiente”. Para reducir la asignación de memoria de VM existente y dejar espacio para más máquinas virtuales, debe editar la asignación de memoria de cada máquina virtual y, a continuación, reiniciar la máquina virtual. Con DMC habilitado, incluso cuando el servidor esté lleno, XenServer intentará recuperar memoria reduciendo automáticamente la asignación de memoria actual de las máquinas virtuales en ejecución dentro de sus rangos de memoria definidos.

Rango de memoria dinámica y estática

Para cada máquina virtual, puede establecer un rango de memoria dinámica que es el rango dentro del cual se puede agregar/quitar memoria de la máquina virtual sin necesidad de reiniciar. Puede ajustar el rango dinámico mientras se ejecuta la máquina virtual, sin tener que reiniciarla. XenServer siempre garantiza mantener la cantidad de memoria asignada a la máquina virtual dentro del rango dinámico. Por ejemplo, si la memoria mínima dinámica se estableció en 512 MB y la memoria máxima dinámica se estableció en 1024 MB, esto daría a la máquina virtual un rango de memoria dinámica (DMR) de 512 a 1024 MB, dentro del cual funcionaría. Con DMC, XenServer garantiza en todo momento asignar cada memoria de VM dentro de su DMR especificado.

Cuando la memoria del servidor host es abundante, todas las máquinas virtuales en ejecución recibirán su nivel de memoria máxima dinámica; cuando la memoria del host sea escasa, todas las máquinas virtuales en ejecución recibirán su nivel de memoria mínima dinámica. Si se requiere que las máquinas virtuales nuevas se inicien en servidores “completos”, las máquinas virtuales en ejecución tienen la memoria “apretada” para iniciar las nuevas. La memoria adicional necesaria se obtiene apretando las máquinas virtuales en ejecución existentes proporcionalmente dentro de sus rangos dinámicos predefinidos.

Muchos sistemas operativos compatibles con XenServer no admiten totalmente la adición o eliminación de memoria de forma dinámica. Como resultado, XenServer debe declarar la cantidad máxima de memoria que se le pedirá que consuma a una máquina virtual en el momento en que se inicie la máquina virtual para permitir que el sistema operativo invitado ajuste el tamaño de sus tablas de páginas y otras estructuras de administración de memoria en consecuencia. Esto introduce el concepto de un rango de memoria estática dentro de XenServer. El rango de memoria estática no se puede ajustar mientras la máquina virtual está en ejecución y el rango dinámico está restringido, como para estar siempre contenido dentro de este rango estático hasta que se reinicie la máquina virtual. Tenga en cuenta que el mínimo estático (el límite inferior del rango estático) está ahí para proteger al administrador y se establece en la menor cantidad de memoria que el sistema operativo puede ejecutar en XenServer.

Importante: Citrix recomienda no cambiar el nivel mínimo estático, ya que se establece en el nivel admitido por sistema operativo. Para obtener más información, consulteConfigurar la memoria de VM. Al establecer un nivel máximo estático superior a un máximo dinámico, si necesita asignar más memoria a una máquina virtual en el futuro, puede hacerlo sin necesidad de reiniciar.

Restricciones de memoria DMC

XenCenter aplica las siguientes restricciones al establecer valores DMC:

  • El valor mínimo de memoria dinámica no puede ser inferior al valor de memoria mínima estática.
  • El valor mínimo de memoria dinámica no puede ser mayor que el valor máximo de memoria dinámica.
  • El valor máximo de memoria dinámica no puede ser mayor que el valor máximo de memoria estática.

Puede cambiar las propiedades de memoria de una máquina virtual por cualquier valor que satisfaga estas restricciones, sujeto a comprobaciones de validación. Además de estas restricciones, Citrix sólo admite ciertas configuraciones de memoria de VM para un sistema operativo específico. Para obtener más información, consulteConfigurar la memoria de VM.