• Ir a navegación principal
  • Ir al contenido principal
  • Ir a la barra lateral primaria

ITadmins

Para administradores de sistemas

  • Windows Server
  • Microsoft Exchange
  • Skype for Business
  • Office 365
  • Azure
    • Facebook
    • LinkedIn
    • Twitter

Cluster Nano Server 2016 con Storage Spaces Direct

08/11/2019 By David Vázquez Cupeiro 2 comentarios

En este artículo vamos a explicar los pasos a seguir para crear un Cluster Nano Server 2016. Montaremos dos nodos para implementar un Cluster Hyper-V virtual (a través de la Virtualización Anidada ó Nested Virtualization). El almacenamiento será con Storage Spaces Direct (S2D) virtualizado también, por lo que vamos a necesitar un buen equipo de pruebas… no menos de un i7, a ser posible con disco SSD y 16Gb de RAM o más. Será necesario un Controlador de Dominio, pero en esta guía omitiremos la promoción del mismo. 

Creación de los VHDX

Para comenzar este proceso necesitamos una ISO de Windows Server 2016 que contenga la carpeta NanoServer, la cual copiaremos a un directorio de nuestro equipo. Esto servirá para crear los VHDX que utilizaremos como discos duros de nuestras máquinas Nano Server. Debemos mantener esa ISO conectada en una unidad DVD y tomar nota de la letra, por ejemplo E:\.

Una vez copiada la carpeta, abrimos un PowerShell dentro de ella e importamos el módulo de Nano Server para proceder con la creación de los discos VHDX:

 
Import-Module .\NanoServerImageGenerator\NanoServerImageGenerator.psd1

Podemos crear cuantos discos queramos, válidos para Cluster Hyper-V con el siguiente comando:

 
New-NanoServerImage -MediaPath E: -BasePath "C:\Temp\base\" -Compute -Clustering -Storage -ComputerName "nanonode1" -DeploymentType Guest -Edition Datacenter -DomainName domain.local

En donde Compute, Clustering y Storage son los roles de Windows queremos usar en ese VHDX. Debemos aclarar que DeploymentType, es en donde se indica si será para máquina física o para máquina virtual de Hyper-V. En esta guía será para máquina Hyper-V, si fuera para Hosts físicos, Guest se cambiaría por Host.
Tras la creación de los dos VHDX de nuestros futuros Nodos de Cluster podemos ver que aparecen ambos dentro de la carpeta, no os olvidéis de cambiar el nombre de ComputerName, yo les he puesto nanonode1 y nanonode2:

Creación de las Máquinas Virtuales para usar como Nodos de Cluster

Crearemos dos máquinas virtuales «Generación 2» con al menos 3Gb de memoria RAM , una tarjeta de red y dos núcleos de procesador cada una. En la creación de las máquinas elegimos añadir un disco posteriormente. Estos son los nombres que yo he elegido para mis nodos: NanoNode1 y NanoNode2.

Después, conectamos los discos VHDX que hemos creado antes en una controladora SCSI, correspondientemente por su nombre, y arrancamos ambas máquinas, al hacerlo, veremos la siguiente imagen:

A partir de este momento debemos configurar IP, Firewall, etc,… Siendo éste un entorno de prueba, voy a deshabilitar el Firewall, pero recordad que en un entorno de producción esto no sería lo aconsejable. Por lo tanto, introducimos el «User name» y «Password» en la consola y configuramos IP y Máscara de Subred en ambos NanoNodes (en el ejemplo yo he configurado el NanoNode1 con la 192.168.69.2 y el NanoNode2 con la 192.168.69.3, ambas con máscara 255.255.255.0).

Ahora, para agilizar el proceso, vamos a realizar el resto de tareas con PowerShell desde el Host físico que contenga nuestros NanoNodes virtuales, para ello nos conectamos a los nodos con el siguiente comando:

Enter-PSSesion -VMname NanoNode1

Una vez conectados a nuestro NanoNode1, sacamos información para obtener el InterfaceIndex de su tarjeta de red:

Get-NetAdapter

Configuramos la DNS, en mi caso 192.168.69.1 (dirección IP de mi Controlador de Dominio):

Set-DnsClientServerAddress -InterfaceIndex 10 -ServerAddresses 192.168.69.1

Deshabilitamos los perfiles de Firewall:

NetSh Advfirewall set allprofiles state off

Repetiremos el proceso con un Enter-PSSesion al NanoNode2.

Añadiendo los NanoNodes al dominio

Vamos a utilizar Djoin para añadir nuestros NanoNodes al dominio. Así pues, entramos en nuestro Controlador de Dominio, y desde CMD o PowerShell como Administrador ejecutamos:

Djoin.exe /provision /domain domain.local /machine nanonode1 /savefile .\odjblob

El comando anterior genera un archivo «odjblob» que utilizaremos más adelante en el NanoNode1. A mayores añadimos como Host de confianza la IP del NanoNode1:

Set-Item WSMan:\localhost\Client\TrustedHosts -Value 192.168.69.2

Desde el explorador de archivos, estando en nuestro Domain Controller, copiamos el archivo generado anteriormente (odjblob) a la raíz del NanoNode1 accediendo a través de su ruta UNC:

\\192.168.69.2\C$\

Desde nuestro Host físico abrimos sesión al NanoNode1:

Enter-PSSesion -VMname NanoNode1

Ejecutamos el siguiente comando y reiniciamos la máquina:

Djoin.exe /requestodj /loadfile C:\odjblob /windowspath c:\windows /localos

Repetiremos todo el proceso para nuestro NanoNode2 y tras reiniciar ambos nodos comprobamos (a través de Enter-PSSesion) si nuestras operaciones han surtido efecto. También podemos intentar logarnos en el Dominio desde la consola de Nano Server correspondiente de cada máquina virtual.

Creación del Cluster Hyper-V con almacenamiento S2D

Aclarar primero que esta parte, sobre todo la creación del S2D para almacenamiento del Cluster, es totalmente personalizable y ampliable, para lo cual sólo hay que añadir más discos y tener en cuenta que en un S2D Virtualizado no se puede usar Caché de disco.

Tras la importante aclaración comenzamos apagando los NanoNodes y aplicando los comandos que nos permitirán añadir máquinas virtuales anidadas dentro de nuestro NanoCluster. Así pues, desde PowerShell en nuestro Host físico ejecutaremos:

Set-VMProcessor -VMName NanoNode1 -ExposeVirtualizationExtensions $true
Set-VMProcessor -VMName NanoNode2 -ExposeVirtualizationExtensions $true

Arrancaremos en este momento los dos NanoNodes y esperamos a ver la pantalla de inicio de sesión, no hace falta logarse, ya que entraremos como antes a través de Enter-PSSesion en uno de ellos:

Enter-PSSesion -VMname NanoNode1

Si están los dos nodos en dominio procederemos a crear el Cluster con el siguiente comando, cuya IP (StaticAddress) y nombre (Name), son totalmente personalizables… yo he elegido NanoCluster con la IP 192.168.69.100:

 
New-Cluster -Name NanoCluster -NoStorage -Node NanoNode1,NanoNode2 -Force -verbose -StaticAddress 192.168.69.100

Deberíamos comprobar que desde nuestro Controlador de Dominio o cualquier otra máquina añadida al Dominio podemos hacer Ping al nombre y la IP de nuestro Cluster sin problemas.

Asegurada la creación del Cluster, procedemos a añadir los discos duros virtuales para crear el S2D virtual, siempre desde PowerShell en nuestro Host físico:

New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano11.vhdx"
Add-VMHardDiskDrive -VMName NANONODE1 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano11.vhdx"
New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano12.vhdx"
Add-VMHardDiskDrive -VMName NANONODE1 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano12.vhdx"
New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano13.vhdx"
Add-VMHardDiskDrive -VMName NANONODE1 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano13.vhdx"
New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano14.vhdx"
Add-VMHardDiskDrive -VMName NANONODE1 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano14.vhdx"
New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano21.vhdx"
Add-VMHardDiskDrive -VMName NANONODE2 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano21.vhdx"
New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano22.vhdx"
Add-VMHardDiskDrive -VMName NANONODE2 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano22.vhdx"
New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano23.vhdx"
Add-VMHardDiskDrive -VMName NANONODE2 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano23.vhdx"
New-VHD -SizeBytes 10GB -Path "c:\Temp\S2Ddisknano24.vhdx"
Add-VMHardDiskDrive -VMName NANONODE2 -ControllerType SCSI -Path "c:\Temp\S2Ddisknano24.vhdx"

Importante: En este momento, nace la necesidad de hablar de un Host-Manager, que deberíamos de usar como máquina de acceso y control de nuestro entorno de NanoCluster. En mi caso he creado otra máquina virtual Windows Server 2016 con 4Gb de RAM la cual debe de tener el rol de Hyper-V y la característica de FailoverCluster instalados (recordad que es necesario aplicarle también el Set-VMProcessor que vimos más arriba para que pueda usar Hyper-V, es decir, virtualización anidada). Este Host-Manager se usará para poder gestionar el Cluster desde la consola FailoverClusterManager de manera más ágil y cómoda.

Desde nuestro nueva máquina Host-Manager, que debe estar también incluída en el dominio y logados como Administrador del Dominio, abriremos una PSSesion a uno de los NanoNodes pero en este caso de la siguiente forma:

Enter-PSSesion –Computername NanoNode1

Para luego crear el Storage Pool S2D y los Cluster Shared Volumes que contendrán nuestras máquinas virtuales anidadas:

Enable-ClusterS2D -CacheState:0 -Verbose -PoolFriendlyName NanoPool -CimSession NanoCluster -SkipEligibilityChecks -Autoconfig $true

Desde la misma consola podemos crear (siendo exitosa la creación del Storage Pool) los volúmenes correspondientes. En mi caso, con uno es suficiente: 20Gb ReFS dentro del pool NanoPool, aquí cada uno puede usar los nombres que desee:

New-Volume -FriendlyName "NanoNested" -Filesystem CSVFS_ReFS -StoragePoolFriendlyName NanoPool -size 20GB -ResiliencySettingName Mirror

A partir de este momento, como en cualquier otro tipo de entorno Cluster Hyper-V y usando como almacenamiento para las máquinas «C:\ClusterStorage» en cada NanoNode, podemos empezar a crear las máquinas anidadas (siempre y cuando nuestro entorno nos lo permita). Aquí todo el mundo se encuentra de frente con un problema bastante común, así que dejadme daros una pista: desde una PSSesion a cada NanoNode, podemos configurar el «C:\ClusterStorage» como carpeta para Hyper-V, tanto VHDX como archivos de configuración, siempre como Administrador:

Set-VMHost -VirtualHardDiskPath "C:\ClusterStorage\Volume1\VHDXpath" -VirtualMachinePath " C:\ClusterStorage\Volume1\ConfigurationFiles"

Hasta aquí la creación de nuestro NanoCluster, espero os sirva de ayuda, un saludo! 😉

Archivado en:Windows Server Etiquetado con:cluster, Nano Server, Nested, S2D, Storage Spaces Direct, Windows Server 2016

Interacciones con los lectores

Comentarios

  1. Mirix dice

    04/02/2020 en 12:04

    1.- «Enter-PSSesion» should be «Enter-PSSession» (note the double s in session).
    2.- Certain Windows Server 2016 ISOS do not have the PowerShell modules for Failover Cluster. The workaround is installing the feature on the DC and work from there. However, certain commands such as NewVolume need to be run from within the nodes.
    3.- There is an extra space on the last command that could drive one nuts:
    -VirtualMachinePath » C:\…
    Remove the extra space between the quotation marks and the drive.

    Responder
    • José Ramón Maseda Lozano dice

      21/03/2020 en 15:02

      Thank you Mirix for your feedback! 🙂

      Responder

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Barra lateral primaria

LinkedIn
Share
Twitter
Follow Me
Tweet
Facebook
fb-share-icon

Últimos Artículos

  • Listar Recursos en un Resource Group en Azure
    Por Juan Otero
  • Agregar Conexiones Viva para el escritorio de Microsoft Teams
    Por Raul Soler
  • PowerShell 7
    Por Juan Otero
  • Conceptos AD: Replicación I
    Por José Ramón Maseda Lozano
  • Networking III: Capturando el tráfico
    Por José Ramón Maseda Lozano

Saber más de…

Active Directory ADCS Azure Azure AD Certificados cluster Conceptos AD Content Index Database Exchange Online FSMO Group Policy Guía Hub Hyper-V IIS Journaling Loopback Lync Microsoft Exchange Migracion NAT Networking Office 365 OWA Password PKI PowerShell Router script Servicio de Transporte Servicio Front-End Sharepoint SharePoint Online Skype Skype For Business STOREDRV Switch Teams Virtual Directory WDS Windows 10 Windows Server Windows Server 2012 R2 Windows Server 2016
  • Inicio
  • Sobre Nosotros
  • Windows Server
  • Microsoft Exchange
  • Skype for Business
  • Office 365
  • Azure
    • Facebook
    • LinkedIn
    • Twitter

Copyright © 2023 ITadmins.es

es Spanish
en Englishes Spanish