Acerca de la virtualización anidada


En este documento se describe la compatibilidad de Compute Engine con la virtualización anidada. La virtualización anidada te permite ejecutar instancias de máquinas virtuales (VM) dentro de otras VMs para que puedas crear tus propios entornos de virtualización. Para admitir la virtualización anidada, Compute Engine añade instrucciones de tecnología de virtualización de Intel (VT-x) a las VMs. De esta forma, cuando creas una VM, el hipervisor que ya está en esa VM puede ejecutar VMs adicionales.

Las máquinas virtuales de Compute Engine se ejecutan en un host físico que tiene el hipervisor basado en KVM de Google, con seguridad reforzada. Con la virtualización anidada, el host físico y su hipervisor son el entorno de nivel 0 (L0). El entorno L0 puede alojar varias máquinas virtuales de nivel 1 (L1). En cada VM de nivel 1 hay otro hipervisor, que se usa para instalar las VMs de nivel 2. En la figura 1 se muestra la relación entre el host físico, las máquinas virtuales de nivel 1 y las máquinas virtuales de nivel 2:

Imagen 1. Host físico de nivel 0 con VMs de nivel 1 y VMs de nivel 2.

Casos prácticos

Estos son algunos casos en los que puede ser útil usar la virtualización anidada:

  • Tienes máquinas virtuales que no puedes ejecutar en Compute Engine: por ejemplo, puede que tengas una solución de recuperación ante desastres para una carga de trabajo local que se ejecute en máquinas virtuales que conmutan por error a máquinas virtuales de Compute Engine. Ejecutar la virtualización anidada puede ahorrarte el tiempo que emplearías en migrar tus VMs a Compute Engine.

  • Tienes un framework de validación de software que usas para probar y validar nuevas versiones de un paquete de software en numerosas versiones de diferentes sistemas operativos. La virtualización anidada te permite evitar la conversión y la gestión de una biblioteca de imágenes de Compute Engine.

Consideraciones sobre el rendimiento.

Incluso con la virtualización anidada asistida por hardware, las VMs anidadas pueden experimentar una disminución del rendimiento del 10% o más en las cargas de trabajo que dependen de la CPU y, posiblemente, una disminución superior al 10% en las cargas de trabajo que dependen de la entrada/salida.

Restricciones

Las VMs de nivel 1 tienen las siguientes restricciones:

Las VMs de nivel 2 tienen las siguientes restricciones:

Usar la virtualización anidada

Para usar la virtualización anidada, sigue estos pasos:

  1. Comprobar si la restricción de virtualización anidada está inhabilitada

  2. Crea una VM de nivel 1 que tenga habilitada la virtualización anidada

  3. Crear una VM de nivel 2 anidada

Si tienes algún problema al crear una VM con la virtualización anidada habilitada o al crear VMs anidadas, consulta el artículo Solucionar problemas de la virtualización anidada.