XenServer "VDI ist nicht verfügbar" - Wie Man

XenServer "VDI ist nicht verfügbar"

Ich dachte, ich würde das weitergeben und vielleicht jemandem Kopfschmerzen oder drei ersparen. Ihre Situation kann anders sein. Aber hoffentlich wird das, was ich gesehen und getan habe, das dankbar funktioniert hat, auch in die richtige Richtung weisen.

Langatmig, aber empfohlene Lektüre:

Ehrlich gesagt kann ich das nicht als meine eigene behaupten. Ich bin nur der Nutznießer der Arbeit anderer. Dies wird zusammengestellt aus Foren in Citrix, Geek-Blogs, hektischen Google-Suchen und Trial-Error in meinem dev-net. Aber in meiner Hast, das System wiederherzustellen, habe ich nie etwas anderes als die Schritte selbst aufgeschrieben, und als solches kann das Bier nicht wegen derer ausgegeben werden, die diesen Prozess für mich ausgelöst haben.

Davon abgesehen, habe ich das zu oft benutzt - zuletzt GESTERN. Es hat jedes Mal geklappt, wenn ich es benutzt habe, unabhängig davon, wie viele Xenserver oder welche Art von SR gemeinsam verwendet werden: 8 Mal im Dev-Net, zu Recht zerbreche ich absichtlich Sachen! ... und 3 Mal auf Produktionssystemen und Einmal über das Telefon mit einem nervösen Geek in einer Anwaltskanzlei (die einen Dinosaurier-Iomega-NAS benutzte ... Ich dachte, ich wäre billig!)

Grundszenario: Zwei XenServer 6.0-Boxen in einem Pool mit gemeinsam genutztem Speicher (NFS-Freigabe, iSCSI oder was auch immer). Der Pool-Master fällt auf eine Weise aus, die den Pool außer Gefecht setzt und die VMs eingefroren sind. Der Master ist quasi online, Nothins werden nicht ordnungsgemäß offline genommen usw. Der Slave scheint jedoch in Ordnung zu sein, und der SR scannt in Ordnung, es werden keine Fehler angezeigt.

Kurze Version
1. Stellen Sie sicher, dass der Master ausgeschaltet ist.
2. Verwenden Sie die CLI auf dem sekundären Server, um den Pool-Master zu erzwingen.
3. Sagen Sie dem Pool, dass er den toten Server vergessen soll.
4. Erzwingen Sie die VMs, die nicht gestartet werden, in einen ausgeschalteten Zustand.
5. Vergessen Sie die virtuellen Laufwerke jeder VM, die nicht gestartet werden.
6. Scannen Sie die SR erneut, und geben Sie die Namen der nun verwaisten virtuellen Laufwerke erneut ein.
7. Verbinden Sie die virtuellen Laufwerke erneut mit den VMs
8. Starten Sie Ihre VMs.
9. Reparieren Sie den ausgefallenen Server <erneut, und installieren Sie ihn erneut

9 Schritte insgesamt

Schritt 1: Stellen Sie sicher, dass der Master ausgeschaltet ist

Holen Sie es aus dem Netzwerk.

In unserem Fall ist die lokale Festplatte ausgefallen, das Betriebssystem war jedoch immer noch online
"etwas." So hat der Pool es nie als unten markiert.

Schritt 2: Verwenden Sie die CLI auf dem sekundären Server, um den Pool-Master zu erzwingen

#xe Pool-Notfall-Übergang zum Master

Wenn Sie andere Sklaven haben:
# xe pool-recover-slaves

Schritt 3: Sagen Sie dem Pool, dass er den toten Server vergessen soll.

Klicken Sie in XenCenter mit der rechten Maustaste auf den toten Server und "Server aus Pool entfernen".

Schritt 4: Erzwingen Sie, dass die VMs nicht ausgeschaltet werden

#xe vm-list (beachte die UUIDs !!!)

#xe vm-reset-powerstate force = true vm = "vm name"
VM-Name ist derselbe wie der im Befehl VM-Liste aufgeführte Name.

Schritt 5: Vergessen Sie die virtuellen Festplatten jeder VM, die nicht gestartet werden.

- Dokumentieren Sie zunächst und in jedem VDI Ihre SR. Größe, Fname usw.

- Zweitens, ich EMPFIEHLT, dass Sie Schritt 5, dann 6, dann 7 für EINE virtuelle Festplatte ausführen, dann zurück zu Schritt 5 für die nächste virtuelle Festplatte gehen usw. Hält die Dinge aufgeräumt, insbesondere wenn Sie mehrere virtuelle Festplatten derselben Festplatte haben Größe!

#xe Vdi-Liste

Sie benötigen die UUID, aber NICHT die sr-uuid. Passt auf! Wenn Sie es noch nicht haben, notieren Sie die UUID jedes VDI für jede VM. Beachten Sie die Position 0,1,2 .. usw. Dies ist WICHTIG!

#xe vdi-forget uuid =

Schritt 6: Scannen Sie die SR erneut, und geben Sie die Namen der nun verwaisten virtuellen Festplatten erneut ein.

Klicken Sie in XenCenter auf das SR und dann auf "Rescan".

Die virtuelle Festplatte, die Sie in Schritt 5 "vergessen" haben, wird angezeigt. Die Felder Name und Beschreibung sind jedoch leer. Hier kommt die Dokumentation hinzu, die Sie in Schritt 5 erstellt haben.

Ordnen Sie die Namen und Beschreibungen neu zu. Ihrer virtuellen Festplatte.

Fahren Sie mit Schritt 7 fort.

Schritt 7: Verbinden Sie die virtuellen Festplatten erneut mit den VMs

Wählen Sie in XenCenter die VM aus, mit der Sie arbeiten, und wechseln Sie zur Registerkarte "Storage". Klicken Sie auf die Schaltfläche "Attach", wählen Sie die virtuelle Festplatte aus Schritt 6 aus und klicken Sie auf "Attach".

Nun ... Klicken Sie mit der rechten Maustaste auf die gerade neu verbundene virtuelle Festplatte und wählen Sie "Eigenschaften". Das letzte Element auf der linken Seite in diesem Fenster enthält den Namen der VM und "Device ....". Klicken Sie darauf und stellen Sie sicher, dass die "Device Position" -Nummer mit der in Schritt 5 in Ihrer Dokumentation angegebenen übereinstimmt.

Schritt 8: Starten Sie Ihre VMs

Wenn die Standardeinstellung fehlerfrei war und die vorherigen Schritte problemlos ausgeführt wurden, drücken Sie die Daumen und versuchen Sie, die gerade reparierten VMs zu starten.

Schritt 9: Reparieren Sie den toten Server und verbinden Sie ihn erneut

Wenn dies der Fall ist, reparieren Sie den ausgefallenen Server, installieren Sie Xenserver erneut und verbinden Sie ihn erneut mit dem Pool.

Jetzt mach ein Nickerchen.

DOKUMENT ALLES. Es mag jetzt unbedeutend oder langweilig erscheinen ... aber die UUIDs aller virtuellen Laufwerke, SR usw. JETZT zu haben, spart Ihnen später viel Zeit ...

Ich werde nicht besprechen, wie oder warum Administrationswerkzeuge, Plattformen, Betriebssysteme usw. erstellt werden. Wie immer geben die Situation und das Gelände vor. Ich bin kein Scheißkerl mit XenServer. Es macht was ich brauche, es macht es einfach und zuverlässig. Ich habe diese Schritte im Laufe der Jahre möglicherweise mehrmals verwendet, aber selten auf den Produktionssystemen. Ich hoffe, dies half, die Gehirnzellen ein wenig zu stimulieren.