VM's op Azure Stack HCI beheren met Windows PowerShell

Van toepassing op: Azure Stack HCI, versies 21H2 en 20H2; Windows Server 2022, Windows Server 2019

Windows PowerShell kunnen worden gebruikt voor het maken en beheren van uw virtuele machines (VM's) op Azure Stack HCI.

Normaal gesproken beheert u VM's vanaf een externe computer in plaats van op een hostserver in een cluster. Deze externe computer wordt de beheercomputer genoemd.

Notitie

Wanneer u PowerShell-opdrachten vanaf een beheercomputer wilt uitvoeren, moet u de parameter -ComputerName opnemen met de naam van de hostserver die u beheert. NetBIOS-namen, IP-adressen en volledig gekwalificeerde domeinnamen zijn toegestaan.

Zie Hyper-Vreference (Hyper-V-referentie) voor de volledige referentiedocumentatie voor het beheren van VM's met behulp van PowerShell.

Een virtuele machine maken

De New-VM cmdlet wordt gebruikt om een nieuwe VM te maken. Zie de referentiedocumentatie voor nieuwe VM's voor gedetailleerd gebruik.

Hier vindt u de instellingen die u kunt opgeven bij het maken van een nieuwe virtuele machine met een bestaande virtuele harde schijf, waarbij:

  • -Naam is de naam die u opgeeft voor de virtuele machine die u maakt.

  • -MemoryStartupBytes is de hoeveelheid geheugen die beschikbaar is voor de virtuele machine bij het opstarten.

  • -BootDevice is het apparaat waarop de virtuele machine wordt opgestart wanneer deze wordt gestart. Dit is doorgaans een virtuele harde schijf (VHD), een ISO-bestand voor opstarten op dvd of een netwerkadapter (NetworkAdapter) voor het opstarten van het netwerk.

  • -VHDPath is het pad naar de virtuele machine-schijf die u wilt gebruiken.

  • -Pad is het pad voor het opslaan van de configuratiebestanden van virtuele machine.

  • -Generatie is de generatie van de virtuele machine. Generatie 1 gebruiken voor de VHD en generatie 2 voor VHDX.

  • -Switch is de naam van de virtuele switch die u wilt dat de virtuele machine te gebruiken om te verbinden met andere virtuele machines of het netwerk. Haal de naam van de virtuele switch op met behulp van Get-VMSwitch. Bijvoorbeeld:

De volledige opdracht voor het maken van een VM met de naam VM1:

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

In het volgende voorbeeld wordt een virtuele machine van de tweede generatie gemaakt met 4 GB geheugen. Het opstart vanuit de map VMs\Win10.vhdx in de huidige map en de virtuele switch met de naam ExternalSwitch gebruikt. De configuratiebestanden van virtuele machine worden opgeslagen in de map VMData.

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

De volgende parameters worden gebruikt om virtuele harde schijven op te geven.

Als u een virtuele machine wilt maken met een nieuwe virtuele harde schijf, vervangt u de parameter -VHDPath uit het bovenstaande voorbeeld door -NewVHDPath en voegt u de parameter -NewVHDSizeBytes toe, zoals hier wordt weergegeven:

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

Zie het PowerShell-voorbeeld in Walkthrough voor virtuele machines maken voor Hyper-Vop Windows 10 voor het maken van een virtuele machine met een nieuwe virtuele schijf die wordt opgeslagen op een installatie Windows 10.

Een lijst met VM's op halen

In het volgende voorbeeld wordt een lijst met alle VM's op Server1 weergegeven.

Get-VM -ComputerName Server1

Het volgende voorbeeld retourneert een lijst met alle VM's die worden uitgevoerd op een server door een filter toe te voegen met behulp van de Where-Object opdracht . Zie Using the Where-Object documentation (De where-Object-documentatie gebruiken) voor meer informatie.

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

In het volgende voorbeeld wordt een lijst met alle afgesloten VM's op de server weergegeven.

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

Een VM starten en stoppen

Gebruik de Start-VM opdrachten en om een Stop-VM VM te starten of te stoppen. Zie de referentiedocumentatie start-VM en VM stoppen voor gedetailleerde informatie.

In het volgende voorbeeld ziet u hoe u een VM met de naam VM1 start:

Start-VM -Name VM1 -ComputerName Server1

In het volgende voorbeeld ziet u hoe u een VM met de naam TestVM kunt afsluiten:

Stop-VM -Name VM1 -ComputerName Server1

Een virtuele machine verplaatsen

De Move-VM cmdlet verplaatst een VM naar een andere server. Zie de referentiedocumentatie voor move-VM voor meer informatie.

In het volgende voorbeeld ziet u hoe u een VM naar Server2 verplaatst wanneer de VM wordt opgeslagen op een SMB-share op Server1:

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

In het volgende voorbeeld ziet u hoe u een VM van Server1 naar Server2 verplaatst en alle bestanden die aan de VM zijn gekoppeld, verplaatst naar D:\VM_name op de externe computer:

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

Een VM importeren of exporteren

De Import-VMExport-VM cmdlets en importeren en exporteren een VM. Hieronder ziet u een aantal voorbeelden. Zie de referentiedocumentatie import-VM en VM exporteren voor meer informatie.

In het volgende voorbeeld ziet u hoe u een VM importeert uit het configuratiebestand. De VM is ter plaatsen geregistreerd, zodat de bestanden niet worden gekopieerd:

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

In het volgende voorbeeld wordt een VM naar de hoofdmap van het D-station exporteert:

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

De naam van een VM wijzigen

De Rename-VM cmdlet wordt gebruikt om de naam van een VM te wijzigen. Zie de referentiedocumentatie Rename-VM voor gedetailleerde informatie.

In het volgende voorbeeld wordt de naam van VM1 gewijzigd in VM2 en wordt de naam van de virtuele machine weergegeven:

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

Een VM-controlepunt maken

De Checkpoint-VM cmdlet wordt gebruikt om een controlepunt voor een VM te maken. Zie de referentiedocumentatie controlepunt-VM voor gedetailleerde informatie.

In het volgende voorbeeld wordt een controlepunt met de naam BeforeInstallingUpdates gemaakt voor de VM met de naam Test.

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

Een VHD voor een VM maken

De New-VHD cmdlet wordt gebruikt om een nieuwe VHD voor een VM te maken. Zie de referentiedocumentatie voor New-VHD voor gedetailleerde informatie over het gebruik ervan.

In het volgende voorbeeld wordt een dynamische virtuele harde schijf gemaakt in VHDX-indeling van 10 GB. De bestandsnaamextensie bepaalt de indeling en het standaardtype dynamisch wordt gebruikt omdat er geen type is opgegeven.

Get-ClusterGroup

Een netwerkadapter toevoegen aan een VM

De Add-VMNetworkAdapter cmdlet wordt gebruikt om een virtuele netwerkadapter toe te voegen aan een virtuele machine. Hieronder ziet u een aantal voorbeelden. Zie de naslagdocumentatie voor Add-VMNetworkAdapter voor gedetailleerde informatie over het gebruik ervan.

In het volgende voorbeeld wordt een virtuele netwerkadapter met de naam Redmond NIC1 toegevoegd aan een virtuele machine met de naam VM1:

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

In dit voorbeeld wordt een virtuele netwerkadapter toegevoegd aan een virtuele machine met de naam VM1 en wordt deze verbonden met een virtuele switch met de naam Netwerk:

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

Een virtuele switch voor een virtuele machine maken

De New-VMSwitch cmdlet wordt gebruikt om een nieuwe virtuele switch op een VM-host te maken. Zie de referentiedocumentatie voor New-VMSwitch voor gedetailleerde informatie over het gebruik ervan.

In het volgende voorbeeld wordt een nieuwe switch gemaakt met de naam 'QoS-switch', die wordt verbonden met een netwerkadapter met de naam Bekabelde Ethernet-verbinding 3 en ondersteuning biedt voor minimale bandbreedte op basis van gewicht.

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

Geheugen instellen voor een VM

De Set-VMMemory cmdlet wordt gebruikt om het geheugen van een VM te configureren. Zie de referentiedocumentatie set-VMMemory voor gedetailleerde informatie over het gebruik ervan.

In het volgende voorbeeld wordt dynamisch geheugen op een VM met de naam VM1 mogelijk gemaakt, het minimum, het opstartgeheugen en het maximale geheugen, de geheugenprioriteit en de buffer ervan.

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

Virtuele processors instellen voor een virtuele machine

De Set-VMProcessor cmdlet wordt gebruikt om de virtuele processors voor een virtuele machine te configureren. Zie de referentiedocumentatie set-VMProcessor voor gedetailleerde informatie over het gebruik ervan.

In het volgende voorbeeld wordt een virtuele machine met de naam VM1 geconfigureerd met twee virtuele processors, een reserve van 10%, een limiet van 75%, en een relatief gewicht van 200.

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

Een VM verwijderen

Als u een VM en de resources wilt verwijderen, moet u deze eerst zoeken met behulp van de volgende cmdlet:

Get-ClusterGroup

Voer vervolgens de volgende cmdlet uit voor elke VM die u uit het cluster wilt verwijderen:

Remove-ClusterGroup -RemoveResources -Name VM1

Volgende stappen

U kunt ook VM's maken en beheren met Windows-beheercentrum. Zie voor meer informatie Windows Beheercentrum.