Hyper-V VM-Konfigurationsversion: Upgrade über GUI oder PowerShell, Feature-Übersicht

    Konfigurationsversion ändern in Hyper-V ManagerDie Konfi­gurations­version in Hyper-V ent­spricht der vHardware bei VMware. Neue Features stehen oft erst nach dem Upgrade einer VM zur Ver­fügung, beispiels­weise Pro­duction Check­points unter Server 2016. Das Um­stellen auf eine neue Version sollte mit Bedacht er­folgen, weil es keinen Weg zurück gibt.

    Seit Windows Server 2016 besteht die hervor­ragende Möglichkeit, einen 2012 R2 Hyper-V Cluster schrittweise zu aktualisieren (Cluster Rolling Upgrade). Dabei spielt die VM-Konfigurations­version eine Schlüssel­rolle, denn virtuelle Maschinen lassen sich hier von bestehenden Cluster-Nodes auf neue Knoten unter Server 2016 live migrieren, ohne dass die VM-Version 5.0 automatisch aktualisiert wird. Dadurch kann man notfalls wieder auf die vorherige OS-Version zurückkehren. Ein abschließendes Anheben der Konfigurations­version erlaubt dann die Nutzung aller neuen Features unter Hyper-V 2016.

    Von Server 2012 R2 nach 2016

    Dagegen war eine Migration virtueller Maschinen von 2012 nach 2012 R2 zwar möglich (Version 4 nach 5), doch umgekehrt nicht, weil die VM-Version automatisch angehoben wurde. Im Fall eines Umzugs nach 2016 und eines endgültigen Anhebens des ClusterFunctionalLevel auf v9 können VMs dagegen manuell schlussendlich angehoben werden, beispielsweise von Version 5.0 nach aktuell 8.0.

    Get-VMHostSupportedVersion zeigt unter Hyper-V 2016 alle unterstützten VM-Versionen.

    Manuelles Upgrade der VM-Version

    Die Konfigurations­version ist nicht neu unter Hyper-V, aber erst seit Windows Server 2012 R2 innerhalb der GUI des Hyper-V Managers ersichtlich. Für ein Upgrade stellen wir uns auf die entsprechende VM und erreichen im ausgeschalteten Zustand dieser über die rechte Maustaste im Kontextmenü den Befehl Konfigurationsversion upgraden….

    Der Hyper-V Manager zeigt seit 2012 R2 die VM-Version an

    In diesem Fall wird die VM mit einer Version von 5.0 auf 8.0 konvertiert. Dieses Upgrade ist irreversibel, d.h. wir können nicht mehr von Version 8.0 zurück nach 5.0.

    Upgrade der VM-Version aus dem Hyper-V Manager heraus

    Mit PowerShell würde man diesen Vorgang ebenfalls im ausgeschalteten Zustand der VM so anstoßen:

    Update-VMVersion -Name "VMName"

    Upgrade der VM-Konfigurationsversion mit dem PowerShell-Cmdlet Update-VMVersion

    Wurde die Version auf die aktuelle 8.0 festgelegt, dann konvertiert Hyper-V auch das Dateiformat der VM. Maschinen in Version 5.0, also seit 2012 R2, nutzen noch die XML-basierte Konfigurations­beschreibung. Diese wird beim Upgrade auf Version 8.0 umgestellt in das binäre Format VMCX und für den Runtime state wird ein VMRS File erstellt.

    Die Features der aktuellen VM-Versionen

    Vermissen Sie Features unter Windows Server 2016 Hyper-V, kann das an der VM-Version liegen. Speziell bei migrierten Maschinen kommt es hier zu Meldungen aufgrund zu niedriger Versionen.

    Möchten Sie beispielsweise die Produktions­prüfpunkte einer migrierten VM oder einer explizit in Version 5.0 erstellten Maschine unter Hyper-V 2016 aktivieren, dann erhalten Sie den Hinweis "Cannot change the checkpoint type because the virtual machine is not upgraded. Upgrade the virtual machine and then try again." Virtuelle Maschinen lassen sich auch in einer bestimmten Version mit dem Schalter -Version unter PowerShell anlegen:

    New-VM -Name "DC-2012R2-01" -MemoryStartupBytes 1024MB -SwitchName "HVvSwitch" `
    -NewVHDPath C:\ClusterStorage\Volume1\2012R2\DC-2012R2-01.vhdx `
    -Path C:\ClusterStorage\Volume1\2012R2 -NewVHDSizeBytes 200GB -Generation 2 -Version 5.0

    Feature seit VM-Konfigurationsversion
    Hot-add/remove Memory 6.2
    Secure Boot für Linux VMs 6.2
    Produktionsprüfpunkte (Production Checkpoints) 6.2
    PowerShell Direct 6.2
    VM Grouping 6.2
    Virtual TPM (vTPM) 7.0
    Virtual Machine multi Queues (VMMQ) 7.1
    XSAVE support 8.0
    Key storage drive 8.0
    Guest Virtualization Based Security support (VBS) 8.0
    Nested Virtualization 8.0
    Virtual processor count 8.0
    Large memory VMs 8.0

    Keine Kommentare