Hyper-V Containers en Windows server 2016 TP4 (2 de 2)

Buenas
Atendiendo a lo prometido, en esta segunda entrada de la serie me gustaría explicar el procedimiento paso a paso para desplegar un container host sobre Windows server 2016 TP4 el cual será configurado para alojar Hyper-V Containers.
Los pasos a realizar serán los siguientes.

1– Teniendo en cuenta que nuestro container host correrá en una máquina virtual de Hyper-V lo primero que debemos hacer es asegurarnos que nuestro host de Hyper-V corre sobre Windows 2016 TP4 o Windows 10 build 1056 o superior. Una vez hemos comprobado este punto desplegaremos la máquina virtual que funcionará como container host siguiendo el procedimiento que ya detalle en su momento en el siguiente post el cual también es valido para la versión TP4.

2– Arrancamos la máquina virtual que acabamos de crear y arrancamos powershell dentro de la misma.

3– En mi caso procederé a poner el teclado en Español para poder introducir los comandos de powershell con mayor comodidad, para ello ejecuto el comando
Set-WinUserLanguageList – languagelist es-es

4– Comprobamos que la vm que acabamos de desplegar ya tiene el role de container host instalado ejecutando el comando
Get-Windowsfeature | where {$._installed}

5– Chequeamos que tenemos un virtual switch configurado en modo nat para ejecutar containers en nuestra vm para ello ejecutamos el comando
Get-vmswitch

6– Comprobamos el direccionamiento nat del virtual switch ejecutando
Get-netnat

7– Por último comprobamos que la vm desplegada contiene únicamente la image de containers windowsservercore usando el comando
get-containerimage

8– Una vez realizada estas comprobaciones apagaremos la vm que funcionará como hyper-v container host con el objetivo de preparar la misma para que soporte nested virtualization. Para que la vm soporte Nested virtualization esta tiene que estar configurada con más de 1 virtual cpu, tener deshabilitada la memoria dinámica y tener habilitado el MAC addresss spoofing en la propiedades avanzadas de la tarjeta de red.

9– Tras preparar el hardware virtual de la máquina virtual que funciona como container host comprobamos que la misma no tiene configurada las virtualizations extensions necesarias para habilitar nested virtualization usando el comando.
Get-vmprocessor –vmname virtual_machine_name | FL *

10– Habilitamos las virtualizations extensions ejecutando el commando.
Set-vmprocessor -vmname virtual_machine_name –ExposevirtualizationExtensions $True

11– Arrancamos de nueva la máquina virtual que funcionará como Hyper-V container host y arrancamos una consola de powershell en la misma.

12– Instalamos la Feature de hyper-v en nuestro container host ejecutando el siguiente comando.
Install-WindowsFeature Hyper-V –Includemanagementtools -Restart

13– Ejecutamos los comandos siguientes para desplegar la imagen de containers Nanoserver. Esta es la únicamente imagen soportada para crear Hyper-V containers en Windows server 2016 tp4. Sin embargo en futuras releases se espera que la imagen de Windows server core también este soportada.
Install-PackageProvider ContainerProvider –Force

Find-ContainerImage

Install-ContainerImage –Name NanoServer –Version 10.0.10586.0

14– Por ultimo crearemos un container usando la imagen de NanoServer ejecutando el siguiente comando
New-Container –Name containername –ContainerImageName NanoServer –Switchname “virtual switch name” –Runtime HyperV

El resto commandos necesario para trabajar que el container serían los mismos que usamos para gestionar los Windows Server Container. Podéis encontrar más información sobre los mismos en este post.

Espero que resulte de utilidad

Un saludo

Samuel López posted at 2015-12-4 Category: Articulos IT