Modo dinámico de compatibilidad del procesador en Azure Stack HCI

Se aplica a: Azure Stack HCI, versiones 23H2 y 22H2

Nota

La manera recomendada de crear y administrar máquinas virtuales en Azure Stack HCI 23H2 es usar el plano de control de Azure Arc. Use el mecanismo que se describe a continuación para administrar las máquinas virtuales solo si necesita funcionalidad que no está disponible en máquinas virtuales de Azure Arc.

El modo dinámico de compatibilidad del procesador en Azure Stack HCI se ha actualizado para aprovechar las nuevas funcionalidades del procesador en un entorno en clústeres. La compatibilidad del procesador funciona determinando las características del procesador admitidas para cada nodo individual del clúster y calculando el denominador común en todos los procesadores. Las máquinas virtuales (VM) están configuradas para usar el número máximo de características disponibles en todos los servidores del clúster. Esto mejora el rendimiento en comparación con la versión anterior de compatibilidad del procesador que se estableció de manera predeterminada en un conjunto mínimo y fijo de funcionalidades del procesador.

Para más información sobre el modo de compatibilidad del procesador en Windows Server, consulte Modo de compatibilidad del procesador en Hyper-V.

Cuándo usar el modo de compatibilidad del procesador

El modo de compatibilidad del procesador permite mover una VM en vivo (migración en vivo) o mover una VM que está guardada entre nodos con diferentes conjuntos de capacidades de proceso. Sin embargo, incluso cuando la compatibilidad del procesador está habilitada, no se pueden mover VM entre hosts con distintos fabricantes de procesador. Por ejemplo, no puede mover VM en ejecución ni VM de estado guardado de un host con procesadores Intel en un host con procesadores AMD. Si tiene que mover una VM de esta manera, apague primero la VM y, luego, reiníciela en el nuevo host.

Importante

Solo las VM de Hyper-V con la versión de configuración más reciente (10.0) se benefician de la configuración dinámica. Las VM con versiones anteriores no se beneficiarán de la configuración dinámica y seguirán usando funcionalidades de procesador fijas de la versión anterior.

Se recomienda habilitar el modo de compatibilidad del procesador para las VM que se ejecutan en Azure Stack HCI. Esto brinda el máximo nivel de funcionalidades y, cuando llegue el momento de migrar al nuevo hardware, el traslado de las VM no requerirá tiempo de inactividad.

Nota:

No es necesario usar el modo de compatibilidad del procesador si tiene previsto detener y reiniciar las VM. Cada vez que se reinicie una VM, el sistema operativo invitado enumerará las compatibilidades del procesador que están disponibles en el nuevo equipo host.

Por qué es necesario el modo de compatibilidad del procesador

Los fabricantes de procesadores suelen introducir optimizaciones y funcionalidades en los procesadores. Estas funcionalidades suelen mejorar el rendimiento o la seguridad al usar hardware especializado para una tarea determinada. Por ejemplo, muchas aplicaciones multimedia usan funcionalidades de procesador para acelerar los cálculos vectoriales. Estas características muy pocas veces son necesarias para que las aplicaciones se ejecuten, simplemente aumentan el rendimiento.

El conjunto de funcionalidades que está disponible en un procesador varía en función de su versión, modelo y antigüedad. Los sistemas operativos y el software de aplicación suelen enumerar el conjunto de funcionalidades del procesador del sistema cuando se inician por primera vez. El software no espera que las funcionalidades del procesador disponibles cambien durante su vigencia y, por supuesto, esto no podría ocurrir nunca cuando se ejecuta en un equipo físico, ya que las funcionalidades del procesador son estáticas, a menos que se actualice el procesador.

Sin embargo, las características de movilidad de VM permiten migrar una VM en ejecución a un nuevo host de virtualización. Si el software de la VM ha detectado y empezado a usar una funcionalidad de procesador determinada, y la VM se mueve a un nuevo host de virtualización que carece de esa funcionalidad, es probable que se produzca un error en el software. Esto podría provocar un bloqueo en la aplicación o la VM.

Para evitar errores, Hyper-V realiza comprobaciones "previas al piloto" cada vez que se inicia una migración en vivo de una VM o una operación de guardado y restauración. Estas comprobaciones comparan el conjunto de características del procesador que están a disposición de la VM en el host de origen con el conjunto de características que están disponibles en el host de destino. Si estos conjuntos de características no coinciden, se cancela la operación de migración o restauración.

Novedades del modo de compatibilidad del procesador

Anteriormente, todos los nuevos conjuntos de instrucciones del procesador estaban ocultos, lo que significaba que el sistema operativo invitado y el software de la aplicación no podían aprovechar las nuevas mejoras del conjunto de instrucciones del procesador para ayudar a las aplicaciones y VM a seguir funcionando.

Para superar esta limitación, el modo de compatibilidad del procesador se ha actualizado para proporcionar funcionalidades dinámicas mejoradas en procesadores con capacidad de traducción de direcciones de segundo nivel (SLAT). Esta nueva funcionalidad calcula el denominador común de las características de CPU admitidas por los nodos del clúster, y actualiza el modo de compatibilidad del procesador existente en una VM para usar este conjunto de características calculado dinámicamente en lugar del antiguo conjunto de características codificadas de forma rígida.

En entornos de Azure Stack HCI, el nuevo modo de compatibilidad del procesador garantiza que el conjunto de características del procesador a disposición de las VM en los hosts de virtualización coincida al presentar un conjunto de funcionalidades común en todos los servidores del clúster. Cada VM recibe el número máximo de conjuntos de instrucciones del procesador que están presentes en todos los servidores del clúster. Este proceso se produce automáticamente, siempre está habilitado y se replica en todo el clúster, por lo que no hay ningún comando para habilitar o deshabilitar el proceso.

Migración de VM en ejecución entre clústeres

Suponiendo que todos los servidores de cada clúster se ejecutan en el mismo hardware, que es un requisito para Azure Stack HCI, es posible migrar en vivo VM en ejecución entre clústeres. Hay tres escenarios comunes.

  • Migración en vivo de una VM desde un clúster con nuevos procesadores a un clúster con los mismos procesadores. Las funcionalidades de la VM se transferirán al clúster de destino. Este escenario no requiere que se habilite el modo de compatibilidad del procesador; sin embargo, dejarlo habilitado no provocará ningún problema.

  • Migración en vivo de una VM desde un clúster con procesadores anteriores a un clúster con procesadores más nuevos. Las funcionalidades de la VM se transferirán al clúster de destino. En este escenario, si se reinicia la VM, recibirá la funcionalidad calculada más reciente del clúster de destino.

  • Migración en vivo de una VM desde un clúster con procesadores más nuevos a un clúster con procesadores más antiguos. Tendrá que establecer el procesador de máquina virtual para usar MinimumFeatureSet para el parámetro CompatibilityForMigrationMode en PowerShell, o bien seleccionar Compatible across other hosts with the same CPU manufacturer (Compatible en otros hosts con el mismo fabricante de CPU) en Windows Admin Center en Máquinas virtuales > Configuración > Procesadores. Esto asignará la VM a las funcionalidades mínimas del procesador que se ofrecen en el servidor. Una vez que la compatibilidad se mueve a Compatible across the cluster (Recommended) (Compatible en el clúster [se recomienda]) y se reinicia la máquina virtual, recibirá la funcionalidad calculada más reciente del clúster de destino.

Configuración de una VM para usar el modo de compatibilidad del procesador

En esta sección se explica cómo configurar una VM para usar el modo de compatibilidad del procesador mediante Windows Admin Center o PowerShell. Es posible ejecutar VM con y sin modo de compatibilidad en el mismo clúster.

Importante

Tiene que apagar la VM para poder habilitar o deshabilitar el modo de compatibilidad del procesador.

Habilitación del modo de compatibilidad del procesador mediante Windows Admin Center

Para habilitar el modo de compatibilidad del procesador mediante Windows Admin Center:

  1. Conéctese al clúster y, luego, en el panel Herramientas, seleccione Máquinas virtuales.

  2. En Inventario, seleccione la VM en la que quiere habilitar el modo de compatibilidad del procesador, expanda el menú Inicio/Apagado y, luego, seleccione Apagar.

  3. Seleccione Configuración, luego Procesadores y active la casilla Compatibilidad de procesador.

    Seleccione la casilla para habilitar la compatibilidad del procesador

  4. Si desea establecer las características de CPU de la máquina virtual en el nivel máximo admitido por todos los servidores de un clúster, seleccione Compatible across the cluster (Recommended) (Compatible en el clúster [se recomienda]). Esto maximiza el rendimiento de la máquina virtual a la vez que conserva la capacidad de mover la máquina virtual en ejecución a otros servidores del clúster. Se recomienda habilitar esta opción para todas las máquinas virtuales que se ejecutan en clústeres de Azure Stack HCI 21H2; si está deshabilitada, la máquina virtual debe reiniciarse para pasar a un host con otro nivel de instrucciones de CPU admitidas, comunes con distintas generaciones de CPU.

    Como alternativa, si desea establecer las características de CPU de la máquina virtual en el mínimo para asegurarse de que puede mover la máquina virtual en ejecución a otros hosts de Hyper-V fuera del clúster, siempre que tengan el mismo fabricante de CPU, seleccione Compatible across other hosts with the same CPU manufacturer (Compatible en otros hosts con el mismo fabricante de CPU).

    Nota:

    Al igual que el modo de compatibilidad de procesador dinámico, Compatible across the cluster (Compatible en el clúster ) es exclusivo de Azure Stack HCI 21H2 y no es compatible con ningún otro sistema operativo.

  5. Seleccione Save processor settings (Guardar configuración del procesador) y reinicie la máquina virtual.

Habilitación del modo de compatibilidad del procesador mediante PowerShell

Para habilitar el modo de compatibilidad del procesador, ejecute el siguiente cmdlet:

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true 

Se recomienda establecer las características de CPU de la máquina virtual en el nivel máximo que admitan todos los servidores del clúster. Esto maximiza el rendimiento de la máquina virtual a la vez que conserva la capacidad de mover la máquina virtual en ejecución a otros servidores del clúster.

Para permitir que la VM use las características comunes del nodo de clúster, ejecute el cmdlet siguiente:

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true -CompatibilityForMigrationMode CommonClusterFeatureSet

Como alternativa, puede establecer las características de CPU de la máquina virtual en el mínimo, lo que garantiza que puede mover la máquina virtual en ejecución a otros hosts de Hyper-V fuera del clúster si tienen el mismo fabricante de CPU.

Para permitir que la VM use las características mínimas predeterminadas para migrar entre clústeres, ejecute el cmdlet siguiente:

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true -CompatibilityForMigrationMode MinimumFeatureSet

Pasos siguientes

Para obtener más información, vea también: