Freigeben über


Dynamischer Prozessorkompatibilitätsmodus

Gilt für: Azure Local, Version 22H2

Der Kompatibilitätsmodus für dynamische Prozessor wird aktualisiert, um neue Prozessorfunktionen in einer gruppierten Umgebung nutzen zu können. Prozessorkompatibilität funktioniert, indem die unterstützten Prozessoreigenschaften für jeden einzelnen Knoten im Cluster ermittelt und der gemeinsame Nenner für alle Prozessoren berechnet wird. Virtuelle Computer (VMs) sind so konfiguriert, dass sie die maximale Anzahl von Features verwenden, die auf allen Servern im Cluster verfügbar sind. Dies verbessert die Leistung im Vergleich zur vorherigen Version der Prozessorkompatibilität, bei der standardmäßig ein minimaler, fester Satz von Prozessorfunktionen verwendet wurde.

Verwendung des Prozessorkompatibilitätsmodus

Mit dem Prozessorkompatibilitätsmodus können Sie einen virtuellen Livecomputer (Livemigration) verschieben oder einen virtuellen Computer verschieben, der zwischen Knoten mit verschiedenen Prozessfunktionssätzen gespeichert wird. Selbst wenn Prozessorkompatibilität aktiviert ist, können Sie VMs jedoch nicht zwischen Hosts mit unterschiedlichen Prozessorherstellern verschieben. Beispielsweise können Sie ausgeführte VMs oder VMs mitgespeichertem Zustand nicht von einem Host mit Intel-Prozessoren auf einen Host mit AMD-Prozessoren verschieben. Wenn Sie einen virtuellen Computer auf diese Weise verschieben müssen, fahren Sie zuerst den virtuellen Computer herunter, und starten Sie ihn dann auf dem neuen Host neu.

Wichtig

Nur Hyper-V-VMs mit der neuesten Konfigurationsversion (10.0) profitieren von der dynamischen Konfiguration. VMs mit älteren Versionen profitieren nicht von der dynamischen Konfiguration und verwenden keine festen Prozessorfunktionen aus der vorherigen Version.

Es wird empfohlen, den Prozessorkompatibilitätsmodus für VMs zu aktivieren, die unter Azure Stack HCI ausgeführt werden. Dies bietet die höchste Ebene an Funktionen, und wenn es an der Zeit ist, zu neuer Hardware zu migrieren, erfordert das Verschieben der virtuellen Computer keine Ausfallzeiten.

Hinweis

Sie müssen den Prozessorkompatibilitätsmodus nicht verwenden, wenn Sie die virtuellen Computer beenden und neu starten möchten. Jedes Mal, wenn eine VM neu gestartet wird, listet das Gastbetriebssystem die Prozessorkompatibilitäten auf, die auf dem neuen Hostcomputer verfügbar sind.

Warum der Prozessorkompatibilitätsmodus erforderlich ist

Prozessorhersteller führen häufig Optimierungen und neue Funktionen in ihren Prozessoren ein. Diese Funktionen verbessern häufig die Leistung oder Sicherheit, indem spezielle Hardware für eine bestimmte Aufgabe verwendet wird. Beispielsweise verwenden viele Medienanwendungen Prozessorfunktionen, um Vektorberechnungen zu beschleunigen. Diese Features sind selten erforderlich, damit Anwendungen ausgeführt werden können. sie steigern die Leistung.

Der Funktionssatz, der für einen Prozessor verfügbar ist, variiert je nach Hersteller, Modell und Alter. Bei Betriebssystemen und Anwendungssoftware werden in der Regel die Prozessorfunktionen des Systems aufgelistet, die beim ersten Start festgelegt wurden. Software erwartet nicht, dass sich die verfügbaren Prozessorfunktionen während ihrer Lebensdauer ändern, was niemals geschieht, wenn sie auf einem physischen Computer ausgeführt wird, da Prozessorfunktionen statisch sind, es sei denn, die Prozessorupgrades.

VM-Mobilitätsfeatures ermöglichen jedoch die Migration einer ausgeführten VM zu einem neuen Virtualisierungshost. Wenn Software in der VM eine bestimmte Prozessorfunktion erkennt und startet, und dann wird die VM ohne diese Funktion auf einen neuen Virtualisierungshost verschoben, schlägt die Software wahrscheinlich fehl. Dies kann dazu führen, dass die Anwendung oder die CM abstürzt.

Um Fehler zu vermeiden, führt Hyper-V "Preflight"-Prüfungen durch, wenn eine VM-Livemigration oder ein Speicher-/Wiederherstellungsvorgang initiiert wird. Diese Überprüfungen vergleichen die Prozessorfeatures, die für die VM auf dem Quellhost verfügbar sind, mit dem Satz von Funktionen, die auf dem Zielhost verfügbar sind. Wenn diese Featuresätze nicht übereinstimmen, wird der Migrations- oder Wiederherstellungsvorgang abgebrochen.

Neuerungen im Prozessorkompatibilitätsmodus

In der Vergangenheit wurden alle neuen Prozessoranweisungensätze ausgeblendet, was bedeutet, dass das Gastbetriebssystem und die Anwendungssoftware keine Verbesserungen des Prozessoranweisungssatzes verwenden konnten, um Anwendungen und VMs weiterhin leistungsfähig zu halten.

Um diese Einschränkung zu überwinden, bietet der Prozessorkompatibilitätsmodus jetzt erweiterte, dynamische Funktionen für Prozessoren, die eine Adressübersetzung auf zweiter Ebene (Second-Level Address Translation, SLAT) bieten. Diese neue Funktion berechnet den gemeinsamen Nenner der CPU-Features, die von den Knoten im Cluster unterstützt werden, und aktualisiert den vorhandenen Prozessorkompatibilitätsmodus auf einer VM, um diesen dynamisch berechneten Featuresatz anstelle des alten hartcodierten Featuresatzes zu verwenden.

Der neue Prozessorkompatibilitätsmodus stellt sicher, dass die Für VMs über Virtualisierungshosts verfügbaren Prozessorfeatures übereinstimmen, indem eine gemeinsame Funktion auf allen Servern im Cluster dargestellt wird. Jede VM empfängt die maximale Anzahl von Prozessoranweisungssätzen, die auf allen Servern im Cluster vorhanden sind. Dieser Prozess erfolgt automatisch und wird immer aktiviert und im gesamten Cluster repliziert, sodass es keinen Befehl zum Aktivieren oder Deaktivieren des Prozesses gibt.

Nutzen des Prozessorkompatibilitätsmodus

Im Folgenden finden Sie wichtige Konzepte zum Verwenden des Prozessorkompatibilitätsmodus in Hyper-V:

  • Ausgeführte VMs können nur zwischen Virtualisierungshosts migriert werden, die Prozessoren desselben Herstellers verwenden.

  • Sie müssen die VM herunterfahren, bevor Sie den Prozessorkompatibilitätsmodus aktivieren oder deaktivieren können.

  • Der Prozessorkompatibilitätsmodus ist nicht zum Verschieben von VMs erforderlich, das ein Beenden und Neustarten des virtuellen Computers beinhaltet.

  • Wenn ein virtueller Computer neu gestartet wird, listet das Gastbetriebssystem die Prozessorfeatures auf, die auf dem neuen Hostcomputer verfügbar sind.

Hinweis

In Windows Server empfiehlt Microsoft, den Prozessorkompatibilitätsmodus nur vor VM-Migrationsszenarios zu aktivieren und nach Abschluss der Migration wieder zu deaktivieren.

Migrieren ausgeführter VMs zwischen Clustern

Wenn davon ausgegangen wird, dass alle Server in jedem Cluster dieselbe Hardware ausführen, ist es möglich, virtuelle Computer zwischen Clustern zu migrieren. Es gibt drei gängige Szenarien.

  • Livemigration einer VM aus einem Cluster mit neuen Prozessoren zu einem Cluster mit denselben Prozessoren. Die VM-Funktionen werden an den Zielcluster übertragen. Dieses Szenario erfordert keine Aktivierung des Prozessorkompatibilitätsmodus. Wenn sie jedoch aktiviert ist, werden keine Probleme verursacht.

  • Livemigration einer VM aus einem Cluster mit älteren Prozessoren zu einem Cluster mit neueren Prozessoren. Die VM-Funktionen werden an den Zielcluster übertragen. Wenn der virtuelle Computer neu gestartet wird, empfängt er in diesem Szenario die neueste berechnete Funktion des Zielclusters.

  • Livemigration einer VM aus einem Cluster mit neueren älteren Prozessoren zu einem Cluster mit älteren Prozessoren. Sie müssen den VM-Prozessor in PowerShell so festlegen, dass er MinimumFeatureSet für den Parameter CompatibilityForMigrationMode verwendet, oder in Windows Admin Center unter Virtuelle Computer > Einstellungen > Prozessoren die Option Compatible across other hosts with the same CPU manufacturer (Kompatibel mit anderen Hosts desselben CPU-Herstellers) auswählen. Diese Einstellung weist die VM den minimalen Prozessorfunktionen zu, die auf dem Server angeboten werden. Sobald die Kompatibilität auf "Kompatibel" über den Cluster verschoben wurde (empfohlen) und der virtuelle Computer neu gestartet wird, empfängt sie die neueste berechnete Funktion des Zielclusters.

Auswirkungen des Verwendens des Prozessorkompatibilitätsmodus

Es ist schwierig, die Gesamtleistungseffekte des Prozessorkompatibilitätsmodus zu quantifizieren. Der Leistungsverlust hängt in erster Linie von der Workload ab, die auf dem virtuellen Computer ausgeführt wird. Einige Workloads sind möglicherweise nicht betroffen, während andere einen spürbaren Unterschied zeigen. Software, die stark auf Hardwareoptimierungen (z. B. Verschlüsselung, Komprimierung oder intensive Gleitkommaberechnungen) angewiesen ist, wirkt sich am meisten aus.

Anwendungen, die eine große Menge an Daten verschlüsseln oder entschlüsseln, profitieren von diesem Prozessorfeature, sodass das Deaktivieren durch Aktivieren des Prozessorkompatibilitätsmodus die Leistung dieser spezifischen Vorgänge beeinträchtigt.

Wenn Sie sich Gedanken über die Leistung des Prozessorkompatibilitätsmodus machen, sollten Sie die Leistung der VM-Workload mit aktivierten und deaktivierten Prozessorkompatibilitätsmodus vergleichen.

Konfigurieren einer VM für die Verwendung des Prozessorkompatibilitätsmodus

In diesem Abschnitt wird erläutert, wie Sie einen virtuellen Computer für die Verwendung des Prozessorkompatibilitätsmodus konfigurieren. Es ist möglich, VMs mit und ohne Kompatibilitätsmodus im gleichen Cluster ausführen.

Wichtig

Sie müssen die VM herunterfahren, bevor Sie den Prozessorkompatibilitätsmodus aktivieren oder deaktivieren können.

Aktivieren des Prozessorkompatibilitätsmodus mit Windows Admin Center

So aktivieren Sieden Prozessorkompatibilitätsmodus mit Windows Admin Center:

  1. Stellen Sie eine Verbinden mit Ihrem Cluster her, und wählen Sie dann im Bereich Extras die Option Virtuelle Computer aus.

  2. Wählen Sie unter Bestand die VM aus, auf der Sie den Prozessorkompatibilitätsmodus aktivieren möchten, erweitern Sie das Menü Energie, und wählen Sie dann Herunterfahren aus.

  3. Wählen Sie Einstellungen und dann Prozessoren aus, und aktivieren Sie das Kontrollkästchen für Prozessorkompatibilität.

Screenshot des Kontrollkästchens zum Aktivieren der Prozessorkompatibilität.

  1. Wenn Sie die CPU-Features des virtuellen Computers auf die maximale Ebene festlegen möchten, die von allen Servern in einem Cluster unterstützt wird, wählen Sie Compatible across the cluster (Recommended) (Kompatibel mit dem Cluster (Empfohlen)) aus. Dadurch wird die VM-Leistung maximiert und gleichzeitig die Möglichkeit bewahrt, den ausgeführten virtuellen Computer auf andere Server im Cluster zu verschieben. Es wird empfohlen, dies für alle virtuellen Computer zu aktivieren, die auf Azure Stack HCI 21H2-Clustern ausgeführt werden. Wenn sie deaktiviert ist, muss der virtuelle Computer neu gestartet werden, um zu einem Host mit einer anderen Ebene unterstützter CPU-Anweisungen zu wechseln, die mit verschiedenen Generationen von CPUs üblich sind.

    Wenn Sie die CPU-Features des virtuellen Computers auf ein Minimum festlegen möchten, um sicherzustellen, dass Sie den ausgeführten virtuellen Computer auf andere Hyper-V-Hosts außerhalb des Clusters verschieben können, solange sie denselben CPU-Hersteller haben, wählen Sie Compatible across other hosts with the same CPU manufacturer (Kompatibel mit anderen Hosts desselben CPU-Herstellers) aus.

    Hinweis

    Wie der dynamische Prozessorkompatibilitätsmodus gilt die Option Compatible across the cluster (Kompatibel mit dem Cluster) ausschließlich für Azure Stack HCI 21H2 und wird für keine anderen Betriebssysteme unterstützt.

  2. Wählen Sie Prozessoreinstellungen speichern aus, und starten Sie den virtuellen Computer neu.

In diesem Abschnitt wird erläutert, wie Sie einen virtuellen Computer für die Verwendung des Prozessorkompatibilitätsmodus mit Hyper-V-Manager oder PowerShell konfigurieren. Es ist möglich, VMs mit und ohne Kompatibilitätsmodus im gleichen Cluster ausführen.

Wichtig

Sie müssen die VM herunterfahren, bevor Sie den Prozessorkompatibilitätsmodus aktivieren oder deaktivieren können.

Aktivieren des Prozessorkompatibilitätsmodus mithilfe von Hyper-VM Manager

So aktivieren Sie den Prozessorkompatibilitätsmodus für eine VM mithilfe von Hyper-V Manager:

  1. Fahren Sie die VM herunter.

  2. Wählen Sie "Start" aus, zeigen Sie auf "Verwaltungstools", und wählen Sie dann "Hyper-V-Manager" aus.

  3. Wählen Sie den Server mit Hyper-V und den gewünschten virtuellen Computer aus.

  4. Wenn der virtuelle Computer ausgeführt wird, müssen Sie ihn herunterfahren, um den Prozessorkompatibilitätsmodus zu aktivieren.

  5. Wählen Sie im Aktionsbereich "Einstellungen" und dann " Prozessor" aus.

  6. Erweitern Sie den Prozessor, und wählen Sie "Kompatibilität" aus.

  7. Wählen Sie "Zu einem physischen Computer mit einem anderen Prozessor migrieren" und dann "OK" aus.

  8. Starten Sie den virtuellen Computer neu.

Deaktivieren des Prozessorkompatibilitätsmodus mithilfe von Hyper-VM Manager

So deaktivieren Sie den Prozessorkompatibilitätsmodus für eine VM mithilfe von Hyper-V Manager:

  1. Fahren Sie die VM herunter.

  2. Wählen Sie "Start" aus, zeigen Sie auf "Verwaltungstools", und wählen Sie dann "Hyper-V-Manager" aus.

  3. Wählen Sie den Server mit Hyper-V und den gewünschten virtuellen Computer aus.

  4. Wenn der virtuelle Computer ausgeführt wird, müssen Sie ihn herunterfahren, um den Prozessorkompatibilitätsmodus zu deaktivieren.

  5. Wählen Sie im Aktionsbereich "Einstellungen" und dann " Prozessor" aus.

  6. Erweitern Sie den Prozessor, und wählen Sie "Kompatibilität" aus.

  7. Deaktivieren Sie das Kontrollkästchen "Zu einem physischen Computer migrieren" mit einem anderen Prozessorkontrollkästchen, und wählen Sie dann "OK" aus.

  8. Starten Sie den virtuellen Computer neu.

Aktivieren des Prozessorkompatibilitätsmodus mithilfe von PowerShell

Führen Sie das folgende Cmdlet aus, um den Prozessorkompatibilitätsmodus zu aktivieren:

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true 

Es wird empfohlen, die CPU-Features des virtuellen Computers auf die maximale Stufe festzulegen, die von allen Servern im Cluster unterstützt wird. Dadurch wird die VM-Leistung maximiert und gleichzeitig die Möglichkeit bewahrt, den ausgeführten virtuellen Computer auf andere Server im Cluster zu verschieben.

Führen Sie das folgende Cmdlet aus, um der VM die Verwendung der allgemeinen Clusterknotenfeatures zu ermöglichen:

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true -CompatibilityForMigrationMode CommonClusterFeatureSet

Alternativ können Sie die CPU-Features des virtuellen Computers auf den Mindestwert festlegen, um sicherzustellen, dass Sie den ausgeführten virtuellen Computer auf andere Hyper-V-Hosts außerhalb des Clusters verschieben können, wenn sie über den gleichen CPU-Hersteller verfügen.

Führen Sie das folgende Cmdlet aus, um es der VM zu ermöglichen, die standardmäßigen Mindestfeatures für die clusterübergreifende Migration zu verwenden:

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $true -CompatibilityForMigrationMode MinimumFeatureSet

Deaktivieren des Prozessorkompatibilitätsmodus mithilfe von PowerShell

Um den Prozessorkompatibilitätsmodus für einen virtuellen Computer mithilfe von PowerShell zu deaktivieren, fahren Sie den virtuellen Computer herunter, führen Sie das Set-VMProcessor-Cmdlet aus, und legen Sie CompatibilityForMigrationEnabled auf $false fest:

get-vm -name <name of VM> -ComputerName <target cluster or host> | Set-VMProcessor -CompatibilityForMigrationEnabled $false

Starten Sie die VM anschließend neu.