Saltar al contenido

5 cmdlets de PowerCLI para administrar máquinas virtuales

Get-VM - 1

En Gestión de infraestructura virtual y en la nube con VMware vSphere PowerCLI, presentamos a los lectores las herramientas que automatizan las tareas rutinarias en la nube.

Llama a esto PowerCLI Es una extensión de Windows PowerShell que le permite usar más de 600 cmdlets para trabajar con infraestructura en la nube. La última versión del paquete está disponible en el sitio web oficial de VMware.

La funcionalidad flexible del complemento facilita aún más la administración de máquinas virtuales. La única condición es comprender cómo funciona en la práctica.

Get-VM

Get-VM es un enfoque clásico que le permite recuperar una lista de máquinas virtuales en el lado de vCenter. Además, al usar Get-VM con el cmdlet estándar PowerShell Select-Object, puede consultar características de interés, como el nombre de la máquina virtual, la cantidad de procesadores, la cantidad de RAM y otra información. Luego, usando Export-CSV, exporte los datos a un archivo CSV para trabajar más con la información recibida.

Además de trabajar con objetos de VM, Get-VM se utiliza para buscar instantáneas en un entorno virtual que, muy probablemente, podrían haberse olvidado. En el siguiente ejemplo, se solicita una lista de instantáneas de VM y el resultado se envía a un archivo de texto snapshots.txt.

Get-VM - 2

Move-VM

Si el administrador necesita mover máquinas virtuales de un host a otro mediante la línea de comandos, use el cmdlet Move-VM. El siguiente ejemplo selecciona las máquinas virtuales ubicadas en el host esxi01 y usa Move-VM para mover las máquinas virtuales al host esxi02.

Move-VM - 1

Si necesita realizar una «migración en vivo», utilice la siguiente combinación:

Move-VM - 2

Nueva VM

Cuando necesite crear una máquina virtual, use el cmdlet New-VM. Tenga en cuenta que esto crea una máquina virtual vacía, en la que posteriormente se instalarán el sistema operativo y sus aplicaciones.

Nueva VM - 1

Pero también hay opciones de distribución alternativas cuando trabaja con un modelo preparado previamente. En el siguiente ejemplo, la clonación de la máquina virtual OriginalVM crea una máquina virtual NewVM8 y la aloja en el host esxi01.

Nueva VM - 2

Si no tiene la inclinación o el tiempo para crear máquinas virtuales individualmente, use un archivo de respuesta CSV. Contiene cadenas que describen los parámetros de la máquina virtual. Dicho archivo debe definirse de antemano.

New-VM: contenido del archivo CSV

Contenido del archivo CSV

Invocar-VMS

El cmdlet Invoke-VMS proporciona la ejecución remota de comandos y scripts en un sistema operativo Linux invitado de Windows que se ejecuta en una máquina virtual. Esta función ayuda a automatizar tareas en una o más VM.

Tenga en cuenta que el ejemplo anterior ejecuta un script como Bat y usa una variable de entorno con la siguiente sintaxis:%%, por ejemplo% programfiles%. Las comillas externas ($ script = «…») definen una variable de cadena en PowerShell y las comillas internas se utilizan cuando se encuentran espacios en el valor de la variable.

Invocar-VMS

Get-VMHost

El cmdlet Get-VMHost le permite averiguar qué host o centro de datos está ejecutando una máquina virtual. El siguiente ejemplo solicita información sobre una máquina virtual llamada MyVM.

Get-VMHost

Si necesita obtener información sobre un centro de datos, use el cmdlet Get-Datacenter para pasar el objeto al parámetro Location. Entonces, obtenemos la siguiente línea:

Get-VMHost -Location (Get-Datacenter -Name VeeamNewVsphereDatacentre) -VM (Get-VM -Name «Veeam1»)

Califica el artículo