Last Updated on 22 agosto, 2017 by
En esta publicación vamos a conocer los detalles relacionados a la Virtualización anidada (Nested Virtualization) en Hyper-V de Windows 10.
En relación a Hyper-V, era algo que necesitábamos por el solo hecho de que en la competencia VMware si se podía hacer modificando un parámetro en el archivo de configuración, Microsoft se ha dado cuenta de esto y por eso ha dado la posibilidad de activar esta función en el nuevo Hyper-V de Windows 10.
Tabla de Contenidos
Introducción
Objetivo
Esta publicación tiene como objetivo:
- Demostrar el fácil proceso de habilitar la Virtualización anidada (Nested Virtualization) en Hyper-V de Windows 10.
- Indicar cuales son los requisitos para poder virtualizar sobre lo virtualizado.
Audiencia
Este documento está dirigido a Consultores, Profesionales IT y personas que desarrollan tareas de Consultoría, Administración y Soporte o que simplemente están interesados en leer e investigar sobre la tecnología alcanzada por esta publicación.
Comentarios y Corrección de Errores
Hemos realizado nuestro mejor esfuerzo para no cometer errores, pero al fin y al cabo somos seres humanos. Si deseás reportar algún error o darnos feedback de qué te pareció esta publicación, por favor no dejes de comunicarte con nosotros a través de correo electrónico a la siguiente dirección: info@tectimes.net.
Alcance Técnico
Entender cuál es el alcance de la publicación nos ayuda a tener una expectativa real de lo que encontraremos en la misma, de modo tal que quién lo lee no espere ni más ni menos de lo que encontrará. Vamos a describir el objetivo técnico, tecnologías alcanzadas, escenario de trabajo y plan de trabajo en alto nivel.
Objetivo Técnico
El objetivo técnico de este tutorial es realizar las configuraciones necesarias en Windows 10 y Hyper-V, de modo tal que podamos virtualizar sobre lo que ya está virtualizado (virtualizar una máquina virtual con Hyper-V y en esa VM instalar Hyper-V también y poder correr VMs).
Tecnologías Alcanzadas
Las tecnologías alcanzadas por esta publicación son las siguientes:
- Windows 10.
- Hyper-V.
Escenario de Trabajo
El escenario de trabajo que da marco a esta publicación es el siguiente:
- El equipo Host debe trabajar con Windows 10 Professional / Enterprise – Build 10565 o superior.
-
1 Equipo virtual con:
- 4 GB de memoria.
- 2 Procesadores virtuales.
- 1 Disco Rígido virtual de 127 GB (Puede variar dependiendo la cantidad de VMs a ejecutar).
- Conexión a Internet.
- Un ISO de Windows 10 Professional / Enterprise (en su versión estable o Technical Preview).
- Download Script – GitHub
Plan de Trabajo
El plan de trabajo a desarrollar en esta publicación es el siguiente:
-
Configuración inicial de la Virtualización anidada (Nested Virtualization) en Hyper-V de Windows 10.
- Descarga y copia de Script – GitHub.
- Windows PowerShell ISE.
- Instalación y Ejecución de Hyper-V en la VM que habilitamos (Nested Virtualization).
Desarrollo
Vamos a comenzar con este tutorial, en donde vamos a conocer cómo habilitar la Virtualización anidada (Nested Virtualization) en Hyper-V de Windows 10.
¡Síguenos!
¿Qué es virtualización anidada o Nested Virtualization?
La virtualización anidada no es más que virtualizar sobre lo que ya está virtualizado, tener virtualizada una máquina virtual con Hyper-V y en esa VM instalar Hyper-V también y poder correr VMs, esto antes no era posible porque si intentabas instalar la característica de Hyper-V en Windows nos daba un error y nos decía que el Hypervisor ya estaba siendo utilizado. El siguiente gráfico nos resume lo que les digo.
Configuración Inicial
En la actualidad, este proceso se está ejecutando en una maquina host con Windows 10 Pro – 10586.
Descarga y copia de Script – GitHub
Ingresamos a la siguiente dirección de enlace para proceder con la copia del Script proporcionado por el equipo de GitHub, el cual nos facilitará el proceso de activación.
Windows PowerShell ISE
En este caso nos dirigimos a Windows PowerShell ISE y lo ejecutamos como administrador. Una vez dentro pegamos el Script que copiamos de la página de GitHub y lo guardamos en la unidad C:/ con la siguiente extensión Enable-NestedVm.ps1.
Después de haber guardado el Script en la ruta correspondiente, procedemos a ejecutarlo y adicionalmente, agregamos la siguiente extensión
./Enable-NestedVm.ps1 -OutFile ~/Enable-NestedVm.ps1 ~/Enable-NestedVm.ps1 -VmName <Nombre de la VM al cual le habilitaremos (Nested Virtualization)>
Como vemos, el proceso de ejecución del Script fue realizado de forma exitosa y antes de continuar nos muestra 2 recomendaciones que se debe tener en cuenta antes de presionar Y:
- Se habilitará Mac Address Spoofing en la VM que ejecutará (Nested Virtualization).
- Se agregará 4GB de RAM (Es el mínimo recomendado que se debe tener) a la VM que ejecutará (Nested Virtualization).
Instalación y Ejecución de Hyper-V en la VM que habilitamos (Nested Virtualization)
Después de haber tomado las consideraciones del caso y ejecutado Y como aceptación de este proceso, nos dirigimos a realizar la instalación y ejecución de Hyper-V para poder virtualizar sobre lo virtualizado.
Habilitamos el Rol de Hyper-V en la VM que habilitamos (Nested Virtualization).
Iniciamos el Administrador de Hyper-V.
Ahora que podemos apreciar, que en realidad se está ejecutando Hyper-V dentro de una VM que también está corriendo sobre el Hypervisor de Microsoft (Hyper-V), podremos decir misión cumplida y realizar un sinfín de pruebas en ellas.
Conclusiones
¿Cómo afecta todo lo visto a Profesionales IT y Desarrolladores? La pregunta es muy sencilla de responder. Este método de virtualización lo recomiendo para realizar pruebas que antes solo eran posible gracias a otro Hypervisor, un ejemplo de esto es: probar nuevas características de virtualización de Windows Server 2016.
Referencias y Links
- Nested Virtualization: https://msdn.microsoft.com/en-us/virtualization/hyperv_on_windows/user_guide/nesting
Acerca del Autor
- [Evento] Microsoft Azure | Tendencias Digitales 2019 – 26/03/2019 - 30 marzo, 2019
- [Evento] Microsoft Azure | Tendencias Digitales 2019 – 06/02/2019 - 12 febrero, 2019
- [Evento] Microsoft Azure | Modernización de Apps con la Nube de Azure – 20/12/2018 - 22 diciembre, 2018