Con esta nota creo que llegamos a lo más interesante de la serie, y que amplía el uso que se le puede dar a Hyper-V en ambientes de pruebas, estamos hablando de tener máquinas virtuales que a su vez virtualizan a otras
La falta de esta característica en versiones anteriores de Hyper-V era lo que de alguna forma me obligaba a usar VMware Workstation, un producto impresionante y que desde hace años cambió mi forma de trabajar
Comencé a usar VMware Workstation creo recordar desde la versión 3.x y fui pasando por todas hasta la última actualmente que es la 12.5, pero como casi todo producto “software” tuvo una imparable curva ascendente hasta llegar a una cúspide que considero ya no mantiene, varios bugs que pasan de una versión a otra sin solucionarse, a lo que hay que agregar la inestabilidad de la ultima versión con virtuales UEFI
A lo anterior hay que contraponer las excelentes mejoras que ha tenido desde su comienzo Hyper-V, y particularmente la característica que muestro en esta que me permitiría hacer el cambio de plataforma. Veremos… evaluando aún (Actualización: ya he migrado)
[Actualización] Ver al final de la nota que he agregado una configuración adicional necesaria
Seguimos con la infraestructura creada en las notas anteriores a esta: una máquina virtual con Windows 10 Enterprise x64, ejecutándose en Hyper-V de un Windows Server 2016
La virtualización anidada no está habilitada por omisión, lo cual creo que es lógico, puede ser útil para ambientes de prueba pero no faltará quien quiera utilizarlo en ambiente productivo, Y por mi experiencia, aunque no le he configurado demasiado hardware veo que el rendimiento baja apreciablemente
Tuvo un comportamiento extraño: la primera vez que lo hice fue muy lento todo, cuando lo hice por segunda vez en cambio realmente tuvo muy buen rendimiento, y esta tercera vez que hago para capturar las pantallas volvió a ser muy lento, va ser tema de probar, porque no hubo cambios de configuración que justificaran este comportamiento. Aclaración: ninguna máquina tiene actualizaciones posteriores al lanzamiento
Podemos observar que si en la máquina virtual tratamos de instalar el componente Hyper-V no lo permite, lo pone deshabilitado (grisado). Sí permite, sólo los componentes de administración de la funcionalidad
Para poder hacer la próxima configuración debemos tener la virtual apagada
Debemos abrir la consola PowerShell ejecutándola como Administrador
Y ejecutar el comando:
Set-VMProcessor -VMName <NombreVMVirtual>
-ExposeVirtualizationExtensions $True
Y a diferencia de lo que sucedía con las versiones Technical Preview, lo anterior es todo :)
Entonces ahora arrancamos la virtual, y como se demostró antes permitiendo el acceso de la virtual a disco C:\ del servidor con Hyper-V
De esta forma podemos copiar fácilmente la carpeta C:\ISOs desde una virtual a otra
Y ahora sí, podemos instalar Hyper-V dentro de la virtual
Igual que en cualquier instalación de Hyper-V debemos reiniciar la máquina
Y podemos ingresar a “Hyper-V Manager”
No voy a ser reiterativo, usando los mismos pasos demostrados anteriormente ahora he creado una nueva máquina virtual instalando Windows 10 Enterprise x64
Finalizada la instalación, que no muestro para no repetir, acá está la prueba final. Recuerden como puse antes que el recuadro amarillo corresponde a la máquina virtual existente, que está virtualizando la nueva recuadrada en violeta
Como escribí al principio de la nota, esta es una mejora muy importante para los que hacemos pruebas en ambientes virtuales, me animo a decir que era una de las capacidades importantes que le faltaban a Hyper-V, pero ya la tiene :)
[Actualización] Para que las máquinas virtuales puedan comunicarse con otras en la red externa, se debe habilitar en la configuración de la misma «Network adapter / Advanced features / Enable MAC Address spoofing». Perdón que había olvidado mencionarlo
Comentarios
Set-VMProcessor -VMName “vm name” -ExposeVirtualizationExtensions $true
Get-VMNetworkAdapter -VMName “vm name” | Set-VMNetworkAdapter -MacAddressSpoofing On
Codigo powershell para activar el procesador de virtualizacion y las redes de virtualizacion de forma mas rapida.
No estaría nada mal poner un post sobre system center. Porque tienen muchas posibilidades.
VMConnect.exe /edit
codigo para modificar la configuracion una vez hecha de forma codigo powershell
VMConnect.exe ServerName VMName /edit
que antes no salio bien el codigo
Set-VMProcessor -VMName «system center» -ExposeVirtualizationExtensions $true
Get-VMNetworkAdapter -VMName «iscsi» | Set-VMNetworkAdapter -MacAddressSpoofing On
Codigo powershell para activar el procesador de virtualizacion y las redes de virtualizacion de forma mas rapida.
No estaría nada mal poner un post sobre system center. Porque tienen muchas posibilidades.
Sí, por supuesto que es mucho lo que se puede hacer con SCVMM pero no es el objetivo por ahora en el blog
Con respecto a PowerShell y algo más, no está en esta nota porque está hecha sobre una RC, pero en cuanto salió la versión final está la versión actualizada
Windows Server 2016 – Hyper-V: Virtualización Anidada (“Nested Virtualization”) | WindowServer
https://windowserver.wordpress.com/2016/11/22/windows-server-2016-hyper-v-virtualizacin-anidada-nested-virtualization/