Bewältigen Sie Maschinenausfälle

Dieser Abschnitt enthält Details zum Wiederherstellen von verschiedenen Ausfallszenarien. Alle Fehlerwiederherstellungsszenarien erfordern die Verwendung eines oder mehrerer der in aufgeführten SicherungstypenBackup.

Mitgliederfehler

In Ermangelung von HA erkennen Master-Knoten die Fehler von Mitgliedern, indem sie regelmäßige Heartbeat-Nachrichten empfangen. Wenn 600 Sekunden lang kein Heartbeat empfangen wurde, geht der Master davon aus, dass das Mitglied tot ist. Es gibt zwei Möglichkeiten, dieses Problem zu beheben:

  • Reparieren Sie den toten Host (z.B. durch physischen Neustart). Wenn die Verbindung zum Mitglied wiederhergestellt wird, markiert der Master das Mitglied erneut als lebendig.

  • Fahren Sie den Host herunter und weisen Sie den Master an, den Mitgliedsknoten mithilfe desxe host-forget CLI-Befehls zu vergessen. Sobald das Mitglied vergessen wurde, werden alle dort ausgeführten VMs als offline markiert und können auf anderen Citrix Hypervisor or-Servern neu gestartet werden. Beachten Sie, dass es sehr wichtig ist, sicherzustellen, dass der Citrix Hypervisor or-Server tatsächlich offline ist, da sonst VM-Daten beschädigt werden können. Achten Sie darauf, Ihren Pool nicht in mehrere Pools eines einzelnen Hosts zu teilenxe host-forget, da dies dazu führen kann, dass alle denselben gemeinsam genutzten Speicher zuordnen und VM-Daten beschädigt werden.

Warnhinweis:

  • Wenn Sie den vergessenen Host erneut als aktiven Host verwenden möchten, führen Sie eine Neuinstallation der Citrix Hypervisor or-Software durch.
  • Verwenden Sie keinenxe host-forget Befehl, wenn HA im Pool aktiviert ist. Deaktivieren Sie zuerst HA, dann vergessen Sie den Host, und aktivieren Sie dann HA wieder.

Wenn ein Citrix Hypervisor or-Server eines Mitglieds ausfällt, sind möglicherweise noch VMs im Status „ Ausführen “ registriert. Wenn Sie sicher sind, dass der Citrix Hypervisor or-Server des Mitglieds definitiv ausgefallen ist, verwenden Sie denxe vm-reset-powerstate CLI-Befehl, um den Energiezustand der VMs auf festzulegenhalted . Weitere Informationen finden Sie unter vm-reset-powerstate.

Warnhinweis:

Eine falsche Verwendung dieses Befehls kann zu Datenbeschädigung führen. Verwenden Sie diesen Befehl nur, wenn dies unbedingt erforderlich ist.

Bevor Sie VMs auf einem anderen Citrix Hypervisor or-Server starten können, müssen Sie die Sperren für den VM-Speicher freigeben. Jeder Datenträger in einem SR kann jeweils nur von einem Host verwendet werden. Daher ist es wichtig, dass der Datenträger für andere Citrix Hypervisor or-Server zugänglich gemacht werden kann, sobald ein Host ausgefallen ist. Führen Sie dazu das folgende Skript auf dem Poolmaster für jeden SR aus, der Datenträger aller betroffenen VMs enthält:/opt/xensource/sm/resetvdis.py Host_UUID SR_UUID-Master

Sie müssen nur die dritte Zeichenfolge („Master“) angeben, wenn der ausgefallene Host zum Zeitpunkt des Absturzes der SR-Master - Poolmaster Citrix Hypervisor or-Server mit lokalem Speicher - war.

Warnhinweis:

Stellen Sie sicher, dass der Host ausgefallen ist, bevor Sie diesen Befehl ausführen. Eine falsche Verwendung dieses Befehls kann zu Datenbeschädigung führen.

Wenn Sie versuchen, eine VM auf einem anderen Citrix Hypervisor or-Server zu starten, bevor Sie das obige Skript ausführen, wird die folgende Fehlermeldung angezeigt:VDI <UUID> already attached RW``

Master-Fehler

Jedes Mitglied eines Ressourcenpools enthält alle Informationen, die erforderlich sind, um die Rolle des Masters zu übernehmen, falls erforderlich. Wenn ein Master-Knoten fehlschlägt, tritt die folgende Reihenfolge von Ereignissen auf:

  1. Wenn HA aktiviert ist, wird automatisch ein anderer Master gewählt.

  2. Wenn HA nicht aktiviert ist, wartet jedes Mitglied auf die Rückkehr des Masters.

Wenn der Master an diesem Punkt wieder auftaucht, stellt er die Kommunikation mit seinen Mitgliedern wieder her, und der Vorgang wird wieder normal.

Wenn der Master wirklich tot ist, wählen Sie eines der Mitglieder und führen Sie den Befehlxe pool-emergency-transition-to-master darauf aus. Sobald es zum Master geworden ist, führen Sie den Befehl ausxe pool-recover-slaves und die Mitglieder zeigen nun auf den neuen Master.

Wenn Sie den Server reparieren oder ersetzen, der der ursprüngliche Master war, können Sie ihn einfach starten, die Citrix Hypervisor or-Serversoftware installieren und dem Pool hinzufügen. Da die Citrix Hypervisor or-Server im Pool als homogen erzwungen werden, ist es nicht notwendig, den ersetzten Server zum Master zu machen.

Wenn ein Mitglied Citrix Hypervisor or-Server auf einen Master umgestellt wird, sollten Sie auch überprüfen, ob das Standard-Poolspeicher-Repository auf einen entsprechenden Wert festgelegt ist. Dies kann mit demxe pool-param-list Befehl geschehen und überprüft werden, ob derdefault-SR Parameter auf ein gültiges Speicher-Repository verweist.

Pool-Fehler

Im bedauerlichen Fall, dass Ihr gesamter Ressourcenpool fehlschlägt, müssen Sie die Pooldatenbank von Grund auf neu erstellen. Stellen Sie sicher, dass Sie Ihre Pool-Metadaten regelmäßig mit demxe pool-dump-database CLI-Befehl sichern (siehePool-Dump-Datenbank ).

So stellen Sie einen vollständig fehlgeschlagenen Pool wieder her:

  1. Installieren Sie einen neuen Satz von Hosts. Becken Sie sie in diesem Stadium nicht auf.

  2. Stellen Sie für den Host, der als Master nominiert wurde, die Pooldatenbank mithilfe desxe pool-restore-database Befehls aus Ihrer Sicherung wieder her (siehePool-Restore-Datenbank ).

  3. Stellen Sie mithilfe von XenCenter eine Verbindung zum Master-Host her, und stellen Sie sicher, dass alle freigegebenen Speicher und VMs wieder verfügbar sind.

  4. Führen Sie einen Pool-Join-Vorgang auf den verbleibenden neu installierten Mitgliedshosts aus, und starten Sie Ihre VMs auf den entsprechenden Hosts.

Bewältigung von Fehlern aufgrund von Konfigurationsfehlern

Wenn der physische Hostcomputer betriebsbereit ist, aber die Software- oder Hostkonfiguration beschädigt ist:

  1. Führen Sie den folgenden Befehl aus, um die Hostsoftware und -konfiguration wiederherzustellen:

    xe host-restore host=host file-name=hostbackup
    
  2. Starten Sie die Host-Installations-CD neu, und wählen Sie Aus Sicherung wiederherstellen.

Physischer Maschinenausfall

Wenn der physische Hostcomputer fehlgeschlagen ist, verwenden Sie die unten aufgelistete Vorgehensweise zum Wiederherstellen.

Warnung:

Alle VMs, die auf einem früheren Mitglied (oder dem vorherigen Host) ausgeführt werden, die fehlgeschlagen sind, werden weiterhin alsRunningin der Datenbank markiert. Dies dient der Sicherheit. Das gleichzeitige Starten einer VM auf zwei verschiedenen Hosts würde zu schwerwiegenden Datenträgerbeschädigungen führen. Wenn Sie sicher sind, dass die Maschinen (und VMs) offline sind, können Sie den Energiezustand derHaltedVM auf zurücksetzen

xe vm-reset-powerstate vm=vm_uuid --force

VMs können dann mit XenCenter oder der CLI neu gestartet werden.

So ersetzen Sie einen fehlgeschlagenen Master durch ein noch laufendes Mitglied:

  1. Führen Sie die folgenden Befehle aus:

    xe pool-emergency-transition-to-master
    xe pool-recover-slaves
    
  2. Wenn die Befehle erfolgreich sind, starten Sie die VMs neu.

Fehler beim Wiederherstellen eines Pools mit allen Hosts:

  1. Führen Sie den Befehl aus:

    xe pool-restore-database file-name=backup
    

    Warnhinweis:

    Dieser Befehl ist nur erfolgreich, wenn der Zielcomputer über eine entsprechende Anzahl von entsprechend benannten Netzwerkkarten verfügt.

  2. Wenn der Zielcomputer eine andere Ansicht des Speichers hat (z. B. eine Blockspiegelung mit einer anderen IP-Adresse) als der ursprüngliche Computer, ändern Sie die Speicherkonfiguration mit dempbd-destroy Befehl und dann mit dempbd-create Befehl , um Speicherkonfigurationen neu zu erstellen. Dokumentationpbd-Befehlezu diesen Befehlen finden Sie unter.

  3. Wenn Sie eine neue Speicherkonfiguration erstellt haben, verwenden Siepbd-plug oder Speicher> Speicher-Repository reparieren in XenCenter, um die neue Konfiguration zu verwenden.

  4. Starten Sie alle VMs neu.

So stellen Sie eine VM wieder her, wenn der VM-Speicher nicht verfügbar ist:

  1. Führen Sie den folgenden Befehl aus:

    xe vm-import filename=backup metadata=true
    
  2. Wenn der Metadatenimport fehlschlägt, führen Sie den folgenden Befehl aus:

    xe vm-import filename=backup metadata=true --force
    

    Dieser Befehl versucht, die VM-Metadaten auf einer „besten“ Basis wiederherzustellen.

  3. Starten Sie alle VMs neu.