Este artículo ha sido traducido automáticamente. (Aviso legal)
Memoria de VM
Importante:
La actualización acumulativa 1 de Citrix Hypervisor 8.2 llega al final de su vida útil el 25 de junio de 2025. Planifique su actualización a XenServer 8 ahora para garantizar una transición fluida y un soporte continuo. Para obtener más información, consulte Actualizar.
Si utiliza los archivos de licencia de Citrix Virtual Apps and Desktops para licenciar los hosts de Citrix Hypervisor 8.2 Cumulative Update 1, estos archivos de licencia no son compatibles con XenServer 8. Antes de actualizar, debe adquirir los archivos de licencia de socket de XenServer Premium Edition para utilizarlos con XenServer 8. Estos archivos de licencia de socket están disponibles como un derecho de las suscripciones de Citrix para Private Cloud, Citrix Universal Hybrid Multi-Cloud, Citrix Universal MSP y Citrix Platform License para ejecutar sus cargas de trabajo de Citrix. Los clientes de Citrix que aún no hayan realizado la transición a estas nuevas suscripciones pueden solicitar participar en una promoción gratuita de 10.000 licencias de socket de XenServer Premium Edition. Para obtener más información, consulte XenServer.
Si no obtiene una licencia compatible para XenServer 8 antes de actualizar, cuando actualice sus hosts, estos volverán a la edición de prueba de 90 días. La Edición de Prueba ofrece las mismas características que la Edición Premium con algunas limitaciones. Para obtener más información, consulte Descripción general de las licencias de XenServer 8.
Al crear una máquina virtual, se asigna una cantidad fija de memoria a la máquina virtual. Puede utilizar el Control dinámico de memoria (DMC) para mejorar la utilización de la memoria física en su entorno de Citrix Hypervisor. DMC es una característica de administración de memoria que permite la reasignación dinámica de memoria entre máquinas virtuales.
XenCenter proporciona una visualización gráfica del uso de memoria en su Memoria pestaña. Para obtener más información, consulte la Documentación de XenCenter.
El control dinámico de memoria (DMC) proporciona las siguientes ventajas:
-
Puede agregar o eliminar memoria sin reiniciar las máquinas virtuales, lo que proporciona una experiencia fluida al usuario.
-
Cuando los servidores están llenos, DMC permite iniciar más máquinas virtuales en estos servidores, lo que reduce proporcionalmente la cantidad de memoria asignada a las máquinas virtuales en ejecución.
¿Qué es el control dinámico de memoria (DMC)?
Citrix Hypervisor DMC 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, garantizando el rendimiento y permitiendo una mayor densidad de máquinas virtuales por servidor.
Sin DMC, cuando un servidor está lleno, se produce un error al iniciar máquinas virtuales adicionales con errores de “memoria insuficiente”. Para reducir la asignación de memoria de la máquina virtual existente y dejar espacio para más máquinas virtuales, edite la asignación de memoria de cada máquina virtual y, a continuación, reinicie la máquina virtual. Cuando se utiliza DMC, Citrix Hypervisor intenta 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. Citrix Hypervisor intenta recuperar memoria incluso cuando el servidor está lleno.
Notes:
El control dinámico de memoria no es compatible con máquinas virtuales que tengan una GPU virtual.
El concepto de rango dinámico
Para cada máquina virtual, el administrador puede establecer un intervalo de memoria dinámica. El intervalo de memoria dinámica es el intervalo dentro del cual se puede agregar o quitar memoria de la máquina virtual sin necesidad de reiniciar. Cuando se está ejecutando una máquina virtual, el administrador puede ajustar el rango dinámico. Citrix Hypervisor siempre garantiza mantener la cantidad de memoria asignada a la máquina virtual dentro del rango dinámico. Por lo tanto, ajustarlo mientras se ejecuta la máquina virtual puede hacer que Citrix Hypervisor ajuste la cantidad de memoria asignada a la máquina virtual. El caso más extremo es cuando el administrador establece el mínimo/máximo dinámico en el mismo valor, lo que obliga a Citrix Hypervisor a asegurarse de que esta cantidad de memoria se asigne a la máquina virtual. Si se requiere que las nuevas máquinas virtuales se inicien en servidores “completos”, las máquinas virtuales en ejecución tienen su memoria “exprimida” para iniciar otras nuevas. La memoria adicional necesaria se obtiene comprimiendo proporcionalmente las máquinas virtuales en ejecución existentes dentro de sus rangos dinámicos predefinidos
DMC le permite configurar niveles de memoria mínimos y máximos dinámicos, creando un rango de memoria dinámica (DMR) en el que opera la máquina virtual.
-
Memoria mínima dinámica: un límite de memoria inferior que se asigna a la máquina virtual.
-
Límite superior dinámico: un límite de memoria superior que se asigna a la máquina virtual.
Por ejemplo, si la memoria mínima dinámica se estableció en 512 MB y la memoria máxima dinámica se estableció en 1.024 MB, le da a la máquina virtual un rango de memoria dinámica (DMR) de 512 a 1024 MB, dentro del cual opera. Hipervisor de Citrix Garantiza siempre para asignar cada memoria de VM dentro de su DMR especificado cuando se usa DMC.
El concepto de rango estático
Muchos sistemas operativos compatibles con Citrix Hypervisor no “entienden” completamente la noción de agregar o eliminar memoria dinámicamente. Como resultado, Citrix Hypervisor debe declarar la cantidad máxima de memoria que se le pide a una máquina virtual que consuma en el momento en que se reinicia. La declaración de la cantidad máxima de memoria permite al sistema operativo invitado ajustar 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 Citrix Hypervisor. El intervalo de memoria estática no se puede ajustar cuando la máquina virtual se está ejecutando. Para un arranque en particular, el rango dinámico está restringido de tal manera que siempre esté contenido dentro de este rango estático. El mínimo estático (el límite inferior del rango estático) protege al administrador y se establece en la cantidad más baja de memoria que el sistema operativo puede ejecutar con Citrix Hypervisor.
Nota: No
Se recomienda no cambiar el nivel mínimo estático, ya que el nivel mínimo estático se establece en el nivel admitido por sistema operativo. Consulte la tabla de restricciones de memoria para obtener más información.
Establecer un nivel máximo estático superior a un máximo dinámico le permite asignar más memoria a una máquina virtual en el futuro sin tener que reiniciar la máquina virtual.
Comportamiento de DMC
Comprimido automático de VM
-
Si DMC no está habilitado, cuando los hosts están llenos, se produce un error en los inicios de la nueva máquina virtual con errores de “memoria insuficiente”.
-
Cuando DMC está habilitado, incluso cuando los hosts están llenos, Citrix Hypervisor intenta recuperar memoria reduciendo la asignación de memoria de las máquinas virtuales en ejecución dentro de sus rangos dinámicos definidos. De este modo, las máquinas virtuales en ejecución se comprimen proporcionalmente a la misma distancia entre el mínimo dinámico y el máximo dinámico para todas las máquinas virtuales del host
Cuando DMC está habilitado
-
Cuando la memoria del host es abundante: todas las máquinas virtuales en ejecución reciben su nivel de memoria máxima dinámica.
-
Cuando la memoria del host es escasa: todas las máquinas virtuales en ejecución reciben su nivel de memoria mínima dinámica.
Al configurar DMC, recuerde que la asignación de solo una pequeña cantidad de memoria a una máquina virtual puede afectarla negativamente. Por ejemplo, si se asigna muy poca memoria:
-
El uso del control dinámico de memoria para reducir la cantidad de memoria física disponible para una máquina virtual puede hacer que se reinicie lentamente. Del mismo modo, si asigna muy poca memoria a una máquina virtual, puede iniciarse lentamente.
-
Establecer el mínimo de memoria dinámica para una máquina virtual demasiado bajo puede dar lugar a problemas de rendimiento deficiente o estabilidad cuando la máquina virtual se está iniciando.
¿Cómo funciona DMC?
Con DMC, es posible operar una máquina virtual invitada en uno de estos dos modos:
-
Modo de destino: El administrador especifica un destino de memoria para el invitado. Citrix Hypervisor ajusta la asignación de memoria del invitado para cumplir con el objetivo. Especificar un destino es útil en entornos de servidor virtual y en situaciones en las que se sabe exactamente cuánta memoria se desea que use un invitado. Citrix Hypervisor ajusta la asignación de memoria del invitado para cumplir con el destino que especifique.
-
Modo de rango dinámico: El administrador especifica un rango de memoria dinámica para el invitado. Citrix Hypervisor selecciona un destino del rango y ajusta la asignación de memoria del invitado para cumplir con el destino. Especificar un rango dinámico es útil en cualquier situación en la que desee que Citrix Hypervisor vuelva a particionar la memoria del host dinámicamente en respuesta a los cambios en el número de invitados o a los cambios en la presión de la memoria del host. Citrix Hypervisor selecciona un destino dentro del rango y ajusta la asignación de memoria del invitado para cumplir con el destino.
Nota: No
Es posible cambiar entre el modo objetivo y el modo de rango dinámico en cualquier momento para cualquier huésped en ejecución. Especifique un nuevo destino o un nuevo rango dinámico y Citrix Hypervisor se encargará del resto.
Restricciones de memoria
Citrix Hypervisor permite a los administradores utilizar todas las operaciones de control de memoria con cualquier sistema operativo invitado. Sin embargo, Citrix Hypervisor aplica la siguiente restricción de ordenación de propiedades de memoria para todos los invitados:
0 < memory-static-min <= memory-dynamic-min <= memory-dynamic-max <= memory-static-max
Citrix Hypervisor permite a los administradores cambiar las propiedades de la memoria de invitado a cualquier valor que satisfaga esta restricción, sujeto a comprobaciones de validación. Sin embargo, además de la restricción anterior, solo se admiten ciertas configuraciones de memoria de invitado para cada sistema operativo compatible. El rango de configuraciones admitidas depende del sistema operativo invitado que se utilice. Citrix Hypervisor no impide que los administradores configuren invitados para superar el límite admitido. Sin embargo, se recomienda a los clientes que mantengan las propiedades de memoria dentro de los límites admitidos para evitar problemas de rendimiento o estabilidad. Para obtener instrucciones detalladas sobre los límites mínimos y máximos de memoria para cada sistema operativo compatible, consulte Compatibilidad con sistemas operativos invitados.
Advertencia:
Al configurar la memoria de invitado, se recomienda NO exceder la cantidad máxima de memoria física direccionable por el sistema operativo. Establecer un límite máximo de memoria que sea mayor que el límite admitido por el sistema operativo puede provocar problemas de estabilidad dentro de su invitado.
El mínimo dinámico debe ser al menos el 75 % del máximo estático para todos los sistemas operativos compatibles. Un límite inferior puede provocar problemas de estabilidad. Se recomienda a los administradores que calibren cuidadosamente los tamaños de sus máquinas virtuales y se aseguren de que su conjunto de aplicaciones de trabajo funcione de manera confiable con un mínimo dinámico.
Comandos xe CLI
Mostrar las propiedades de memoria estática de una máquina virtual
-
Busque el UUID de la máquina virtual requerida:
xe vm-list
-
Anote el uuid y, a continuación, ejecute el comando
param-name=memoria-estática
xe vm-param-get uuid=uuid param-name=memory-static-{min,max}
Por ejemplo, a continuación se muestran las propiedades de memoria máxima estática para la máquina virtual con el UUID que comienza por ec77:
xe vm-param-get uuid= \ ec77a893-bff2-aa5c-7ef2-9c3acf0f83c0 \ param-name=memory-static-max; 268435456
En el ejemplo se muestra que la memoria estática máxima para esta máquina virtual es de 268.435.456 bytes (256 MB).
Mostrar las propiedades de memoria dinámica de una máquina virtual
Para mostrar las propiedades de la memoria dinámica, siga el procedimiento anterior, pero utilice el comando nombre-param=dinámica-de-memoria
:
-
Busque el UUID de la máquina virtual requerida:
xe vm-list
-
Anote el uuid y, a continuación, ejecute el comando
nombre-param=dinámica-de-memoria
:xe vm-param-get uuid=uuid param-name=memory-dynamic-{min,max}
Por ejemplo, a continuación se muestran las propiedades de memoria máxima dinámica para la máquina virtual con UUID a partir de ec77
xe vm-param-get uuid= \ ec77a893-bff2-aa5c-7ef2-9c3acf0f83c0 \ param-name=memory-dynamic-max; 134217728
En el ejemplo se muestra que la memoria dinámica máxima para esta máquina virtual es de 134.217.728 bytes (128 MB).
Actualizar las propiedades de la memoria
Advertencia:
Utilice el orden correcto al establecer los parámetros estáticos/dinámicos mínimos/máximos. Además, no debe invalidar la siguiente restricción:
0 < memory-static-min <= memory-dynamic-min <= memory-dynamic-max <= memory-static-max
Actualice el intervalo de memoria estática de una máquina virtual:
xe vm-memory-static-range-set uuid=uuid min=value max=value
Actualice el rango de memoria dinámica de una máquina virtual:
xe vm-memory-dynamic-range-set \
uuid=uuid min=value \
max=value
Especificar un destino es útil en entornos de servidor virtual y en cualquier situación en la que se sepa exactamente cuánta memoria se desea que use un invitado. Citrix Hypervisor ajusta la asignación de memoria del invitado para cumplir con el destino que especifique. Por ejemplo:
xe vm-memory-target-set target=value vm=vm-name
Actualizar todos los límites de memoria (estáticos y dinámicos) de una máquina virtual:
xe vm-memory-limits-set \
uuid=uuid \
static-min=value \
dynamic-min=value \
dynamic-max=value static-max=value
Notes:
- Para asignar una cantidad específica de memoria a una máquina virtual que no cambia, establezca el Máximo dinámico y el Mínimo dinámico en el mismo valor.
- No se puede aumentar la memoria dinámica de una máquina virtual más allá del máximo estático.
- Para modificar el máximo estático de una máquina virtual, debe apagarla.
Actualización de propiedades de memoria individuales
Advertencia:
No cambie el nivel mínimo estático, ya que se establece en el nivel admitido por sistema operativo. Para obtener más información, consulte Restricciones de memoria.
Actualice las propiedades de memoria dinámica de una máquina virtual.
-
Busque el UUID de la máquina virtual requerida:
xe vm-list
-
Anote el uuid y, a continuación, use el comando
dinámica-de-memoria-{min,max}=valor
xe vm-param-set uuid=uuid memory-dynamic-{min,max}=value
En el ejemplo siguiente se cambia el máximo dinámico a 128 MB:
xe vm-param-set uuid=ec77a893-bff2-aa5c-7ef2-9c3acf0f83c0 memory-dynamic-max=128MiB