VM-Migrationshilfe: Prozessorkompatibilität in Hyper-V
Die Prozessorkompatibilität von Hyper-V ist einfach anzuwenden, deaktiviert aber bestimmte CPU-Features. Eigentlich dient sie nur bestimmten, vorübergehenden Einsatzzwecken.
Die Prozessorkompatibilität von Hyper-V ermöglicht es Ihnen, virtuelle Maschinen (VMs) zwischen Hosts mit unterschiedlichen CPU-Versionen zu migrieren. Bevor Sie diese Möglichkeit einsetzen, sollten Sie aber verstehen, welche Folgen das haben kann.
Natürlich ist die Möglichkeit, eine virtuelle Maschine ohne jede Downtime von einem auf einen anderen Host zu verschieben, eine extrem hilfreiche Einrichtung. Solche Live-Migrationen helfen bei so ziemlich allem, vom Ausbalancieren der Workloads auf dem Host bis zum Offline-nehmen eines Hosts für Wartungszwecke.
In einer perfekten Welt würde jeder Hyper-V-Host in einem Rechenzentrum identisch sein. Im echten Leben aber sieht das nun einmal anders aus, die einzelnen Hosts können sich mitunter sogar beträchtlich voneinander unterscheiden. Glücklicherweise unterstützt Hyper-V diese realen Gegebenheiten durch die sogenannte Prozessorkompatibilität. Mit ihrer Hilfe können Sie eine laufende VM auch zwischen unterschiedlichen Hosts umziehen.
Die Einstellung für die Prozessorkompatibilität in Hyper-V finden Sie im Hyper-V Manager. Klicken Sie mit der rechten Maustaste auf die VM, deren Prozessoreinstellungen Sie ändern möchten, und klicken Sie im Kontextmenü auf Settings beziehungsweise Einstellungen. Folgerichtig zeigt der Hyper-V Manager Ihnen nun die Einstellungen für die betroffene VM an. Erweitern Sie in dieser Ansicht den Knoten Prozessor, so erscheint unter anderem ein Unterpunkt Kompatibilität. Wählen Sie diesen aus, so erscheinen die zugehörigen Einstellungen im rechten Bereich des Dialogs. Hier können Sie nun die Prozessorkompatibilität aktivieren, indem Sie den Punkt Zu einem physischen Computer mit einer anderen Prozessorversion migrieren aktivieren, siehe Abbildung 1.
Der Text neben dem Kontrollkästchen ist der Dreh- und Angelpunkt für das Verständnis, welchem Zweck die Prozessorkompatibilität dient: sie können also die Prozessorkompatibilität dafür benutzen, eine VM von einem physischen Computer mit einer gegebenen Prozessorversion auf einen anderen physischen Computer mit einer abweichenden Prozessorversion zu verschieben.
Vermutlich ist es Ihnen bei der bisherigen Lektüre schon aufgefallen: Microsoft verwendet hier in Bezug auf den Prozessor nicht das Wort Architektur, sondern Version. Und dies mit vollem Bewusstsein. Denn Sie können diese Möglichkeit eben gerade nicht verwenden, um eine VM zum Beispiel von einem Intel-basierenden System auf ein AMD-basierendes System zu verschieben. Zwar gibt es im Internet Berichte von Menschen, die sich solcher Taten rühmen. Offiziell aber ist Ihnen der Weg über Architekturgrenzen hinweg versperrt. Falls Sie eine Live-Migration oder eine Schnellmigration dieser Art ausprobieren, sind Sie vollständig auf sich allein gestellt und sollten mit versteckten Problemen rechnen, falls nicht bereits offensichtliche Probleme Ihren Plan zunichtemachen.
Vielmehr ist die Prozessorkompatibilität in Hyper-V dazu angetan, Sie bei der Verlagerung einer laufenden VM von einem Hyper-V Host auf einen anderen mit älterem oder neuerem Prozessor derselben Architektur wie der des abgebenden Hosts zu unterstützen. Wenn Sie zum Beispiel eine VM von einem Host mit einem Intel-Prozessor der sechsten Generation zu einem Host mit einem Intel-Prozessor der achten Generation verschieben möchten, sind Sie mit der Prozessorkompatibilität in guten Händen.
Grenzen der Prozessorkompatibilität
Die Prozessorkompatibilität in Hyper-V ist ein schmuckloses, geradliniges Feature. Und trotzdem verstecken sich dahinter Einschränkungen, die Sie kennen sollten.
Zum einen deaktiviert die Prozessorkompatibilität einige fortschrittlichere Eigenschaften des Prozessors, womit der VM dann nur noch grundlegende, standardisierte Möglichkeiten des Prozessors offenstehen. Zwar hat Microsoft bislang keine offizielle Liste veröffentlicht, welche Features die Prozessorkompatibilität deaktiviert, in der Regel scheinen die Auswirkungen dieser Deaktivierungen allerdings für gewöhnliche Business-Workloads ohne grafikintensive Anforderungen gering bis hin zu verschwindend zu sein.
Merken Sie sich aber vor allem, dass die Prozessorkompatibilität eine Maßnahme auf Zeit ist. Aktivieren Sie die Prozessorkompatibilität vor einer Migration und deaktivieren Sie sie nach erfolgreicher Migration wieder, egal ob bei Live-Migration oder bei Schnellmigration. Durch die Deaktivierung der Prozessorkompatibilität kann der Prozessor des neuen Hosts der VM wieder sämtliche seiner fortschrittlichen Möglichkeiten zur Verfügung stellen.
Außerdem ist die Prozessorkompatibilität nur für ganz bestimmte Einsatzzwecke vorgesehen. Insbesondere für die Live-Migration oder Schnellmigration einer VM zwischen unterschiedlichen Hyper-V Hosts mit vergleichbaren Prozessorarchitekturen, aber unterschiedlichen Prozessorversionen. Wenn Sie die VM vor der Migration herunterfahren, benötigen Sie keinerlei Prozessorkompatibilitätseinstellungen. Ein solches Herunterfahren ist bei der Migration zu einer abweichenden Prozessorarchitektur unumgänglich, bei anderen Migrationen aber lediglich eine Möglichkeit und nicht zwingend erforderlich.
Letztlich benötigen Sie auch keine Prozessorkompatibilität in Hyper-V, wenn Sie eine VM zwischen Hosts mit identischer Prozessorversion migrieren.