Asignación de vCPU en VMware

Asignación de vCPU en VMware: Ahora más que nunca debes leer este post

La adquisición de VMware por Broadcom ha traído una serie de cambios profundos en la forma de trabajar con el licenciamiento de las soluciones. Uno de los puntos más sensibles es el cambio en la licencia, que ha pasado de ser por CPU físico a core físico.

Hemos visto que muchos han sufrido por el incremento en los costos al momento de renovar, pero existen acciones que podemos realizar para optimizar nuestra plataforma y, a su vez, reducir futuros gastos en VMware.

 

 

 

 

 

 

 

 

 

 

La sobreasignación de vCPU

Con más de 15 años de experiencia dando soporte a plataformas VMware, he observado un patrón recurrente: la sobreasignación de vCPU a las VMs. Esto suele ocurrir porque obedecemos a un diseño específico de una aplicación o porque pensamos que «más es mejor», lo cual no siempre es cierto en virtualización.

Sobre asignar recursos a nuestras VMs es similar a dejar las llaves de agua corriendo en casa. Con el nuevo modelo de licenciamiento por core, esto ahora tiene un costo adicional que debemos considerar para optimizar nuestros recursos.

Ejemplos de licenciamiento

  1. Host ESXi con 2 CPU de 20 cores cada uno: Este host necesita 40 licencias.
  2. Host ESXi con 2 CPU de 10 cores cada uno: Este host necesita 32 licencias (mínimo 16 cores por CPU).

Esto significa que no solo enfrentamos un problema técnico al asignar recursos, sino también un impacto financiero.

Mejores Prácticas para la Asignación de vCPU

  1. Evaluar los Requisitos de la Carga de Trabajo:
    • Dimensionar Correctamente las VMs: Determina las necesidades reales de CPU de tus cargas de trabajo. La sobreasignación puede llevar a una sobrecarga innecesaria y contención.
    • Monitorear el Rendimiento: Utiliza herramientas como VMware Aria Operations para monitorear el uso de CPU y ajustar las asignaciones de vCPU según las métricas de rendimiento.
  2. Entender NUMA (Non-Uniform Memory Access):
    • Aprovechar la Conciencia NUMA: Configura las VMs para ser conscientes de NUMA, alineando las vCPUs y la memoria dentro de un único nodo NUMA siempre que sea posible.
    • Configurar vNUMA: Para VMs grandes que abarcan múltiples nodos NUMA, habilita la NUMA virtual (vNUMA) para optimizar los patrones de acceso a la memoria.
  3. Evitar el Hot-Plugging de vCPUs en VMs Críticas:
    • Asignación Estática: Asigna el número necesario de vCPUs durante la configuración inicial de la VM en lugar de agregar vCPUs en caliente, lo cual puede causar ineficiencias de programación y problemas de rendimiento.
  4. Configurar Núcleos por Socket:
    • Consideraciones de Licenciamiento: Configura el número de núcleos por socket según sea necesario para cumplir con los términos de licenciamiento y optimizar el rendimiento.
    • Optimización del Rendimiento: Si una VM requiere 8 vCPUs, puedes configurarla con 2 sockets y 4 núcleos por socket, dependiendo de la carga de trabajo y los requisitos de licenciamiento.
  5. Utilizar la Afinidad de CPU:
    • Vinculación Específica de CPU: En algunos casos, vincular una VM a CPUs físicas específicas puede reducir la latencia y mejorar el rendimiento. Esto debe usarse con moderación, ya que puede reducir la flexibilidad del programador del hipervisor.
  6. Entender y Configurar Shares, Reservas y Límites de CPU:
    • Shares de CPU: Asigna shares de CPU para priorizar las VMs durante la contención de recursos.
    • Reservas: Establece reservas de CPU para garantizar un nivel mínimo de recursos de CPU para las VMs críticas.
    • Límites: Usa límites de CPU para restringir los recursos de CPU que una VM puede usar y evitar que monopolice los recursos.
  7. Evitar la Sobreasignación en Producción:
    • Gestionar la Sobreasignación: Sobre asignar vCPUs puede aumentar la utilización de recursos, pero debe gestionarse cuidadosamente en entornos de producción para evitar la degradación del rendimiento. Una guía común es mantener la proporción de vCPU a pCPU por debajo de 4:1 en producción.

Ejemplo Práctico de Configuración de vCPU

Para configurar vCPUs en VMware vSphere:

  1. Abrir VMware vSphere Client: Accede a tu servidor vCenter y abre el vSphere Client.
  2. Editar Configuración de la VM: Haz clic derecho en la VM y selecciona «Editar Configuración».
  3. Configuración de CPU: Expande la sección de CPU en la pestaña de Hardware Virtual.
    • Número de vCPUs: Establece el número total de vCPUs necesarias.
    • Núcleos por Socket: Elige el número de núcleos por socket basado en la carga de trabajo y el licenciamiento.
    • Reserva de CPU: Establece una reserva si necesitas garantizar recursos de CPU.
    • Límite de CPU: Aplica un límite si es necesario para controlar el uso máximo de CPU.
    • Shares de CPU: Configura shares para priorizar la VM durante la contención de recursos.

Conclusión

Dejar en claro que el dimensionamiento de las licencias es por los Core físicos de los host ESXi, pero tener un correcto dimensionamiento de nuestra VMs nos permitirá realizar un correcto dimensionamiento de nuestra infraestructura. Cuanto nuestros clientes piden ayuda con esto, lo más común es que se pida la cantidad de vCPU asignadas para dimensionar la nueva plataforma y este es punto de este post, con la sobre asignación de vCPU eso llevara a error.

La correcta asignación de vCPUs es crítica para optimizar el rendimiento y la eficiencia de tu entorno VMware. Al entender los requisitos de la carga de trabajo, aprovechar NUMA y utilizar las diversas opciones de configuración disponibles en VMware vSphere, puedes asegurarte de que tus VMs funcionen de manera óptima y utilicen de manera efectiva los recursos disponibles.

Para las VMs que pueden utilizar Hot Add, comienza con una asignación mínima y aumenta según sea necesario, ya que es menos problemático que tener que reducir recursos más tarde.

La sobreasignación de vCPU es el fenómeno más común en este tipo de plataformas. Si tienes VMware Aria Operations, verifica lo que dice sobre el redimensionamiento correcto («rightsizing»). Si tienes dudas sobre cómo interpretarlo, te recomendamos la lectura: Rightsizing VMs with vRealize Operations – VMware Cloud Management.

En Infoworld tenemos mucha experiencia en el diseño, administración y soporte de plataformas VMware. Te invitamos a contactarnos para profundizar sobre este tema. Hoy en día, con el regreso masivo al on-premise, es vital diseñar una buena plataforma de virtualización para seguir trabajando con el mejor sistema del mercado como es VMware.

Si llegaste hasta aca, gracias por leer!

José Luis Fernández, vExpert de VMware by Broadcom.

Comparte ésta noticia

Facebook
Twitter
LinkedIn

Déjanos un comentario

Noticias relacionadas

Ya actualizó a Vmware vSphere…

DRS Predictivo: Permite una integración entre DRS y vRealize Operations Manager,…

Vmware anuncio dos futuros grandes…

Adiós al vCenter de Windows y adiós al Web Client!…

Fin de Soporte vSphere 5.5

Vmware ha anunciado el fin del soporte de Vmware vSphere…

Licencia Enterprise dejará de existir…

Varios de ustedes ya saben que la licencia Enterprise ya…

Abrir chat
Hola 👋
¿En qué podemos ayudarte?