Tutorial: Creación de un laboratorio basado en VM para Azure Stack HCI

Se aplica a: Azure Stack HCI versión 21H2

En este tutorial, usará scripts de PowerShell de MSLab para automatizar el proceso de creación de un bosque privado para ejecutar Azure Stack HCI en máquinas virtuales (VM) mediante la virtualización anidada.

Importante

Dado que Azure Stack HCI está pensado como un host de virtualización en el que se ejecutan todas las cargas de trabajo en máquinas virtuales, la virtualización anidada no se admite en entornos de producción. Use la virtualización anidada solo con fines de prueba y evaluación.

Aprenderá a:

  • Creación de un bosque privado con un controlador de dominio y un servidor de Windows Admin Center
  • Implementación de varias VM que ejecutan Azure Stack HCI para la agrupación en clústeres

Una vez completado, podrá crear un clúster de Azure Stack HCI mediante las VM que ha implementado y usará el laboratorio privado para la creación de prototipos, pruebas, solución de problemas o evaluación.

Prerrequisitos

Para completar este tutorial, necesita:

  • Privilegios de administrador en un servidor host de Hyper-V que ejecuta Windows Server 2022, Windows Server 2019 o Windows Server 2016
  • Al menos 8 GB de RAM
  • CPU compatible con la virtualización anidada
  • Unidades de estado sólido (SSD)
  • 40 GB de espacio libre en el servidor host de Hyper-V
  • Una cuenta de Azure para registrar Windows Admin Center y el clúster

Preparación del laboratorio

Siga estas instrucciones para preparar con cuidado el entorno de laboratorio.

Conexión al host de virtualización

Conecte con el servidor físico en el que creará el laboratorio basado en VM. Si usa un servidor remoto, conéctese a través de Escritorio remoto.

Descargar Azure Stack HCI

Puede descargar el sistema operativo de Azure Stack HCI desde el Azure Portal. Para obtener instrucciones de descarga, consulte Descarga del sistema operativo de Azure Stack HCI.

Descargar Windows Server

También necesitará una copia de Windows Server 2022, Windows Server 2019 o Windows Server 2016 para el controlador de dominio y las VM de Windows Admin Center. Puede usar medios de evaluación o, si tiene acceso a VL o Visual Studio Subscription, puede usarlos. Para este tutorial, descargaremos una copia de evaluación.

Creación de una carpeta para los archivos de laboratorio

Cree una carpeta Lab en la raíz de la unidad C (o donde prefiera) y use el Explorador de archivos para copiar los archivos del sistema operativo que descargó en la carpeta C:\Lab\Isos.

Descarga de scripts de MSLab

Con el explorador web del servidor, descargue los scripts de MSLab. El archivo ZIP wslab_vxx.xx.x.zip debería descargarse automáticamente en el disco duro. Copie el archivo ZIP en la ubicación de la unidad de disco duro (C:\Lab) y extraiga los scripts.

Edición del script de LabConfig

Las VM de MSLab se definen en el script de PowerShell LabConfig.ps1 como una tabla hash sencilla. Deberá personalizar el script para crear un bosque privado con VM de Azure Stack HCI.

Para editar el script, use el Explorador de archivos para ir a C:\Lab\wslab_xxx\ y, a continuación, haga clic con el botón derecho en LabConfig.ps1. Seleccione Editar para abrir el archivo con el ISE de Windows PowerShell.

Sugerencia

Guarde la versión original de LabConfig.ps1 como Original_LabConfig.ps1 para poder volver a empezar fácilmente en caso necesario.

Tenga en cuenta que la mayor parte del script está comentada; solo tendrá que ejecutar algunas líneas. Siga estos pasos para personalizar el script para que devuelva la salida deseada. Como alternativa, puede, simplemente, copiar el bloque de código del final de esta sección y reemplazar las líneas adecuadas en LabConfig.

Para personalizar el script:

  1. Agregue lo siguiente a la primera línea sin comentario de LabConfig.ps1 para indicar al script dónde encontrar los ISO, habilitar la interfaz de servicio de invitado y habilitar el reenvío de DNS en el host:ServerISOFolder="C:\lab\isos" ; EnableGuestServiceInterface=$true ; UseHostDnsAsForwarder=$true.

  2. Cambie el nombre y la contraseña de administrador, si lo desea.

  3. Si tiene previsto crear varios laboratorios en el mismo servidor, cambie Prefix = 'MSLab-' para usar un nuevo nombre de prefijo, como Lab1- . En este tutorial, utilizaremos el prefijo predeterminado MSLab-.

  4. Comente la línea ForEach-Object predeterminada para Windows Server y quite el hashtag antes de la línea ForEach-Object para Azure Stack HCI para que el script cree VM de Azure Stack HCI en lugar de VM de Windows Server para los nodos del clúster.

  5. De forma predeterminada, el script crea un clúster de cuatro nodos. Si quiere cambiar el número de VM del clúster, reemplace 1..4 con 1..2 o 1..8, por ejemplo. Recuerde que cuantas más VM haya en el clúster, mayores serán los requisitos de memoria en el servidor host.

  6. Agregue NestedVirt=$true ; AdditionalNetworks=$True al comando ForEach-Object y defina MemoryStartupBytes en 4 GB.

  7. Agregue una línea AdditionalNetworksConfig: $LabConfig.AdditionalNetworksConfig += @{ NetName = 'Converged'; NetAddress='10.0.1.'; NetVLAN='0'; Subnet='255.255.255.0'} .

  8. Agregue la línea siguiente para configurar un servidor de administración de Windows Admin Center que ejecute el sistema operativo Windows Server Core para agregar una segunda NIC para que pueda conectarse a Windows Admin Center desde fuera de la red privada: $LabConfig.VMs += @{ VMName = 'AdminCenter' ; ParentVHD = 'Win2019Core_G2.vhdx'; MGMTNICs=2} .

  9. Asegúrese de guardar los cambios en LabConfig.ps1.

Los cambios en LabConfig.ps1 aplicados en los pasos anteriores se reflejan en este bloque de código:

$LabConfig=@{ DomainAdminName='LabAdmin'; AdminPassword='LS1setup!'; Prefix = 'MSLab-' ; DCEdition='4'; Internet=$true ; AdditionalNetworksConfig=@(); VMs=@() ; ServerISOFolder="C:\lab\isos" ; EnableGuestServiceInterface=$true ; UseHostDnsAsForwarder=$true }
# Windows Server 2019
#1..4 | ForEach-Object {$VMNames="S2D"; $LABConfig.VMs += @{ VMName = "$VMNames$_" ; Configuration = 'S2D' ; ParentVHD = 'Win2019Core_G2.vhdx'; SSDNumber = 0; SSDSize=800GB ; HDDNumber = 12; HDDSize= 4TB ; MemoryStartupBytes= 512MB }}
# Or Azure Stack HCI 
1..4 | ForEach-Object {$VMNames="AzSHCI"; $LABConfig.VMs += @{ VMName = "$VMNames$_" ; Configuration = 'S2D' ; ParentVHD = 'AzSHCI21H2_G2.vhdx'; SSDNumber = 0; SSDSize=800GB ; HDDNumber = 12; HDDSize= 4TB ; MemoryStartupBytes= 4GB ; NestedVirt=$true ; AdditionalNetworks=$true }}
# Or Windows Server 2022
#1..4 | ForEach-Object {$VMNames="S2D"; $LABConfig.VMs += @{ VMName = "$VMNames$_" ; Configuration = 'S2D' ; ParentVHD = 'Win2022Core_G2.vhdx'; SSDNumber = 0; SSDSize=800GB ; HDDNumber = 12; HDDSize= 4TB ; MemoryStartupBytes= 512MB }}

$LabConfig.AdditionalNetworksConfig += @{ NetName = 'Converged'; NetAddress='10.0.1.'; NetVLAN='0'; Subnet='255.255.255.0'}

$LabConfig.VMs += @{ VMName = 'AdminCenter' ; ParentVHD = 'Win2019Core_G2.vhdx'; MGMTNICs=2}

Ejecución de scripts de MSLab y creación de discos primarios

Los scripts de MSLab automatizan gran parte del proceso de configuración del laboratorio y convierten las imágenes ISO de los sistemas operativos en archivos VHD.

Ejecución del script Prereq

Vaya a C:\Lab\wslab_xxx\ y ejecute el script 1_Prereq.ps1. Para hacerlo, haga doble clic en el archivo y seleccione Ejecutar con PowerShell. El script descargará los archivos necesarios. Algunos archivos de ejemplo se colocarán en la carpeta ToolsDisk y algunos scripts se agregarán a la carpeta ParentDisks. Cuando finalice el script, se le pedirá que presione Entrar para continuar.

Nota

Es posible que tenga que cambiar la directiva de ejecución de scripts en el sistema para permitir scripts sin firmar mediante la ejecución de este cmdlet de PowerShell como administrador: Set-ExecutionPolicy -ExecutionPolicy Unrestricted.

Creación de los discos primarios de Windows Server

El script 2_CreateParentDisks.ps1 prepara discos duros virtuales (VHD) para Windows Server y Server Core a partir del archivo ISO del sistema operativo y también prepara un controlador de dominio para la implementación con todos los roles necesarios configurados. Ejecute 2_CreateParentDisks.ps1. Para hacerlo, haga clic con el botón derecho en el archivo y seleccione Ejecutar con PowerShell.

Se le pedirá que seleccione niveles de telemetría. Elija B para el nivel básico o F para el completo. El script también pedirá el archivo ISO para Windows Server 2019. Apunte a la ubicación en la que copió el archivo (C:\Labs\Isos). Si hay varios archivos ISO en la carpeta, se le pedirá que seleccione la ISO que quiere usar. Seleccione la ISO de Windows Server. Si se le pide que dé formato a una unidad, seleccione N.

Advertencia

No seleccione la ISO de Azure Stack HCI: creará el disco principal de Azure Stack HCI (VHD) en la siguiente sección.

La creación de los discos primarios puede tardar hasta 1 o 2 horas, aunque podría ser mucho menos. Cuando haya finalizado, el script le preguntará si se deben quitar los archivos innecesarios. Si selecciona Y, quitará los dos primeros scripts porque ya no son necesarios. Presione Entrar para continuar.

Creación del disco principal de Azure Stack HCI

Descargue la función Convert-WindowsImage.ps1 en la carpeta C:\Lab\wslab_xxx\ParentDisks como Convert-WindowsImage.ps1. A continuación, ejecute CreateParentDisk.ps1 como administrador. Elija la ISO de Azure Stack HCI de C:\Labs\Isos y acepte el nombre y el tamaño predeterminados.

La creación del disco primario llevará un tiempo. Cuando se complete la operación, se le pedirá que inicie las VM. No lo haga todavía. Escriba N.

Implementación de VM

Para ejecutar Deploy.ps1, haga clic con el botón derecho y seleccione Ejecutar con PowerShell. El script tardará entre 10 y 15 minutos en completarse.

Instalación de actualizaciones y software de sistema operativo

Ahora que las VM están implementadas, deberá instalar las actualizaciones de seguridad y el software necesarios para administrar el laboratorio.

Actualización del controlador de dominio y las VM de Windows Admin Center

Inicie sesión en el host de virtualización e inicie el Administrador de Hyper-V El controlador de dominio del bosque privado ya debe estar en ejecución (MSLab-DC). Vaya a Máquinas virtuales, seleccione el controlador de dominio y conéctese a él. Inicie sesión con el nombre de usuario y la contraseña que especificó o, si no los cambió, use los valores predeterminados: LabAdmin/LS1setup!

Instale las actualizaciones de seguridad necesarias y reinicie la VM del controlador de dominio si es necesario. Esto puede tardar un tiempo y es posible que tenga que reiniciar la VM varias veces.

En el Administrador de Hyper-V, inicie la VM de Windows Admin Center (MSLab-AdminCenter), que ejecuta Server Core. Conéctese, inicie sesión y escriba sconfig. Seleccione Download and install security updates (Descargar e instalar actualizaciones de seguridad) y reinicie, si es necesario. Esto puede tardar un tiempo y es posible que tenga que reiniciar la VM y escribir sconfig varias veces.

Instalación de Microsoft Edge en el controlador de dominio

Necesitará un explorador web en la VM del controlador de dominio para poder usar Windows Admin Center en el bosque privado. Es probable que Internet Explorer se bloquee por motivos de seguridad, por lo que se recomienda usar Microsoft Edge. Si Edge aún no está instalado en la VM del controlador de dominio, deberá instalarlo.

Para instalar Microsoft Edge, conéctese a la VM del controlador de dominio desde el Administrador de Hyper-V e inicie una sesión de PowerShell como administrador. A continuación, ejecute el código siguiente para instalar e iniciar Microsoft Edge.

#Install Edge
Start-BitsTransfer -Source "https://aka.ms/edge-msi" -Destination "$env:USERPROFILE\Downloads\MicrosoftEdgeEnterpriseX64.msi"
#Start install
Start-Process -Wait -Filepath msiexec.exe -Argumentlist "/i $env:UserProfile\Downloads\MicrosoftEdgeEnterpriseX64.msi /q"
#Start Edge
start microsoft-edge:

Instalación de Windows Admin Center en modo de puerta de enlace

Con Microsoft Edge en la máquina virtual del controlador de dominio, descargue este script en la máquina virtual del controlador de dominio y guárdelo con una extensión de nombre de archivo.ps1.

Haga clic con el botón derecho en el archivo, elija Editar con PowerShell y cambie el valor de $GatewayServerName de la primera línea para que coincida con el nombre de la VM de AdminCenter sin el prefijo (por ejemplo, AdminCenter). Guarde el script y ejecútelo. Para hacerlo, haga clic con el botón derecho en el archivo y seleccione Ejecutar con PowerShell.

Inicie sesión en Windows Admin Center.

Debería poder acceder a Windows Admin Center desde Edge en DC: http://admincenter

Puede que el explorador le advierta que se trata de una conexión no segura, pero puede continuar.

Agregar un adaptador de red accesible externamente (opcional)

Si el laboratorio está en una red privada, es posible que desee agregar una NIC accesible externamente a la VM de Admin Center para poder conectarse a ella y administrar el laboratorio desde fuera del bosque privado. Para ello, use Windows Admin Center para conectarse al host de virtualización (no al controlador de dominio) y vaya a Máquinas virtuales > MSLab-AdminCenter > Configuración > Redes. Asegúrese de que tiene un conmutador virtual conectado a la red correspondiente. Busque Tipo de conmutador = Externo (por ejemplo, MSLab-LabSwitch-External). A continuación, agregue o enlace una NIC de VM a este conmutador virtual externo. Asegúrese de activar la casilla "Allow management OS to share these network adapters" (Permitir que el sistema operativo de administración comparta estos adaptadores de red).

Tome nota de las direcciones IP de los adaptadores de red de la VM de AdminCenter. Anexe :443 a la dirección IP de la NIC accesible externamente y debería poder iniciar sesión en Windows Admin Center, y crear y administrar el clúster desde un explorador web externo, como https://10.217.XX.XXX:443 .

Instalación de actualizaciones del sistema operativo en las VM de Azure Stack HCI

Inicie las VM de Azure Stack HCI mediante el Administrador de Hyper-V en el host de virtualización. Conéctese a cada VM y descargue e instale actualizaciones de seguridad mediante Sconfig en cada una de ellas. Es posible que tenga que reiniciar las VM varias veces. (Puede omitir este paso si prefiere instalar las actualizaciones del sistema operativo más adelante con el asistente para la creación de clústeres).

Habilitación del rol de Hyper-V en las VM de Azure Stack HCI

Si las VM del clúster ejecutan Azure Stack HCI 20H2, deberá ejecutar un script para habilitar el rol de Hyper-V en las VM. Guarde este script en C:\Lab el host de virtualización como PreviewWorkaround.ps1.

Haga clic con el botón derecho en el archivo PreviewWorkaround.ps1 y seleccione Editar con PowerShell. Cambie las variables $domainName, $domainAdmin y $nodeName si no coinciden; p. ej.:

$domainName = "corp.contoso.com"
$domainAdmin = "$domainName\labadmin"
$nodeName = "MSLab-AzSHCI1","MSLab-AzSHCI2","MSLab-AzSHCI3","MSLab-AzSHCI4"

Guarde los cambios, abra una sesión de PowerShell como administrador y ejecute el script:

PS C:\Lab> ./PreviewWorkaround.ps1

El script tardará algún tiempo en ejecutarse, especialmente si ha creado muchas VM. Debería ver el mensaje "MSLab-AzSHCI1 MSLab-AzSHCI2 is now online. Proceeding to install Hyper-V PowerShell." (MSLab-AzSHCI1 MSLab-AzSHCI2 está en línea.Porcedemos a instalar PowerShell de Hyper-V) Si el script parece inmovilizarse después de mostrar el mensaje, presione Entrar para reactivarla. Al acabar, debería ver el mensaje "MSLab-AzSHCI1 MSLab-AzSHCI2 is now online. Proceed to the next step..." (MSLab-AzSHCI1 MSLab-AzSHCI2 está en línea. Continúe con el paso siguiente...).

Agregar adaptadores de red adicionales (opcional)

En función de cómo quiera usar el clúster, es posible que desee agregar un par de adaptadores de red más a cada VM de Azure Stack HCI para realizar pruebas más versátiles. Para hacerlo, conéctese al servidor host con Windows Admin Center y vaya a Máquinas virtuales > MSLab-(nodo) > Configuración > Redes. Asegúrese de seleccionar Opciones avanzadas > Permitir la suplantación de direcciones MAC. Si esta configuración no está habilitada, es posible que las pruebas de conectividad devuelvan errores al intentar crear un clúster.

Registro de Windows Admin Center con Azure

Conéctese a Windows Admin Center en el bosque privado mediante la dirección URL externa o mediante Edge en el controlador de dominio y Registre Windows Admin Center con Azure.

Limpieza de recursos

Si seleccionó Y para limpiar archivos y carpetas innecesarios, la limpieza ya está hecha. Si prefiere hacerlo manualmente, vaya a C:\Labs y elimine los archivos innecesarios.

Pasos siguientes

Ya está listo para continuar con el asistente para la creación de clústeres.