Bewältigung von Maschinenausfällen

Dieser Abschnitt enthält Details zur Wiederherstellung von verschiedenen Fehlerszenarien. Alle Fehlerwiederherstellungsszenarien erfordern die Verwendung eines oder mehrerer der unter Backup aufgeführten Backuptypen.

Fehler bei Mitgliedern

In Ermangelung von HA erkennen Master-Knoten die Fehler von Mitgliedern, indem sie regelmäßige Heartbeat-Nachrichten empfangen. Wenn 600 Sekunden lang kein Herzschlag 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. indem Sie ihn physisch neu starten). Wenn die Verbindung zum Element wiederhergestellt wird, markiert der Master das Element erneut als lebendig.

  • Fahren Sie den Host herunter und weisen Sie den Master an, den Mitgliedsknoten mit dem CLI-Befehl xe host-forgetzu 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.

    Es ist wichtig, sicherzustellen, dass der Citrix Hypervisor-Server tatsächlich offline ist, da andernfalls VM-Daten beschädigt werden können.

    Teilen Sie Ihren Pool nicht in mehrere Pools eines einzelnen Hosts auf, indem Sie verwenden xe host-forget. Diese Aktion kann dazu führen, dass alle denselben gemeinsam genutzten Speicher zuordnen und VM-Daten beschädigt werden.

Warnung:

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

Wenn ein Citrix Hypervisor-Server eines Mitglieds ausfällt, sind möglicherweise noch VMs im ausgeführten Zustand registriert. Wenn Sie sicher sind, dass der Citrix Hypervisor-Server des Mitglieds definitiv ausfällt, verwenden Sie den CLI-Befehl xe vm-reset-powerstate, um den Energiezustand der VMs auf halted festzulegen. Weitere Informationen hierzu finden Sie unter vm-reset-powerstate.

Warnung:

Falsche Verwendung dieses Befehls kann zu Datenbeschädigungen führen. Verwenden Sie diesen Befehl nur bei Bedarf.

Bevor Sie VMs auf einem anderen Citrix Hypervisor-Server starten können, müssen Sie auch die Sperren für VM-Speicher freigeben. Nur auf dem Host zu einem Zeitpunkt kann jede Festplatte in einer SR verwendet werden. Es ist wichtig, dass der Datenträger nach einem Ausfall eines Hosts für andere Citrix Hypervisor-Server zugänglich gemacht wird. Führen Sie dazu das folgende Skript auf dem Poolmaster für jede SR aus, die Datenträger aller betroffenen VMs enthält: /opt/xensource/sm/resetvdis.py Host_UUID SR_UUID-Master

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

Warnung:

Stellen Sie sicher, dass der Host heruntergefahren ist, bevor Sie diesen Befehl ausführen. Falsche Verwendung dieses Befehls kann zu Datenbeschädigungen führen.

Wenn Sie versuchen, eine VM auf einem anderen Citrix Hypervisor-Server zu starten, bevor Sie das resetvdis.py 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 bei Bedarf die Rolle des Masters zu übernehmen. Wenn ein Master-Knoten fehlschlägt, tritt die folgende Sequenz von Ereignissen ein:

  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 zu diesem Zeitpunkt wieder auftaucht, stellt er die Kommunikation mit seinen Mitgliedern wieder her, und die Operation wird wieder normal.

Wenn der Master tot ist, wählen Sie eines der Mitglieder und führen Sie den Befehl xe pool-emergency-transition-to-master darauf aus. Sobald es zum Master geworden ist, führen Sie den Befehl xe pool-recover-slaves aus, 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 aufrufen, die Citrix Hypervisor -Software installieren und dem Pool hinzufügen. Da die Citrix Hypervisor-Server im Pool als homogen erzwungen werden, besteht keine Notwendigkeit, den ersetzten Server zum Master zu machen.

Wenn ein Citrix Hypervisor-Server als Master umgestellt wird, überprüfen Sie, ob das Standard-Poolspeicher-Repository auf einen entsprechenden Wert festgelegt ist. Diese Prüfung kann mit dem Befehl xe pool-param-list durchgeführt werden und überprüft werden, ob der Parameter default-SR auf ein gültiges Speicher-Repository verweist.

Pool-Ausfälle

In dem unglücklichen 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 mithilfe des xe pool-dump-database CLI-Befehls sichern (siehe pool-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 ist, die Pooldatenbank mit dem Befehl xe pool-restore-database aus Ihrem Backup wieder her (siehe pool-Restore-Datenbank).

  3. Stellen Sie mit 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 frisch installierten Mitgliedshosts aus, und starten Sie Ihre VMs auf den entsprechenden Hosts.

Bewältigung eines Fehlers aufgrund von Konfigurationsfehlern

Wenn der physische Host-Computer 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 Backup wiederherstellen aus.

Physischer Maschinenausfall

Wenn der physische Hostcomputer fehlgeschlagen ist, verwenden Sie zum Wiederherstellen das entsprechende Verfahren aus der folgenden Liste.

Warnung:

Alle VMs, die auf einem früheren Mitglied (oder dem vorherigen Host) ausgeführt werden, die fehlgeschlagen sind, werden weiterhin als Running in der Datenbank markiert. Dieses Verhalten dient der Sicherheit. Das gleichzeitige Starten einer VM auf zwei verschiedenen Hosts würde zu schwerwiegenden Festplattenbeschädigungen führen. Wenn Sie sicher sind, dass die Maschinen (und VMs) offline sind, können Sie den Betriebszustand der virtuellen Maschine auf Halted zurücksetzen:

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

VMs können dann mit XenCenter oder der Befehlszeilenschnittstelle 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.

So stellen Sie einen Pool mit allen Hosts fehl:

  1. Führen Sie folgenden Befehl aus:

    xe pool-restore-database file-name=backup
    

    Warnung:

    Dieser Befehl wird nur erfolgreich ausgeführt, wenn der Zielcomputer über eine entsprechende Anzahl von entsprechend benannten NICs verfügt.

  2. Wenn der Zielcomputer eine andere Ansicht des Speichers als der ursprüngliche Computer aufweist, ändern Sie die Speicherkonfiguration mit dem Befehl pbd-destroy. Verwenden Sie als Nächstes den Befehl pbd-create, um Speicherkonfigurationen neu zu erstellen. Dokumentation dieser Befehle finden Sie unter pbd Befehle.

  3. Wenn Sie eine Speicherkonfiguration erstellt haben, verwenden Sie pbd-plug oder das Menüelement 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 kein VM-Speicher verfügbar ist:

  1. Führen Sie den folgenden Befehl aus:

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

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

    Mit diesem Befehl wird versucht, die VM-Metadaten nach bestem Aufwand wiederherzustellen.

  3. Starten Sie alle VMs neu.