Adam el Automatizador

El PowerCLI de VMWare es la forma de facto de gestionar vCenter con PowerShell. En este tutorial, usted va a aprender cómo empezar desde cero; la descarga, la instalación y la comprensión de cómo PowerCLI puede ayudarle a hacer más.

A lo largo de este viaje aprenderás:

  • Cómo detectar versiones históricas de PowerCLI que puedes encontrar en scripts heredados
  • Cómo instalar la versión más reciente de PowerCLI
  • Usar el Código VMware como recurso
  • Cómo instalar VMware PowerCLI tanto en Windows PowerShell 5.1 y PowerShell 6/7 para su uso multiplataforma.

«En la mayoría de los aspectos, VMware PowerCLI es la interfaz administrativa más consistente en la historia del hipervisor».

El comentario anterior, parafraseado, fue compartido sobre la resistencia y la importancia de PowerCLI en el conjunto de herramientas de un administrador de sistemas. Fue compartido durante una sesión de VMware PowerCLI en el PowerShell Summit de 2019.

La interacción con vSphere y VMware ha pasado por una multitud de iteraciones, desde el cliente de software original, el cliente flash, HTML5 y las versiones de cliente web flexible. En cada nueva versión, las interfaces cambiaron en formas a menudo defectuosas o carentes de características.

En el lado opuesto, la sintaxis de VMware PowerCLI ha permanecido estable a lo largo de su ciclo de vida con sólo un cambio de distribución. Ese gran cambio fue la transición de un snapin de PowerShell a un módulo de PowerShell.

PowerCLI es efectivamente el último hombre en pie para la consistencia cuando se administran los productos de VMware.

Table of Contents

De Snapin a sin acceso público

La ubicación original de descarga para VMware PowerCLI estaba detrás de un enlace de la página de PowerCLI 5.1. Debido a esta restricción, el público sólo tenía un acceso limitado a esta herramienta.

PowerCLI 5.1 y anteriores eran también un PSSnapin en lugar de un módulo haciendo la portabilidad mucho más difícil. Como seguidor de este blog, probablemente reconocerás que se trata de un formato heredado de este tipo de herramientas. Debido a los engorrosos pasos de instalación, los snapins resultaron más difíciles de conseguir la adopción masiva de PowerCLI. Por suerte para ti, PowerCLI a partir de la última versión 6.0 se envía como un módulo de PowerShell, y no como un snapin!

Con el lanzamiento de PowerCLI 6.0 en septiembre de 2015, el juego había comenzado a cambiar. Esta versión fue la primera iteración lanzada como un módulo de PowerShell, el envío con cerca de 400 cmdlets total. Sin embargo, la necesidad de una cuenta my.vmware.com seguía presente hasta la versión 6.5.1 lanzada el 20/4/2017 a la galería PowerShell.

En la versión actual (11.3.0) de VMware PowerCLI, el módulo cuenta con algo menos de 700 cmdlets para la cobertura administrativa sobre multitud de productos VMware. Esos productos incluyen vCenter, vCloud Director, VMware Horizon, y muchos otros.

La lista de cmdlets continúa creciendo con el portafolio de VMware, pero los estándares probados y verdaderos de PowerCLI se mantienen fuertes como una fuerza de consistencia.

Cmdlets en el módulo PowerCLI PowerShell

Requisitos previos

Estamos a punto de saltar a una demo, así que asegúrate de tener todos estos requisitos previos para poder seguirme.

  • Host de VMware o servidor vCenter para las pruebas de validación
  • Máquina cliente Windows, Mac o Linux

Descarga de VMware PowerCLI

El nuevo hogar a largo plazo para el equipo del proyecto PowerCLI está establecido en https://code.vmware.com. Todas y cada una de las peticiones de características planteadas por la comunidad, los comentarios y la documentación de este módulo forman ahora parte del mismo sitio que el SDK, la API y los recursos de certificación.

Si tiene alguna pregunta o desea plantear peticiones de características directamente al equipo, puede ponerse en contacto tanto con el equipo de PowerCLI como con la comunidad que rodea este proyecto en code.vmware.com. Tanto la comunidad como el equipo del proyecto de VMware son muy receptivos a las preguntas, preocupaciones y nuevas ideas a medida que surgen.

Si desea realizar una descarga de PowerCLI a través de la web, el equipo de PowerCLI proporciona un enlace directo a dos opciones para su módulo de PowerShell:

  • El enlace de la Galería de PowerShell para descargar e instalar utilizando el gestor de paquetes de PowerShell
  • Un archivo .zip del contenido del módulo, para ser instalado manualmente

La Galería PowerShell es, con mucho, la forma más común de descargar PowerCLI pero el archivo zip también funcionará. Tenga en cuenta que usted no tiene que utilizar el enlace de la Galería PowerShell aquí. También puede descargarlo a través de PowerShell.

Instalación de VMware PowerCLI en Windows PowerShell

Hay algunas formas diferentes de instalar PowerCLI.

Extrayendo el archivo ZIP

Si lo ha descargado a través de la web desde la página mencionada, tendrá que instalarlo manualmente. Debe tener PowerCLI en un lugar donde PowerShell pueda verlo.

Para instalar el módulo a través del paquete zip proporcionado, tendrá que extraer el contenido a la ubicación del módulo de su elección. Esta ubicación será la de su perfil de usuario (para el ámbito no administrativo) o a la carpeta de módulos de todo el sistema.

%UserProfile%\Documents\WindowsPowerShell\ModulesC:\Program Files\WindowsPowerShell\Modules

Extraiga el contenido .zip a una de las ubicaciones anteriores.

Galería de PowerShell

La forma más fácil y rápida de descargar e instalar PowerCLI hoy en día es utilizar la descarga del módulo desde la Galería de PowerShell dentro de una consola de PowerShell. A continuación encontrará un vídeo rápido sobre los pasos generales de instalación de un nuevo módulo a PowerShell con este método.

Pero, en general, puede realizar lo siguiente desde un prompt administrativo de PowerShell para realizar el trabajo.

PS51> Install-Module VMware.PowerCLI

Si desea realizar una instalación de PowerCLI en una estación de trabajo en la que carece de privilegios administrativos, puede utilizar el parámetro Scope para instalar el módulo en la ruta de módulos de su perfil de usuario.

PS51> Install-Module VMware.PowerCLI -Scope CurrentUser

Instalación de VMware PowerCLI en PowerShell 6 en Linux

Actualmente, también puede instalar PowerCLI en sistemas que no sean Windows. Por ejemplo, podemos instalar PowerCLI en PowerShell Core en Ubuntu. Una vez más, dependiendo de si usted ha elegido para descargar el archivo zip, el enlace web de la Galería de PowerShell o directamente a través de la consola de PowerShell, el proceso de instalación es un poco diferente.

Extracción del archivo ZIP

Dependiendo del sabor de Linux, usted extraerá el contenido del archivo .zip a diferentes ubicaciones.

Abra PowerShell en Linux ejecutando pwsh en su terminal. Localice las posibles ubicaciones de PSModulePath utilizando el siguiente comando:

PS61> ($env:PSModulePath).split(":")
Directorios en PSModulePath

Una vez que haya determinado dónde desea instalar los archivos del módulo, descárguelos en esa ubicación y prepárese para la descompresión. Los descomprimirá en la carpeta /home/ para el acceso del usuario o en la ubicación /opt/ para el acceso del sistema.

Para este ejemplo de una instalación basada en Linux, estoy usando Ubuntu 18.04 e instalaré VMware PowerCLI 11 usando el archivo .zip descargado desde aquí, instalando el módulo para que todos los usuarios de esta máquina puedan acceder a él.

> cd /opt/microsoft/powershell/6/Modules> sudo apt install unzip> sudo wget https://vdc-download.vmware.com/vmwb-repository/dcr-public/8bf09c32-43c0-46d4-8816-92515c3b8228/15761272-b339-4da4-888a-4b8633f9a964/VMware-PowerCLI-11.3.0-13990089.zip> sudo unzip ./VMware-PowerCLI-11.3.0-13990089.zip

A continuación, puede importar este módulo, ya que los archivos del módulo están ahora en una de sus $PSModulePath ubicaciones, a través de una ejecución normal de:

Import-Module VMware.PowerCLI

Instalar el snapin de VMware PowerCLI heredado

A veces puede encontrarse con que tiene que instalar el snapin de PowerCLI más antiguo. Tal vez usted ha asumido la responsabilidad de algún código heredado y necesita solucionar problemas. Para evitar volver a crear sus scripts existentes, es necesario instalar el snapin antiguo.

Para instalar el snapin antiguo, necesitará una cuenta my.vmware.com para iniciar sesión y recuperar el archivo VMware-PowerCLI-5.1.0-3090428.exe. Una vez descargado, instale el snapin mediante el ejecutable a través de una instalación normal de aplicaciones de Windows.

A continuación, puede ejecutar Add-PSSnapin para cargar los cmdlets de VMware en su sesión, o lanzar la consola de VMware PowerCLI proporcionada de forma independiente.

Abajo puede ver que estoy utilizando el cmdlet Add-PSSnapin para añadir la versión 5.1 de PowerCLI a mi sesión de consola actual.

PS51> Add-PSSnapin VMware*
Snapins de PowerCLI

Lanzando el acceso directo de VMware PowerCLI independiente que se instala con la versión 5.1.

PowerCLI v5.1 console

Nótese que el snapin anterior no es compatible con PowerShell 6/7.

Verificación de la instalación de PowerCLI

Verificar que su instalación de PowerCLI es exitosa es lo mismo, independientemente de su versión de PowerShell. El primer paso, confirmar la presencia de los módulos desde la consola de PowerShell.

Get-Module -ListAvailable VMware* 
Módulos de PowerCLI disponibles

A continuación, intente utilizar PowerCLI para conectarse a vCenter con el cmdlet Connect-VIServer. Esto no sólo verificará que el módulo se instaló correctamente, sino que también probará si se conecta o no a su infraestructura correctamente.

En Windows

PS51> Connect-VIServer <FQDN of vCenter or ESXi Host>
Conectarse a vCenter con VMware PowerCLI en Windows

En Linux

Cuando se verifica la instalación en Linux, primero se debe establecer la configuración de la conexión para tener en cuenta un certificado no válido (o autofirmado por defecto) si se encuentra algún problema de conexión. A continuación estoy usando PowerCLI para conectarme a vCenter.

PS> Set-PowerCLIConfiguration -InvalidCertificateAction:ignorePS> Connect-VIServer <FQDN of vCenter or ESXi Host>
Conectándose a vCenter con VMware PowerCLI en Linux

¡Ya que pudo conectarse exitosamente a su endpoint de VMware, el PowerCLI está funcionando exitosamente!

¡Adelante y PowerCLI!

A partir de este punto, ya estás preparado para responder a esa proverbial pregunta de «¿Cómo instalo VMware PowerCLI?». Ahora puede comenzar a trabajar en el scripting de sus despliegues de configuración, informes de VM y tareas de mantenimiento. Permanezca atento a este blog para nuevos y próximos artículos sobre cómo empezar con PowerCLI!

Lectura adicional

  • Cómo importar un archivo OVF en VMware con PowerShell

Deja una respuesta

Tu dirección de correo electrónico no será publicada.