Al especificar una configuración de afinidad para la CPU de cada máquina virtual, se puede restringir la asignación de máquinas virtuales a una subred de procesadores disponibles en los sistemas multiprocesador. Esta característica permite asignar cada máquina virtual a los procesadores en el conjunto especificado de afinidad.

La afinidad de CPU especifica restricciones de selección de ubicación entre la máquina virtual y el procesador, y difiere de la relación creada por una regla de afinidad de Máquina virtual-Máquina virtual o de Máquina virtual-Host, la cual especifica restricciones de selección de ubicación entre la máquina virtual y el host de la máquina virtual.

En este contexto, el término "CPU" se refiere a un procesador lógico en un sistema con hiperproceso y a un núcleo en un sistema sin hiperproceso.

La configuración de afinidad de CPU de una máquina virtual se aplica a todas las CPU virtuales asociadas con la máquina virtual y a todos los otros subprocesos (también conocidos como ámbitos) asociados con la máquina virtual. Estos subprocesos de la máquina virtual realizan el procesamiento requerido para emular las funciones de mouse, teclado, pantalla, CD-ROM y diversos dispositivos heredados.

En algunos casos, como los de cargas de trabajo con gran utilización de la pantalla, puede haber una comunicación significativa entre las CPU virtuales y estos otros subprocesos de la máquina virtual. El rendimiento puede degradarse si la configuración de afinidad de la máquina virtual impide que los subprocesos adicionales se programen de forma concurrente con las CPU virtuales de la máquina virtual. Algunos ejemplos son una máquina virtual de un procesador que tiene afinidad con una sola CPU o una máquina virtual SMP de dos vías que tiene afinidad con dos CPU solamente.

Para obtener el mejor rendimiento, cuando se utiliza la configuración de afinidad manual, VMware recomienda incluir al menos una CPU física más en la configuración de afinidad para que, como mínimo, uno de los subprocesos de la máquina virtual se programe a la misma vez que las CPU virtuales. Algunos ejemplos son una máquina virtual de un procesador que tiene afinidad con al menos dos CPU o una máquina virtual SMP de dos vías que tiene afinidad con al menos tres CPU.

Asignar una máquina virtual a un procesador específico

Con la afinidad de CPU, puede asignar una máquina virtual a un procesador específico. Esto permite restringir la asignación de máquinas virtuales a un determinado procesador disponible en sistemas multiprocesador.

Procedimiento

  1. Desplácese hasta la máquina virtual en vSphere Client.
    1. Para buscar una máquina virtual, seleccione un centro de datos, una carpeta, un clúster, un grupo de recursos o un host.
    2. Seleccione Máquinas virtuales.
  2. Haga clic con el botón derecho en la máquina virtual y, a continuación, haga clic en Editar configuración.
  3. En Hardware virtual, expanda la opción CPU.
  4. En Afinidad de programación, seleccione la afinidad de procesador físico para la máquina virtual.
    Utilice "-" para indicar rangos y "," para separar valores.
    Por ejemplo, "0, 2, 4-7" indicaría los procesadores 0, 2, 4, 5, 6 y 7.
  5. Seleccione los procesadores donde desea ejecutar la máquina virtual y haga clic en Aceptar.

Problemas potenciales con afinidad de CPU

Antes de utilizar la afinidad de CPU, quizá le convenga tener en cuenta ciertos problemas.

Entre los potenciales problemas con la afinidad de CPU se encuentran los siguientes:

  • En el caso de los sistemas multiprocesador, los sistemas ESXi realizan un equilibrio de carga automático. Evite la especificación manual de afinidad de máquina virtual para mejorar la capacidad del programador de equilibrar la carga entre procesadores.
  • La afinidad puede interferir con la capacidad del host ESXi para cumplir las reservas y los recursos compartidos especificados para una máquina virtual.
  • Debido a que el control de admisión de CPU no considera la afinidad, una máquina virtual con configuración de afinidad manual no siempre recibe su reserva completa.

    Las máquinas virtuales que no poseen una configuración de afinidad manual no se ven afectadas de manera negativa por las máquinas virtuales que sí la poseen.

  • Cuando mueve una máquina virtual de un host a otro, es posible que ya no se aplique la afinidad, ya que el host nuevo puede tener una cantidad diferente de procesadores.
  • Es posible que el programador NUMA no pueda administrar a través de la afinidad una máquina virtual que ya tenga asignados determinados procesadores. Para obtener más información, consulte Utilizar sistemas NUMA con ESXi.
  • La afinidad puede afectar la capacidad del host para programar máquinas virtuales en procesadores de varios núcleos o con hiperproceso para aprovechar al máximo los recursos compartidos en esos procesadores.