Comandos do PowerShell para gerir máquinas virtuais do Hyper-V

Partilhar

Saiba mais sobre os comandos do PowerShell para gerir máquinas virtuais do Hyper-V que ajudam a poupar tempo na gestão da sua infraestrutura virtualizada.

O Hyper-V é um dos hipervisores mais utilizados no mundo, em parte graças à sua simplicidade de uso, que suaviza a curva de transição do modelo tradicional para um modelo baseado em virtualização, além da sua estabilidade, escalabilidade e as vantagens de licenciamento em comparação com outras plataformas de virtualização.

Queremos ensinar-lhe alguns comandos básicos do PowerShell que são muito úteis na gestão de máquinas virtuais, mesmo que nunca tenha trabalhado com esta interface fantástica da Microsoft.

Falaremos sobre comandos simples para:

  • Mostrar os comandos relacionados com o Hyper-V.
  • Atualizar a ajuda dos comandos do PowerShell.
  • Utilizar a ajuda do PowerShell.
  • Listar as máquinas virtuais disponíveis no servidor.
  • Inicialização e paragem das máquinas virtuais com o PowerShell.

Com isto já vai poder operar de forma básica no Hyper-V, e o resto pode ser feito na interface gráfica… Por enquanto, já que prometemos voltar com mais informação!

 

Comandos do PowerShell para gerir máquinas virtuais do Hyper-V

Mostrar os comandos relacionados com o Hyper-V:

A primeira coisa que precisamos de conhecer são os comandos ou cmdlets do Hyper-V disponíveis no nosso sistema. Para isso, podemos utilizar o comando “Get-Command -Module hyper-v” que irá mostrá-los todos numa lista relativamente organizada.

# Get-Command -Module hyper-v

Imagem. Exibição dos módulos do Hyper-V em bruto.
Imagem. Exibição dos módulos do Hyper-V em bruto.

Também podemos pedir a informação organizada de várias formas, como por exemplo em formato de tabela:

# Get-Command -Module hyper-v | Format-Table

Imagem. Exibição dos módulos do Hyper-V em formato de tabela.
Imagem. Exibição dos módulos do Hyper-V em formato de tabela.

Em forma de lista:

# Get-Command -Module hyper-v | Format-List

Imagem. Exibição dos módulos do Hyper-V em formato de lista.
Imagem. Exibição dos módulos do Hyper-V em formato de lista.

Em formato de janela pop-up com apresentação muito semelhante às janelas pop-up dos programas Java ou semelhantes:

# Get-Command -Module hyper-v | Out-GridView

Imagem. Exibição dos módulos do Hyper-V em janela pop-up.
Imagem. Exibição dos módulos do Hyper-V em janela pop-up.

 

Atualizar a ajuda dos comandos do PowerShell:

Sinceramente, acreditamos que uma das primeiras coisas que devemos fazer ao trabalhar com qualquer software, sistema ou serviço é atualizar tudo o que pode ser atualizado, e isso inclui a ajuda.

Neste caso, todo o sistema de ajuda do PowerShell está “conectado”, por isso só temos de executar um comando de atualização, que é o comando “Update-Help”, sem colocar nenhum modificador:

# Update-Help

Imagem. Atualização da ajuda do PowerShell com o comando Update-Help.
Imagem. Atualização da ajuda do PowerShell com o comando Update-Help.

 

Utilizar a ajuda do PowerShell:

A seguir, como vamos trabalhar com máquinas virtuais (daqui em diante VMs), devemos saber consultar a ajuda dos comandos.

Para consultá-la, vamos usar o comando “Get-Help <Comando do PowerShell>”, onde “<Comando do PowerShell>” deve ser substituído pelo comando sobre o qual queremos saber mais.

Por exemplo, como vamos usar os comandos “Get-VM”, o comando para solicitar ajuda seria:

# Get-Help Get-VM

NOTA: Se não executou a atualização da Ajuda do PowerShell primeiro, é possível que se realize a atualização ao pedir o uso da Ajuda.

Imagem. Consulta da ajuda do Get-VM.
Imagem. Consulta da ajuda do Get-VM.

 

Lista de máquinas virtuais disponíveis no servidor Hyper-V:

Agora veremos como listar as máquinas virtuais disponíveis num servidor Hyper-V.

Para começar, pediremos uma lista das máquinas independentemente do seu estado, e para isso usamos o comando “Get-VM” sem modificadores:

# Get-VM

Imagem. Lista de máquinas virtuais disponíveis no servidor Hyper-V com o Powershell.
Imagem. Lista de máquinas virtuais disponíveis no servidor Hyper-V com o Powershell.

Da mesma forma, também podemos mostrar apenas as máquinas virtuais que possuem um estado específico, como em execução ou paradas.

Get-VM | where {$_.State -eq ‘Running’}

Get-VM | where {$_.State -eq ‘Off’}

Imagem. Lista de máquinas virtuais ligadas e desligadas no servidor Hyper-V com o Powershell.
Imagem. Lista de máquinas virtuais ligadas e desligadas no servidor Hyper-V com o Powershell.

Também podemos pesquisar pelo nome da máquina virtual, com o seguinte comando e o recurso “$_.Name”:

Get-VM | where {$_.Name -eq ‘<Nome>’}

Onde:

  • <Nome> será o nome da VM que queremos ver.
Imagem. Exibição de uma VM no servidor Hyper-V com base no nome, através do Powershell.
Imagem. Exibição de uma VM no servidor Hyper-V com base no nome, através do Powershell.

 

Inicialização e paragem de máquinas virtuais Hyper-V com o PowerShell:

Depois de poder ver a ajuda, atualizá-la e obter informações sobre as máquinas, é hora de começar a trabalhar com elas, e nada melhor para começar do que poder inicializá-las e pará-las.

Para isso, usaremos os comandos (nada originais) “Start-VM” e “Stop-VM”, aos quais teremos de adicionar os nomes das VMs que queremos arrancar ou desligar.

# Start-VM -Name <Nome>

Y

# Stop-VM -Name <Nome>

Se queremos usar este último comando para parar a máquina “Nacho”, devemos usá-lo da seguinte forma:

# Stop-VM -Name Nacho

Imagem. Arranque de uma VM do Hyper-V com o PowerShell.
Imagem. Arranque de uma VM do Hyper-V com o PowerShell.

Por outro lado, podemos fazer a união de vários comandos para listar as máquinas que estão paradas e iniciá-las, utilizando a seguinte composição:

# Get-VM | where {$_.State -eq ‘Off’} | Start-VM

Neste caso, primeiro listamos as máquinas existentes no Hyper-V com o comando “Get-VM”. O output é canalizado para o próximo comando com o “|”. Feito isso, exibimos apenas as máquinas que estão paradas com o modificador “where {$_.State -eq ‘Off’}”, que é também canalizado com um novo “|” e é executado com o comando “Start-VM”, que iniciará as máquinas listadas.

Da mesma forma, podemos desligar as máquinas com:

# Get-VM | where {$_.State -eq ‘Running’} | Stop-VM

Imagem. Arranque de máquinas virtuais do Hyper-V com o PowerShell.
Imagem. Arranque de máquinas virtuais do Hyper-V com o PowerShell.

Com isto, já temos os primeiros comandos para gerir a nossa infraestrutura de virtualização com o PowerShell; Mas este não serão os últimos comandos, já que iremos publicar novas informações sobre gestão de serviços com o PowerShell, e é claro que vamos voltar a falar sobre o Hyper-V.

 

Conclusões:

Como é possível ver neste artigo, “Comandos do Powershell para gerir máquinas virtuais do Hyper-V“, é muito fácil poupar tempo e esforço na gestão da sua infraestrutura virtualizada através do hipervisor da Microsoft.

Se tem interesse neste tópico e quer testá-lo no seu computador desktop, pode visitar o tutorial (em inglês) Como instalar o Hyper-V no Windows 10.

Além disso, pode ver outros tutoriais e artigos relacionados com o Hyper-V.

Obrigado por acompanhar-nos!

Categorias:Cloud e sistemas

Outros artigos que podem interessar-lhe

13 de Novembro de 2024
Temos novas distribuições em Servidores! Em resposta aos múltiplos pedidos de vários dos nossos parceiros, foi ativada a opção
13 de Novembro de 2024
Já é possível configurar modelos de diferentes softwares através do assistente de configuração de servidores. Inauguramos esta funcionalidade do
13 de Novembro de 2024
Integração com QNAP! Agora é possível criar cópias sincronizadas entre dispositivos de armazenamento local QNAP e o nosso serviço