Adam o Automador

O PowerCLI by VMWare é a forma de fato para gerenciar o vCenter com o PowerShell. Neste tutorial, você vai aprender como começar do zero; baixando, instalando e entendendo como o PowerCLI pode ajudar você a fazer mais.

Durante esta jornada você aprenderá:

  • Como identificar versões históricas do PowerCLI que você pode encontrar em scripts legados
  • Como instalar a versão mais recente do PowerCLI
  • Utilizar o VMware Code como recurso
  • Como instalar o VMware PowerCLI em ambos os PowerShell 5 do Windows.1 e PowerShell 6/7 para uso entre plataformas.

“Na maioria dos aspectos, VMware PowerCLI é a interface administrativa mais consistente na história do hypervisor”

O comentário acima parafraseado foi compartilhado sobre a resiliência e importância do PowerCLI em um conjunto de ferramentas do administrador de sistemas. Foi partilhado durante uma sessão VMware PowerCLI no PowerShell Summit em 2019.

Interfacing with vSphere and VMware has been through a multitude of iterations, from the original software client, flash client, HTML5 and flex web-client versions. Em cada nova versão, as interfaces mudaram de forma muitas vezes com bugs ou sem recursos.

No lado oposto, a sintaxe do VMware PowerCLI permaneceu estável durante todo o seu ciclo de vida com apenas uma mudança de distribuição. Essa grande mudança foi a transição de um snapin PowerShell para o módulo PowerShell.

PowerCLI é efetivamente o último homem a defender a consistência ao administrar produtos VMware.

Tabela de Conteúdos

Do Snapin para nenhum Acesso Público

O local original de download do VMware PowerCLI estava atrás de um link de página do PowerCLI 5.1. Devido a esta restrição, o público só tinha acesso limitado a esta ferramenta.

PowerCLI 5.1 e antes era também um PSSnapin em vez de um módulo tornando a portabilidade muito mais difícil. Como um seguidor deste blog, você provavelmente reconhecerá isto como um formato legado para tais ferramentas. Devido aos pesados passos de instalação, os snapins se mostraram mais difíceis de obter a adoção em massa do PowerCLI. Felizmente para si, o PowerCLI a partir da última versão 6.0 vem como um módulo PowerShell, e não como um snapin!

Com aquele lançamento do PowerCLI 6.0 em Setembro de 2015, o jogo tinha começado a mudar. Esta versão foi a primeira iteração lançada como um módulo PowerShell, com um total de cerca de 400 cmdlets. Entretanto, a necessidade de uma conta my.vmware.com ainda estava presente até a versão 6.5.1 lançada em 20/04/2017 para a Galeria PowerShell.

Na versão atual (11.3.0) do VMware PowerCLI, o módulo tem pouco menos de 700 cmdlets para cobertura administrativa sobre uma infinidade de produtos VMware. Esses produtos incluem vCenter, vCloud Director, VMware Horizon e muitos outros.

A lista de cmdlets continua a crescer com o portfólio da VMware, mas os padrões PowerCLI experimentados e verdadeiros estão se mantendo fortes como uma força de consistência.

Cmdlets no módulo PowerCLI PowerShell

>

Prerrequisitos

Estamos quase prontos para saltar para uma demonstração, por isso certifique-se que tem todos estes pré-requisitos para que possa seguir comigo.

  • VMware host ou servidor vCenter para testes de validação
  • Máquina cliente Windows, Mac ou Linux

Baixando VMware PowerCLI

A nova casa a longo prazo para a equipa do projecto PowerCLI está definida em https://code.vmware.com. Todo e qualquer pedido, comentário e documentação levantada pela comunidade para este módulo agora fazem parte do mesmo site do SDK, API e recursos de certificação.

Se você tiver alguma dúvida ou desejar levantar pedidos de recursos diretamente com a equipe, você pode contactar tanto a equipe do PowerCLI quanto a comunidade em torno deste projeto em code.vmware.com. Tanto a equipa da comunidade como a equipa do projecto VMware são altamente receptivas a questões, preocupações e novas ideias à medida que estas surgem.

Se quiser efectuar um download do PowerCLI através da web, a equipa PowerCLI fornece um link directo para duas opções do seu módulo PowerShell:

  • O link da Galeria PowerShell para fazer o download e instalar usando o gestor de pacotes do PowerShell
  • A .zip archive do conteúdo do módulo, para ser instalado manualmente

A Galeria PowerShell é, de longe, a forma mais comum de baixar o PowerCLI, mas o arquivo zip também funcionará. Note que não precisa de usar o link da PowerShell Gallery aqui. Você também pode baixá-lo via PowerShell.

Instalando o VMware PowerCLI no Windows PowerShell

Existem algumas maneiras diferentes de instalar o PowerCLI.

Extraindo o arquivo ZIP

Se você fez o download via web a partir da página acima, você precisará instalá-lo manualmente. Tem de obter o PowerCLI num local onde o PowerShell o possa ver.

Para instalar o módulo através do pacote zip fornecido, terá de extrair o conteúdo para o local de escolha do módulo. Esta localização será a localização do seu perfil de utilizador (para âmbitos não administrativos) ou para a pasta de módulos de todo o sistema.

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

Extrair o conteúdo .zip para uma das localizações acima.

Galeria PowerShell

A forma mais fácil e rápida que pode descarregar e instalar o PowerCLI hoje em dia é usar o download do módulo da Galeria PowerShell dentro de uma consola PowerShell. Abaixo encontrará um vídeo rápido sobre os passos gerais de instalação de um novo módulo para PowerShell com este método.

But, all-in-all, você pode executar o seguinte a partir de uma solicitação administrativa PowerShell para fazer o trabalho.

PS51> Install-Module VMware.PowerCLI

Se quiser executar uma instalação PowerCLI numa estação de trabalho onde não tem privilégios administrativos, pode usar o parâmetro Scope para instalar o módulo no caminho do seu módulo de perfil de utilizador.

PS51> Install-Module VMware.PowerCLI -Scope CurrentUser

Instalar o VMware PowerCLI no PowerShell 6 no Linux

Agora, também pode instalar o PowerCLI em sistemas que não sejam Windows. Por exemplo, podemos instalar o PowerCLI no PowerShell Core no Ubuntu. Novamente, dependendo se você optou por baixar o arquivo zip, o link web do PowerShell Gallery ou diretamente através do console PowerShell, o processo de instalação é um pouco diferente.

Extraindo o arquivo ZIP

Dependente do sabor do Linux, você irá extrair o conteúdo do arquivo .zip para locais diferentes.

Abra o PowerShell no Linux executando pwsh no seu terminal. Localize as localizações potenciais do PSModulePath usando o seguinte comando:

PS61> ($env:PSModulePath).split(":")
Diretórios no PSModulePath

Após ter determinado onde você gostaria de instalar os arquivos do módulo, baixe-os para aquele local e prepare-se para o descompactar. Você vai descompactá-los para a pasta /home/ para acesso do usuário ou para a localização /opt/ para acesso ao sistema.

Para este exemplo de instalação baseada em Linux, estou usando o Ubuntu 18.04 e vou instalar o VMware PowerCLI 11 usando o arquivo .zip baixado daqui, instalando o módulo a ser acessado por todos os usuários desta máquina.

> 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

Pode então importar este módulo, porque os ficheiros do módulo estão agora num dos seus locais $PSModulePath, através de uma execução normal de:

Import-Module VMware.PowerCLI

Instalando o Legacy VMware PowerCLI Snapin

Por vezes poderá ter de instalar o antigo PowerCLI snapin. Talvez você tenha assumido a responsabilidade por algum código legado e precise de resolver problemas. Para evitar rearquitectar os seus scripts existentes, é necessário instalar o antigo snapin.

Para instalar o antigo snapin, vai precisar de uma conta my.vmware.com para iniciar sessão e recuperar o ficheiro VMware-PowerCLI-5.1.0-3090428.exe. Após o download, instale o snapin através do executável através de uma instalação normal da aplicação Windows.

Pode então executar Add-PSSnapinpara carregar o VMware cmdlets na sua sessão, ou iniciar a consola VMware PowerCLI fornecida de forma autónoma.

Below pode ver que estou a usar o cmdlet Add-PSSnapin para adicionar o PowerCLI versão 5.1 à minha sessão de consola actual.

PS51> Add-PSSnapin VMware*
PowerCLI snapins

Launching the stand-alone VMware PowerCLI shortcut that gets installed with version 5.1.

PowerCLI v5.1 consola

Note que o snapin acima não é compatível com PowerShell 6/7.

Verificando a instalação do PowerCLI

Verificando que a sua instalação do PowerCLI é bem sucedida é a mesma, independentemente da sua versão do PowerShell. O primeiro passo, confirme a presença dos módulos da consola PowerShell.

Get-Module -ListAvailable VMware* 
Módulos PowerCLI disponíveis

>

Próximo, tente usar o PowerCLI para se ligar ao vCenter com a opção Connect-VIServer cmdlet. Isto não só verificará se o módulo foi instalado com sucesso, como também testará se você se conecta ou não corretamente à sua infra-estrutura.

Em Windows

PS51> Connect-VIServer <FQDN of vCenter or ESXi Host>
Conectar-se ao vCenter com VMware PowerCLI em Windows

Em Linux

Ao verificar a instalação em Linux, deve primeiro definir a configuração da ligação para contabilizar um certificado inválido (ou auto assinado por defeito) se encontrar algum problema de ligação. Abaixo estou a utilizar o PowerCLI para me ligar ao vCenter.

PS> Set-PowerCLIConfiguration -InvalidCertificateAction:ignorePS> Connect-VIServer <FQDN of vCenter or ESXi Host>
Conectar ao vCenter com VMware PowerCLI em Linux

Desde que foi capaz de se ligar com sucesso ao seu terminal VMware, o PowerCLI está a funcionar com sucesso!

Go Forth e PowerCLI!

A partir deste ponto, você agora está preparado para responder aquela proverbial pergunta de “Como eu instalo o VMware PowerCLI? Agora você pode começar a trabalhar com scripts para suas implementações de configuração, relatórios VM e tarefas de manutenção. Fique ligado neste blog para novos e futuros artigos sobre como começar a usar o PowerCLI!

Leitura Adicional

  • Como importar um arquivo OVF no VMware com PowerShell

Deixe uma resposta

O seu endereço de email não será publicado.