Compartilhar via


Gerenciar VMs no Azure Local usando o Windows PowerShell

Aplica-se a: Azure Local, versões 23H2 e 22H2; Windows Server 2022, Windows Server 2019

Este artigo descreve como criar e gerenciar VMs (máquinas virtuais) no Azure Local usando o Windows PowerShell.

Observação

A maneira recomendada de criar e gerenciar VMs no Azure Local, versão 23H2, é usando o painel de controle do Azure Arc. No entanto, como a funcionalidade descrita neste artigo ainda não é fornecida pelo Azure Arc, você pode usar o Windows Admin Center ou o PowerShell conforme descrito abaixo. Observe que as VMs criadas dessa maneira não são VMs habilitadas para Arc. Eles têm capacidade de gerenciamento limitada do painel de controle do Azure Arc e menos Benefícios Híbridos do Azure, como nenhum uso gratuito do Azure Update Manager.

Sobre o gerenciamento de VMs usando o PowerShell

Normalmente, você gerencia VMs de um computador remoto, em vez de em um computador host no Azure Local. Esse computador remoto é chamado de computador de gerenciamento.

Ao executar comandos do PowerShell em um computador de gerenciamento, inclua o -ComputerName parâmetro com o nome do computador host que você está gerenciando. Nomes NetBIOS, endereços IP e nomes de domínio totalmente qualificados são permitidos.

Para obter a documentação de referência completa sobre como gerenciar VMs usando o PowerShell, consulte Referência do Hyper-V.

Criar uma VM

O New-VM cmdlet é usado para criar uma nova VM. Para uso detalhado, consulte a documentação de referência da Nova VM .

Aqui estão as configurações que você pode especificar ao criar uma nova VM com um disco rígido virtual existente, onde:

  • -Name é o nome que você fornece para a máquina virtual que está sendo criada.

  • -MemoryStartupBytes é a quantidade de memória disponível para a máquina virtual na inicialização.

  • -BootDevice é o dispositivo no qual a máquina virtual é inicializada quando é iniciada. Normalmente, é um VHD (disco rígido virtual), um arquivo .iso para inicialização baseada em DVD ou um adaptador de rede (NetworkAdapter) para inicialização de rede.

  • -VHDPath é o caminho para o disco da máquina virtual que será usada.

  • -Path é o caminho para armazenar os arquivos de configuração da máquina virtual.

  • -Geração é a geração de máquina virtual. Use a geração 1 para VHD e a geração 2 para VHDX.

  • -SwitchName é o nome do comutador virtual que você deseja que a máquina virtual use para se conectar a outras máquinas virtuais ou à rede. Obtenha o nome do comutador virtual usando Get-VMSwitch. Por exemplo:

O comando completo da seguinte maneira para criar uma VM chamada VM1:

New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes <Memory> -BootDevice <BootDevice> -VHDPath <VHDPath> -Path <Path> -Generation <Generation> -SwitchName <Switch name>

O próximo exemplo cria uma máquina virtual de Geração 2 com 4 GB de memória. Ele é inicializado a partir da pasta VMs\Win10.vhdx no diretório atual e usa o comutador virtual chamado ExternalSwitch. Os arquivos de configuração da máquina virtual são armazenados na pasta VMData.

New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes 4GB -BootDevice VHD -VHDPath .\VMs\Win10.vhdx -Path .\VMData -Generation 2 -SwitchName ExternalSwitch

Os parâmetros a seguir são usados para especificar discos rígidos virtuais.

Para criar uma máquina virtual com um novo disco rígido virtual, substitua o parâmetro -VHDPath do exemplo acima por -NewVHDPath e adicione o parâmetro -NewVHDSizeBytes , conforme mostrado aqui:

New-VM -ComputerName Server1 -Name VM1 -MemoryStartupBytes 4GB -BootDevice VHD -NewVHDPath .\VMs\Win10.vhdx -Path .\VMData -NewVHDSizeBytes 20GB -Generation 2 -SwitchName ExternalSwitch

Para criar uma máquina virtual com um novo disco virtual que é inicializado em uma imagem do sistema operacional, consulte o exemplo do PowerShell em Passo a passo de criação de máquina virtual para Hyper-V no Windows 10.

Obter uma lista de VMs

O exemplo a seguir retorna uma lista de todas as VMs no Server1.

Get-VM -ComputerName Server1

O exemplo a seguir retorna uma lista de todas as VMs em execução em um computador adicionando um filtro usando o Where-Object comando. Para obter mais informações, consulte Usando a documentação Where-Object .

Get-VM -ComputerName Server1 | Where-Object -Property State -eq "Running"

O próximo exemplo retorna uma lista de todas as VMs desligadas no computador.

Get-VM -ComputerName Server1 | Where-Object -Property State -eq "Off"

Iniciar e parar uma VM

Use os Start-VM comandos e Stop-VM para iniciar ou parar uma VM. Para obter informações detalhadas, consulte a documentação de referência Start-VM e Stop-VM.

O exemplo a seguir mostra como iniciar uma VM chamada VM1:

Start-VM -Name VM1 -ComputerName Server1

O exemplo a seguir mostra como desligar uma VM chamada TestVM:

Stop-VM -Name VM1 -ComputerName Server1

Como mover uma VM

O Move-VM cmdlet move uma VM para um computador diferente. Para obter mais informações, consulte a documentação de referência do Move-VM .

O exemplo a seguir mostra como mover uma VM para o Servidor2 quando a VM é armazenada em um compartilhamento SMB no Servidor1:

Move-VM -ComputerName Server1 -Name VM1 -DestinationHost Server2

O exemplo a seguir mostra como mover uma VM do Servidor1 para o Servidor2 e mover todos os arquivos associados à VM para D:\VM_name no computador remoto:

Move-VM -ComputerName Server1 -Name VM1 -DestinationHost Server2 -IncludeStorage -DestinationStoragePath D:\VM_name

Importar ou exportar uma VM

Os Import-VM cmdlets e Export-VM importam e exportam uma VM. A seguir, são mostrados alguns exemplos. Para obter mais informações, consulte a documentação de referência Import-VM e Export-VM.

O exemplo a seguir mostra como importar uma VM de seu arquivo de configuração. A VM é registrada in-loco, portanto, seus arquivos não são copiados:

Import-VM -ComputerName Server1 -Name VM1 -Path 'C:\<vm export path>\2B91FEB3-F1E0-4FFF-B8BE-29CED892A95A.vmcx'

O exemplo a seguir exporta uma VM para a raiz da unidade D:

Export-VM -ComputerName Server1 -Name VM1 -Path D:\

Renomear uma VM

O Rename-VM cmdlet é usado para renomear uma VM. Para obter informações detalhadas, consulte a documentação de referência Renomear-VM.

O exemplo a seguir renomeia VM1 para VM2 e exibe a VM renomeada:

Rename-VM -ComputerName Server1 -Name VM1 -NewName VM2

Criar um ponto de verificação de VM

O Checkpoint-VM cmdlet é usado para criar um ponto de verificação para uma VM. Para obter informações detalhadas, consulte a documentação de referência do Checkpoint-VM .

O exemplo a seguir cria um ponto de verificação chamado BeforeInstallingUpdates para a VM chamada Test.

Checkpoint-VM -ComputerName Server1 -Name VM1 -SnapshotName BeforeInstallingUpdates

Criar um VHD para uma VM

O New-VHD cmdlet é usado para criar um novo VHD para uma VM. Para obter informações detalhadas sobre como usá-lo, consulte a documentação de referência do New-VHD .

Adicionar um adaptador de rede a uma VM

O Add-VMNetworkAdapter cmdlet é usado para adicionar um adaptador de rede virtual a uma VM. A seguir, são mostrados alguns exemplos. Para obter informações detalhadas sobre como usá-lo, consulte a documentação de referência Add-VMNetworkAdapter.

O exemplo a seguir adiciona um adaptador de rede virtual chamado Redmond NIC1 a uma máquina virtual chamada VM1:

Add-VMNetworkAdapter -ComputerName Server1 -VMName VM1 -Name "Redmond NIC1"

Este exemplo adiciona um adaptador de rede virtual a uma máquina virtual chamada VM1 e o conecta a um comutador virtual chamado Network:

Add-VMNetworkAdapter -ComputerName Server1 -VMName VM1 -SwitchName Network

Criar um comutador virtual para uma VM

O New-VMSwitch cmdlet é usado para o novo comutador virtual em um host de VM. Para obter informações detalhadas sobre como usá-lo, consulte a documentação de referência do New-VMSwitch .

O exemplo a seguir cria um novo comutador chamado "comutador de QoS", que se associa a um adaptador de rede chamado Conexão Ethernet com Fio 3 e dá suporte à largura de banda mínima baseada em peso.

New-VMSwitch "QoS Switch" -NetAdapterName "Wired Ethernet Connection 3" -MinimumBandwidthMode Weight

Definir memória para uma VM

O Set-VMMemory cmdlet é usado para configurar a memória de uma VM. Para obter informações detalhadas sobre como usá-lo, consulte a documentação de referência Set-VMMemory.

O exemplo a seguir habilita a memória dinâmica em uma VM chamada VM1, define sua memória mínima, de inicialização e máxima, sua prioridade de memória e seu buffer.

Set-VMMemory -ComputerName Server1 -Name VM1 -DynamicMemoryEnabled $true -MinimumBytes 64MB -StartupBytes 256MB -MaximumBytes 2GB -Priority 80 -Buffer 25

Definir processadores virtuais para uma VM

O Set-VMProcessor cmdlet é usado para configurar os processadores virtuais para uma VM. Para obter informações detalhadas sobre como usá-lo, consulte a documentação de referência do Set-VMProcessor .

O exemplo a seguir configura uma VM chamada VM1 com dois processadores virtuais, uma reserva de 10%, um limite de 75% e um peso relativo de 200.

Set-VMProcessor -ComputerName Server1 -Name VM1 -Count 2 -Reserve 10 -Maximum 75 -RelativeWeight 200

Remover uma VM

A remoção ou exclusão de uma VM por meio do PowerShell exclui o arquivo de configuração da VM, mas não exclui os discos rígidos virtuais associados. Se você quiser excluir uma VM com todos os arquivos, incluindo discos rígidos virtuais, considere usar Windows Admin Center.

Antes de excluir uma VM, verifique se a VM está DESLIGADA. Lembre-se de que a exclusão de uma VM exclui o arquivo de configuração irreversivelmente.

Remover uma VM de um computador

Para remover ou excluir uma VM e seus recursos de um computador, primeiro localize todas as VMs no computador usando o seguinte cmdlet:

Get-VM -Name VM1

Em seguida, execute o seguinte cmdlet para cada VM que você deseja remover do computador:

Remove-VM -Name VM1

Remover uma VM de um sistema

Para remover ou excluir uma VM e seus recursos de um sistema, primeiro localize-os usando o seguinte cmdlet:

Get-ClusterGroup

Em seguida, execute o seguinte cmdlet para cada VM que você deseja remover do sistema:

Remove-ClusterGroup -RemoveResources -Name VM1

Próximas etapas

Você também pode criar e gerenciar VMs usando Windows Admin Center. Para obter mais informações, consulte o Windows Admin Center.