Automatizar procesos sobre vDS con PowerCLI – Parte 1 – Primeros pasos y configuraciones

Estreno el nuevo blog con un nuevo post de lo que más me apasiona, los scripts. En este post, vamos a hablar sobre la automatización de vDS, es el primero de una serie de post.

Antes de la implementación de una infraestructura virtual, ¿quién no ha considerado automatizar la implementación de redes? Bien, veamos la forma de automatizarlo.

Primero, necesitamos tener instalado en nuestro PowerCLI el módulo de VMware para automatización de procesos de vDS. Nosotros podemos ver los módulos que tenemos instalados, ejecutando «Get-Module» y podemos checkear los módulos instalados.

cloudvm_getmodule

Si no tenemos instalado el módulo, podemos hacerlo lanzando el siguiente comando:

Install-Module -Name VMware.VimAutomation.Vds

Una vez instalado, si ejecutamos «Get-Command -Module VMware.VimAutomation.Vds«, podemos ver los cmdlets incluidos en el PowerCLI Module.

cloudvm_getcommand

Bien ¿cuál sería nuestro primer paso?

El primer paso es crear un nuevo Distributed Switch. Para crear un nuevo vDS, vamos a usar el cmdlet «New-VDSwitch«. ¿Qué opciones podemos personalizar en nuestro vDS?

$vDSwitch = New-VDSwitch -Name NombreVDS -Location NameDatacenter or NameNetworkFolder -NumUplinkPorts NumberOfUplinks -mtu SizeMTU(Default 1500) -Version VersionOfDistributedSwitch

Example: $vDSSwtich = New-VDSwitch -Name MyFirstVDS -Location (Get-Datacenter).Name -NumUplinkPorts 8 -mtu 1500 -version 6.5.0

cloudvm_createVDS

También podemos crear un nuevo vDS que importe la configuración de otro vDS. Por ejemplo, tenemos un vDS configurado en nuestro primer Site, y queremos crear un nuevo vDS con la misma configuración. El primer paso sería, exportar la configuración del vDS «origen» en un archivo zip. El comando se vería así:

Export:

Export-VDSwitch -VDSwitch (Get-VDSwitch -Name «MySourcevDS») -Destination «C:\Just2Kloud\MySourceVDS.zip»

** Podemos exportarlo, simplemente con la config del vDS, especificando la opción

«-WithoutPortGroups»

Import:

$vDSSwtich2 = New-VDSwitch -Name MySeconVDS -Location (Get-Datacenter).Name -BackupPath «C:\Just2Kloud\MySourceVDS.zip»

Bien, ya hemos creado nuestro vDS, el siguiente paso debería ser agregar hosts a nuestro vDS. ¡¡¡Entonces vamos a ello!!!

Para este paso, vamos a usar el siguiente PowerCLI cmdlet «Add-VDSwitchVMHost«. Para añadir hosts a nuestro vDS.

Get-VDSwitch $vDSSwtich | Add-VDSwitchVMHost -VMHost «myesxi.cloudvm.local»

Si lo queremos hacer de manera masiva, migrando todos los ESXi de un cluster, lo podemos hacer de la siguiente manera:

# Obtenemos un listado de los ESXi del Cluster e iremos incluyendo los host en nuestro vDS
$List_ESXi = Get-Cluster -Name "Just2Kloud-Cluster" | Get-VMHost
$VDS = Get-VDSwitch -Name "MyFirstVDS"
foreach($ESXi in $List_ESXi)
{
    Write-Host "Add ESXi : $ESXi to VDS : $VDS"
    Get-VDSwitch $vDSSwtich | Add-VDSwitchVMHost -VMHost $ESXi -confirm:$false
}

Ok, ya hemos creado el vDS, también hemos agregado todos los ESXi a nuestro vDS. ¿Cuál podría ser el siguiente paso? Vamos a agregar adaptadores de red de nuestro a los dvUplinks de nuestro vDS. Para ello, usaremos el siguiente código para agregar las vmnics de ESXi en orden.

** En próximas publicaciones, explicaré cómo asignar una vmnic a un enlace específico y también veremos cómo migrar el vmkernel de Management de vSS a vDS.

# Nosotros deberíamos introducir este trozo de código dentro de un foreach para que por cada ESXi, vayamos añadienndo vmnics a los Uplinks de nuestro vDS

$UPLINK1 = Get-VMHost $ESXi | Get-VMHostNetworkAdapter -Physical -Name vmnic0
$UPLINK2 = Get-VMHost $ESXi | Get-VMHostNetworkAdapter -Physical -Name vmnic1
$UPLINK3 = Get-VMHost $ESXi | Get-VMHostNetworkAdapter -Physical -Name vmnic2
$UPLINK4 = Get-VMHost $ESXi | Get-VMHostNetworkAdapter -Physical -Name vmnic3

$VDS | Add-VDSwitchPhysicalNetworkAdapter -VMHostNetworkAdapter $UPLINK1 -Confirm:$false

$VDS | Add-VDSwitchPhysicalNetworkAdapter -VMHostNetworkAdapter $UPLINK2-Confirm:$false

$VDS | Add-VDSwitchPhysicalNetworkAdapter -VMHostNetworkAdapter $UPLINK3 -Confirm:$false

$VDS | Add-VDSwitchPhysicalNetworkAdapter -VMHostNetworkAdapter $UPLINK4 -Confirm:$false

Espero que este post os haya sido de ayuda y os haya gustado. En próximos post veremos como meternos más a fondo con los vDS.

Comparte si te gusta 🙂

Leave a Reply

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

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.