Partilhar 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 máquinas virtuais (VMs) no Azure Local usando o Windows PowerShell.

Nota

A maneira recomendada de criar e gerenciar VMs no Azure Local, versão 23H2 é usando o plano de controle 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 plano 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 uma máquina host no Azure Local. Este computador remoto é chamado de computador de gerenciamento.

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

Para obter 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 obter uso detalhado, consulte a documentação de referência New-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á criando.

  • -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 inicializa quando é iniciada. Normalmente, este é um disco rígido virtual (VHD), um arquivo de .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 você deseja usar.

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

  • -Geração é a geração da 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 forma 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 2ª geração com 4 GB de memória. Ele inicializa 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 como 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 inicializa em uma imagem do sistema operacional, consulte o exemplo do PowerShell em Passo a passo Criar 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 em Server1.

Get-VM -ComputerName Server1

O exemplo a seguir retorna uma lista de todas as VMs em execução em uma máquina 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 de desligamento na máquina.

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

Mover uma VM

O Move-VM cmdlet move uma VM para uma máquina 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 Server2 quando a VM é armazenada em um compartilhamento SMB em Server1:

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

O exemplo a seguir mostra como mover uma VM de Server1 para Server2 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. Seguem-se 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 Rename-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 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 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. Seguem-se 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 um novo comutador virtual em um host 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 switch chamado "switch QoS", que se liga a um adaptador de rede chamado Wired Ethernet Connection 3 e suporta 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 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 via 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 o Windows Admin Center.

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

Remover uma VM de uma máquina

Para remover ou excluir uma VM e seus recursos de uma máquina, primeiro localize todas as VMs na máquina usando o seguinte cmdlet:

Get-VM -Name VM1

Em seguida, execute o seguinte cmdlet para cada VM que você deseja remover da máquina:

Remove-VM -Name VM1

Remover uma VM de um sistema

Para remover ou excluir uma VM e seus recursos de um sistema, primeiro encontre-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óximos passos

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