virtualization – ¿Cómo se asigna la memoria en el servidor ESXi?

Pregunta:

Tenemos un servidor ESXi 4.1 con 48 GB de RAM.

Para cada máquina virtual, estamos asignando 4 GB de memoria. Dado que el servidor tendrá 13 máquinas virtuales, mi gerente cree que esto está mal.

Les voy a explicar que ESXi administrará la memoria por sí mismo, pero me preguntaron cuánta memoria asigné para el servidor ESXi.

No asigné ninguno (ni siquiera he oído hablar de una opción para asignar memoria para el servidor ESXi en sí).

¿Cómo se asigna la memoria para el servidor ESXi? ¿Cómo sobreasigna / distribuye RAM entre máquinas virtuales sin problemas?

Respuesta:

Hay mucho más que ESXi en cuestión aquí,

  1. Cada máquina virtual consumirá hasta 4 GB + "gastos generales" que se documentan aquí . Esto depende de las CPU virtuales y la memoria asignada. Como mínimo, cada máquina virtual utilizará 4261,98 MB (4096 + 165,98)
  2. Sobrecarga de memoria propia de ESXi, esto depende del hardware. La opción más sencilla es observar el uso de la memoria del sistema en el cliente vSphere. Desde la memoria, recuerdo que está alrededor de la marca de 1.3GB, pero como se dijo, depende mucho del hardware.

Explicación de la asignación de memoria y el compromiso excesivo

Tenga en cuenta que el hipervisor no asignará toda esa memoria por adelantado , depende del uso de la máquina virtual. Sin embargo, vale la pena comprender qué sucederá si las máquinas virtuales intentan asignar y utilizar toda la memoria asignada.

El máximo que su VM + host intentará usar será aproximadamente, el kilometraje de 55 GB puede variar

  • 1.3 GB usados ​​por ESXi
  • 4261,98 MB * 13 utilizados por las máquinas virtuales

Hay otro aspecto a tener en cuenta y son los umbrales de memoria. De forma predeterminada, VMware tendrá como objetivo tener un 6% libre (umbral de memoria alto). Por lo tanto, los 55 GB de memoria utilizada deben reducirse a ~ 45 GB

Eso significa que el host tendrá aproximadamente 10,500 MB de memoria que necesita recuperar de algún lugar si las VM usan la memoria que se les ha asignado. Hay tres cosas que ESX hace para encontrar esos 10.5 GB adicionales.

Métodos de recuperación de memoria

  1. Uso compartido transparente de páginas
  2. Globo de memoria
  3. Intercambio de hipervisor

Debe leer y comprender Comprensión de la administración de recursos de memoria en VMware® ESX ™ Server .

Dependiendo de una gran cantidad de factores, una combinación de los tres sucederá / podría suceder en un host demasiado comprometido. Necesita probar su entorno y monitorear estas métricas para comprender el impacto de comprometerse en exceso.

Algunas reglas generales que vale la pena conocer (todas en el documento anterior y otras fuentes).

  1. El uso compartido transparente de páginas no ocurre para las VM que usan páginas de 2/4 MB. Como ha asignado 4096 MB a sus máquinas virtuales de Windows, usarán las páginas de 2/4 MB de forma predeterminada (dependiente de PAE). Solo bajo presión de la memoria VMware dividirá las páginas grandes en páginas de 4 KB que se pueden compartir. TPS se basa en el uso de ciclos de CPU inactivos y en el escaneo de páginas de memoria a una cierta velocidad. Devuelve la memoria con relativa lentitud (piense en una hora en lugar de minutos). Entonces, una tormenta de arranque significará que TPS no lo ayudará. De los tres, este tiene el impacto de rendimiento más bajo. Más del documento,

En los sistemas de virtualización de memoria asistida por hardware (por ejemplo, Intel EPT Hardware Assist y AMD RVI Hardware Assist [6]), ESX automáticamente respaldará las páginas físicas de los invitados con páginas físicas de host grandes (región de memoria contigua de 2 MB en lugar de 4 KB para las páginas normales) para mejor rendimiento debido a menos fallas de TLB. En tales sistemas, ESX no compartirá esas páginas grandes porque: 1) la probabilidad de encontrar dos páginas grandes con contenido idéntico es baja y 2) la sobrecarga de hacer una comparación bit a bit para una página de 2 MB es mucho mayor que para una página de 4 KB. Sin embargo, ESX aún genera hash para las páginas de 4 KB dentro de cada página grande. Dado que ESX no intercambiará páginas grandes, durante el intercambio de host, la página grande se dividirá en páginas pequeñas para que estos hashes pregenerados se puedan usar para compartir las páginas pequeñas antes de intercambiarlas. En resumen, es posible que no observemos el uso compartido de páginas para los sistemas de virtualización de memoria asistidos por hardware hasta que la memoria del host esté comprometida en exceso.

  1. A continuación, comienza el globo (los umbrales son configurables, por defecto esto es cuando el host tiene menos del 6% de memoria libre (entre alta y software)). Asegúrese de instalar el controlador y tenga cuidado con Java y las aplicaciones administradas en general. El sistema operativo no tiene idea de lo que hará el recolector de basura a continuación y terminará llegando a las páginas que se han intercambiado al disco. No es una práctica infrecuente que los servidores que ejecutan aplicaciones Java exclusivamente deshabiliten el intercambio por completo para garantizar que eso no suceda. Eche un vistazo a la página 17 de vSphere Memory Management, SPECjbb

  2. El intercambio de hipervisor , de los tres métodos, es el único que garantiza que la "memoria" esté disponible para el hipervisor en un tiempo establecido. Esto será utilizado si 1 y 2 no se dan suficiente memoria para permanecer bajo el umbral duro (por defecto de la memoria 2% libres). Cuando lea las métricas de rendimiento (haga las suyas propias), se dará cuenta de que este es el peor de los tres. Trate de evitarlo a toda costa, ya que el impacto en el rendimiento será muy notable en casi todas las aplicaciones. Porcentaje de dos dígitos.

  3. Hay un estado más para tener en cuenta bajo (por defecto 1%). Según el manual, esto puede reducir drásticamente su rendimiento,

En un caso poco común en el que la memoria libre del host cae por debajo del umbral bajo, el hipervisor continúa recuperando memoria mediante el intercambio y la compresión de memoria, y además bloquea la ejecución de todas las máquinas virtuales que consumen más memoria que sus asignaciones de memoria de destino.

Resumen

El punto clave para enfatizar es que es imposible predecir a partir de los informes técnicos cómo se comportará su entorno.

  1. ¿Cuánto puede darle TPS? (Depende de qué tan similares sean sus VM con su sistema operativo, Service Pack y aplicaciones en ejecución)
  2. ¿Con qué rapidez asignan memoria sus máquinas virtuales? Cuanto más rápido lo hagan, más probabilidades tendrá de saltar al siguiente umbral antes de que el esquema de recuperación de memoria menos impactante tenga éxito en mantenerlo en su umbral actual.
  3. Dependiendo de la aplicación, cada esquema de recuperación de memoria tendrá un impacto muy variable.

Pruebe sus escenarios promedio, su escenario de percentil del 95% y, finalmente, su máximo para comprender cómo se ejecutará su entorno.


Editar 1

Vale la pena agregar que con vSphere 4 (o 4.1 no se puede recuperar), ahora es posible colocar el intercambio de hipervisor en el disco local pero aún así mover la VM. Si está utilizando almacenamiento compartido, le recomiendo encarecidamente que mueva el archivo de intercambio del hipervisor para que esté en el disco local de forma predeterminada. Esto garantiza que cuando un host se encuentra bajo una gran presión de memoria, no termina afectando a todos los demás hosts / VM de vSphere en el mismo almacenamiento compartido.

Editar 2

Según los comentarios, hizo el hecho de que ESX no asigna la memoria por adelantado en negrita …

Editar 3

Explicó un poco más sobre los umbrales de memoria.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım