Explicación de la virtualización anidada de Hyper-V

La virtualización anidada de Hyper-V es una función que se lanzó por primera vez con Windows Server 2016 y Windows 10, y que está disponible tanto en estaciones de trabajo como en servidores. El área de aplicación del hipervisor Microsoft Hyper-V se amplió con la introducción de esta función. Esta entrada de blog explica qué es la virtualización anidada, así como los casos de uso, requisitos y limitaciones de la virtualización anidada en Microsoft Hyper-V.

NAKIVO for Hyper-V Backup

NAKIVO for Hyper-V Backup

Agentless, application-aware backups for Hyper-V. Anti-ransomware protection, instant VM boot from backup, other virtual/physical platform support and more.

¿Qué es la virtualización anidada?

La virtualización anidada en Microsoft Hyper-V es una función que le permite crear máquinas virtuales (VM) dentro de otras VM Hyper-V que se ejecutan en un host Hyper-V. Estas máquinas virtuales que se ejecutan dentro de otras se denominan máquinas virtuales anidadas. Tenga en cuenta que la virtualización anidada también puede configurarse en entornos VMware.

A schema of nested virtualization in Hyper-V

Casos prácticos

A continuación se exponen algunos casos prácticos de uso de la virtualización anidada en entornos virtuales:

  • Creación de entornos aislados. Puede utilizar esta función para crear máquinas virtuales anidadas que estén conectadas entre sí a través de una red virtual aislada. De este modo, puede crear un entorno totalmente aislado, que no afecte a sus máquinas virtuales ni a su red habituales.
  • Formación/pruebas/desarrollo. La formación es útil para familiarizar a los nuevos usuarios o administradores con el software (o para familiarizar a los usuarios o administradores existentes con el nuevo software). Sin embargo, la formación en entornos de producción puede provocar inestabilidad o incluso fallos. Con la virtualización anidada, puede simular el entorno de producción en máquinas virtuales anidadas sin ningún impacto en el entorno de producción real.

    Además de la formación para administradores, los especialistas en control de calidad (probadores) y los desarrolladores pueden necesitar este tipo de entorno con fines de prueba o desarrollo. La ventaja es que puede utilizar máquinas virtuales anidadas en entornos virtuales existentes para estos fines sin necesidad de adquirir hardware dedicado adicional.

  • Construir una nube privada. La instalación de una nube privada real con un portal de autoservicio para los usuarios puede resultar cara y laboriosa. Con la virtualización anidada, puede desplegar una nube pseudo-privada con funciones idénticas a las de ese tipo de nube. Por ejemplo, puede crear una máquina virtual con Hyper-V Server instalado y aprovisionar 256 GB de RAM.

    Los usuarios pueden crear y configurar máquinas virtuales anidadas dentro de la máquina virtual con Hyper-V instalado en función de sus necesidades, pero no pueden superar el límite de memoria y consumir más de 256 GB de RAM. Puede añadir memoria y adaptadores de red virtuales a las máquinas virtuales en las que Hyper-V está instalado con la función hot-add sin tiempo de inactividad.

Requisitos y limitaciones

Debe cumplir los siguientes requisitos para implementar la virtualización anidada en Hyper-V:

  • El sistema operativo host debe ser Windows Server 2016 o Windows 10 (Anniversary update) o posterior.
  • La máquina virtual Hyper-V debe ser de versión 8 o superior.
  • El servidor físico debe tener una CPU compatible que soporte las funciones de virtualización adecuadas.
    • Solo los procesadores Intel con tecnología VT-x y EPT son compatibles con la virtualización anidada en Windows Server 2016, Windows Server 2019 y Windows 10.
    • Si tiene procesadores AMD con funciones de virtualización AMD-V, debe utilizar Windows Server 2022 o Windows 11 para tener compatibilidad con la virtualización anidada Hyper-V.
    • Las versiones más recientes de Windows son compatibles tanto con procesadores AMD como Intel.
  • Debe haber suficiente memoria física para ejecutar las máquinas virtuales.
  • La máquina virtual no debe utilizar memoria dinámica.

Algunas limitaciones se aplican a las máquinas virtuales que alojan máquinas virtuales anidadas (las máquinas virtuales anidadas pueden denominarse «huéspedes más internos»):

  • Los puntos de control no pueden aplicarse a una máquina virtual en ejecución.
  • La migración en vivo falla para la VM.
  • El redimensionamiento de la memoria en tiempo de ejecución no funciona.

Nota: Las funciones asociadas a estas tres limitaciones anteriores pueden utilizarse para los invitados más internos.

¿Qué es VT-x/AMD-V anidado?

Intel VT-x y AMD-V son conjuntos de instrucciones para procesadores que permiten la virtualización del hardware. Cuando utilice la virtualización anidada, deberá activar una de estas funciones para la máquina virtual utilizada para la anidación. Sólo entonces puede una máquina virtual utilizar las funciones de virtualización de hardware del procesador para ejecutar máquinas virtuales anidadas.

Cómo activar la virtualización anidada de Hyper-V y crear una máquina virtual anidada

Esta sección cubre las acciones para configurar la virtualización anidada de Hyper-V en Windows Server 2019. El proceso de configuración es el mismo para Windows Server 2016 y Windows Server 2022.

Configuración del host Hyper-V

En primer lugar, debe configurar el host Hyper-V:

  1. Prepare un servidor físico con una CPU compatible, suficiente memoria y la capacidad de almacenamiento adecuada.
  2. Compruebe que las funciones de virtualización de la CPU, como Intel VT-x, están activadas en la BIOS.
  3. Instale Hyper-V Server 2019, Windows Server 2019 o el sistema operativo Windows 10.
  4. Añada la función de servidor Hyper-V si utiliza un sistema operativo Windows con todas las funciones (o active Hyper-V en Windows 10). También puede utilizar la interfaz gráfica de usuario (GUI) y el Administrador de servidores.

Instalación de una máquina virtual huésped

A continuación, debe crear una máquina virtual e instalar un sistema operativo invitado:

  1. Crear una VMHyper-V en Windows Server o crear una VM en Windows 10.
  2. Instale un sistema operativo compatible con la virtualización anidada para Hyper-V en la máquina virtual invitada, es decir, instale Windows 10 Anniversary Update o posterior o Windows Server 2016 o posterior.

Para este tutorial se utiliza Windows Server 2016. Puede utilizar versiones más recientes de Windows.

Configuración de la máquina virtual invitada

Por defecto, la compatibilidad con la virtualización de hardware está desactivada para una máquina virtual invitada. El sistema operativo muestra un error si intenta agregar el rol Hyper-V para la VM.

This error message is displayed when hardware virtualization is disabled for a guest VM

Puede activar la virtualización de hardware para un hipervisor invitado únicamente mediante PowerShell. Tenga en cuenta que la máquina virtual huésped debe estar apagada para poder aplicar los siguientes comandos.

  1. En primer lugar, compruebe si la virtualización de hardware está activada para la máquina virtual invitada. Ejecute el siguiente comando en el sistema operativo anfitrión (que está instalado en la máquina física):

    Get-VMProcessor -VMName vm_name | fl *

    Introduzca el nombre de su VM en lugar de vm_name. En nuestro ejemplo, el nombre de la máquina virtual es Server2016. WIN2018 es el nombre del equipo que representa la máquina física en la que está instalado Windows junto con el rol Hyper-V.

    Virtualización anidada de Hyper-V: comprobación de si la virtualización de hardware está activada para una máquina virtual

  1. Para habilitar la virtualización de hardware dentro de la VM huésped, detenga la VM antes y aplique el siguiente comando:

    Set-VMProcessor -VMName vm_name -ExposeVirtualizationExtensions $true

    Si todo está bien, no debería aparecer ningún mensaje después de introducir el comando. Si la máquina virtual se está ejecutando, aparecerá el siguiente mensaje de error:

    Hyper-V enable nested virtualization - habilitar funciones de virtualización del procesador para una VM

Conexión de red VM

Ahora tienes que configurar los ajustes de red de tu máquina virtual. Hay dos formas de conectar las máquinas virtuales anidadas a la red: MAC spoofing y NAT.

  • Si la red para las máquinas virtuales anidadas se configura proporcionando acceso a una red de área local (LAN) real, entonces un adaptador de red en la máquina anfitriona llevaría múltiples direcciones MAC, lo que potencialmente podría causar problemas de red. Por eso hay que activar la opción de suplantación de direcciones MAC (esta opción está desactivada por defecto).
  • Si se despliega una nube pseudo-privada, no se puede utilizar la suplantación de direcciones MAC para la red de máquinas virtuales, y en este caso se debe configurar NAT.

Nota: Ambos métodos se cubren a continuación, pero utilizaremos el método NAT para configurar nuestra VM para utilizar la virtualización anidada Hyper-V.

Configuración de la suplantación de direcciones MAC

Si utiliza la suplantación de direcciones MAC, actívela en el adaptador de red del host Hyper-V virtual:

  • En la máquina física con Hyper-V Server instalado, introduzca el siguiente comando para habilitar la suplantación de dirección MAC:

    Get-VMNetworkAdapter -VMname vm_name | Set-VMNetworkAdapter -MacAddressSpoofing On

    Introduzca el nombre de su VM en lugar de vm_name. En nuestro caso, se trata de Server2016, como ya se ha mencionado.

    Activación de la suplantación de direcciones MAC para una máquina virtual en 
PowerShell para virtualización anidada de Hyper-V

  • Si prefiere la interfaz gráfica de usuario, vaya a Ajustes de la máquina virtual > Adaptador de red > Funciones avanzadas, marque la casilla Activar suplantación de dirección MAC y haga clic en Aceptar.

    Activación de la suplantación de direcciones MAC para que una máquina virtual utilice la red con la virtualización anidada de Hyper-V

Configuración de NAT

NAT sólo puede activarse mediante PowerShell. Mientras que los comandos anteriores se ejecutaron en el SO anfitrión, los siguientes comandos deben ejecutarse en el SO invitado.

Para activar NAT para la conexión de red VM:

  1. En primer lugar, cree un nuevo conmutador virtual.

    New-VMSwitch -Name "SwitchName" -SwitchType Internal

    Utilice el nombre de su conmutador en lugar de SwitchName. En este tutorial utilizaremos NAT-Switch.

    Creación de un nuevo conmutador virtual para conectar máquinas virtuales a través de NAT para el uso de redes con virtualización anidada Hyper-V

  1. Defina la subred detrás de NAT y active NAT. La dirección de red no debe coincidir con las direcciones IP de su red actual. En este ejemplo, el nombre de la red es NAT-net y la dirección de red es 192.168.2.0/24

    New-NetNat -Name "network_name" -InternalIPInterfaceAddressPrefix 'ip-address/netmask'

    Definición de una dirección de red para la red utilizada para NAT

  1. A continuación, asigne la dirección IP para la interfaz en la que se ha activado NAT.

    Genera una lista de los adaptadores disponibles para comprobar sus nombres con el siguiente comando:

    Get-NetAdapter | ft -Autosize

    Displaying a list of virtual switches and checking the name of the recently created virtual switch

    En este ejemplo, el nombre del adaptador de red virtual que está conectado al conmutador virtual creado anteriormente es vEthernet (NAT-Switch).

  1. Ahora debe definir la dirección IP para este adaptador de red virtual, que debe pertenecer a la red creada. Las máquinas virtuales anidadas utilizarán la dirección IP de esta interfaz de red como puerta de enlace. En nuestro ejemplo, esta dirección IP es 192.168.2.1 – pertenece a la red 192.168.2.0/24

    Get-NetAdapter "adapter_name" | New-NetIPAddress -IPAddress ip_address -AddressFamily IPv4 -PrefixLength mask_number

    Configuración de la dirección IP de la interfaz de red utilizada para NAT

Configuración de una máquina virtual anidada

Ahora puede crear y configurar una máquina virtual anidada. En este tutorial, se utiliza una máquina virtual con Windows Server 2016 como máquina virtual anidada.

  1. Seleccione el conmutador virtual (que ha creado recientemente) en los ajustes de red de la máquina virtual en Hyper-V Manager.

Selección del conmutador virtual creado para conectar las máquinas virtuales a través de NAT

  1. Configure los ajustes TCP/IP en las Propiedades del adaptador de red de la máquina virtual anidada. Si no hay servidores DHCP en la red virtual, asigne manualmente la dirección IP, la máscara de subred, la puerta de enlace predeterminada y el servidor DNS.

Red de virtualización anidada Hyper-V: configuración de la dirección IP para la máquina virtual anidada

Nota: Compruebe los ajustes de su cortafuegos, ya que éstos pueden bloquear las conexiones de red.

Su VM anidada tiene ahora una red configurada y está lista para funcionar.

Running a nested VM - Hyper-V nested virtualization networking works fine

Protección de máquinas virtuales con NAKIVO Backup & Replication

Todas las máquinas virtuales, incluidas las anidadas, deben estar respaldadas para garantizar la confiabilidad de su entorno virtual Hyper-V. NAKIVO Backup & Replication ofrece copias de seguridad fiables de Hyper-V con rápidas copias de seguridad incrementales basadas en imágenes que aprovechan la tecnología nativa Hyper-V Resilient Change Tracking (RCT). Utilizando backups, puede recuperar objetos/archivos de aplicaciones, arrancar instantáneamente máquinas virtuales o recuperar máquinas virtuales Hyper-V como máquinas virtuales VMware vSphere, entre otras opciones de recuperación.

1 Year of Free Data Protection: NAKIVO Backup & Replication

1 Year of Free Data Protection: NAKIVO Backup & Replication

Deploy in 2 minutes and protect virtual, cloud, physical and SaaS data. Backup, replication, instant recovery options.

Artículos recomendados