Version der VMs aktualisieren

Datum

Wer seinen Hyper-V von Microsoft Windows Server 2012 R2 auf Microsoft Windows Server 2016 gebracht hat, per Upgrade, und noch einen Altbestand von virtuellen Maschinen darauf laufen hat, sollte die VMs auf die aktuelle Version bringen, um alle Features unterstützen zu können.

Hier ist ein Ansatz, wie man das per PowerShell angehen kann. Zunächst verschafft man sich einen Überblick ,welche VMs es gibt und welche Version sie haben – und vor allem in welchem Status sie sich befinden.

get-vm | ft name,state,version -autosize

Name        State Version
----        ----- -------
Adam      Running 5.0
ADC       Running 5.0
Blog      Running 8.0
Code01    Running 5.0
DHCP      Running 8.0
FTP       Running 5.0
Hosting   Running 5.0
OTRS      Running 5.0
Radio     Running 5.0
RDP       Running 5.0
SDC       Running 5.0
SSH       Running 5.0
Teamspeak Running 5.0
Tor       Running 5.0
Unreal    Running 5.0
Web       Running 5.0
WebRDP    Running 5.0
WebSSH    Running 5.0

Es laufen also alle virtuellen Maschinen. Falls welche es nicht tun, muss man sie nicht abschalten und sollte sie nach dem Update auch nicht hochfahren. Deshalb berücksichtigen wir im unteren Code weiterhin etwaige nicht gestartete VMs.

get-vm | where-object { $_.version -ne "8.0" } | foreach-object { $r=($_.state -eq "Running"); if($r) { stop-vm -VMName $_.vmname -Confirm:$false }; Update-VMVersion $_.vmname -Confirm:$false; if($r) { Start-VM -VMName $_.vmname } }

Der Hyper-V wird nun nach und nach alle älteren VMs herunterfahren, sofern sie laufen, auf den neuesten Stand bringen und anschließend, sofern sie zuvor gestartet gewesen sind, wieder hochfahren.

Anschließend prüft man erneut die Versionen, um sicher zu gehen:

get-vm | ft name,state,version -autosize

Name        State Version
----        ----- -------
Adam      Running 8.0
ADC       Running 8.0
Blog      Running 8.0
Code01    Running 8.0
DHCP      Running 8.0
FTP       Running 8.0
Hosting   Running 8.0
OTRS      Running 8.0
Radio     Running 8.0
RDP       Running 8.0
SDC       Running 8.0
SSH       Running 8.0
Teamspeak Running 8.0
Tor       Running 8.0
Unreal    Running 8.0
Web       Running 8.0
WebRDP    Running 8.0
WebSSH    Running 8.0

Autor
Kategorien Hyper-V, Windows Server 2016

PRTG Map