Wie stelle ich eine Delta-Datei (Festplatte) auf Vmware ESXi wieder her?

Wie stelle ich eine Delta-Datei (Festplatte) auf Vmware ESXi wieder her?

Verwenden von VMware Server ESXi (Gratisversion)

Ich habe eine virtuelle Maschine (Win 2k3 R2-Server). Als ich sie zum ersten Mal bereitgestellt habe, habe ich einen Snapshot davon gemacht. Ich habe kürzlich versucht, das primäre Laufwerk mit meiner standardmäßigen hardwarebasierten Methode zu klonen, um eine Windows-Festplatte zu vergrößern. (Mit Knoppix das Laufwerk auf ein neues Laufwerk klonen, es bootfähig machen, dann wollte ich die Partition über Diskpart innerhalb von Windows erweitern). Dieser Vorgang ist fehlgeschlagen. Ich habe versucht, das geklonte Laufwerk (über die VMware-GUI) so einzurichten, dass es das ursprüngliche Laufwerk ersetzt, zu booten und fertig. Das hat nicht so gut funktioniert. Die Maschine ist nie gebootet. Ich habe die Bootreihenfolge, den Festplattenspeicherort und alle grundlegenden Dinge überprüft, die ich normalerweise mache.

Als Sicherheitsmaßnahme habe ich dann versucht, alle Einstellungen wieder zu ändern, damit die Maschine auf das Originallaufwerk bootet und ich (was mir schließlich auch gelang) eine bessere Möglichkeit finden konnte, die Festplatte zu vergrößern. Als ich die Maschine jedoch mit dem Originallaufwerk einschaltete, wurde sie auf den ersten Snapshot zurückgesetzt, den ich erstellt hatte. Alle Änderungen seitdem gingen verloren.

Ich habe im Dateisystem nachgesehen und ein paar Dateien gefunden. Ich glaube, die Schlüsseldatei hier heißt „delta“ und ich gehe davon aus, dass das die gewünschte Festplatte ist, aber ich kann keine Möglichkeit finden, die virtuelle Maschine dazu zu bringen, dieses Laufwerk/diese Datei tatsächlich zu verwenden. Es ist nicht verfügbar, wenn ich ein vorhandenes Laufwerk hinzufüge.

Muss ich dieses Delta irgendwie auf das Originallaufwerk übertragen und dann erneut davon booten? Können Sie mir den richtigen Weg weisen?

Ich habe inzwischen herausgefunden, wie man Laufwerke mit „vmkfstools“ richtig vergrößert, aber ich muss den ursprünglichen Zustand der Maschine wiederherstellen, um dies auszuprobieren. Für jede Hilfe wäre ich sehr dankbar.

Antwort1

Möglicherweise haben Sie Pech, aber wenn Sie kein Backup haben, kann es hilfreich sein, die Sache strukturiert anzugehen.

Erstellen Sie bei ausgeschalteter VM eine Kopie aller Dateien im VM-Ordner und speichern Sie diese an einem sicheren Ort. Sie könnten beschädigt sein, Sie möchten aber eine vollständige Kopie haben, falls Sie von vorne beginnen möchten.

Suchen Sie über eine SSH-Shell oder mit einem SCP-Dienstprogramm (Veeam FastSCP oder Tunnellier sind praktisch, wenn Sie Windows verwenden) den VM-Ordner und suchen Sie alle Dateien mit der Erweiterung .vmdk. Es sollten zwei für die Basisfestplatte vorhanden sein (eine kleine Deskriptordatei namens VMname1.vmdk und eine viel größere Datei namens VMname1-flat.vmdk, die die eigentlichen Festplattendaten enthält) und ein ähnliches Paar für jedes Ihrer Snapshot-Deltas (ein kleiner Deskriptor namens VMname1-00001.vmdk und eine größere Datei namens VMname1-00001-delta.vmdk, die die während der Lebensdauer dieses Snapshots an der Basisfestplatte vorgenommenen Änderungen enthält). Auf diese wird auch in der Snapshot-Verwaltungsdatei (der Datei VMname.vmsd) verwiesen, die alle Metadaten zu allen aktiven Snapshots auf einer VM enthält. Alle Einstellungen der virtuellen Maschine selbst sind in der VMX-Datei gespeichert, einschließlich (wichtig) des Verweises auf den Speicherort des aktuell aktiven VMDK für ihre Festplatte(n) – dieser zeigt auf das neueste Snapshot-Delta.

VMware verwendet dann interne IDs (CIDs genannt) und einen Parameter namens ParentFileNameHint innerhalb der VMDK-Deskriptoren, um jedes Delta rekursiv mit seinem übergeordneten Element (das selbst ein Delta sein kann) zu verknüpfen, bis es die Basisdiskette erreicht. Ein Delta allein ist keine vollständige Festplatte, es muss mit einer unveränderten Kopie seines übergeordneten Elements verknüpft werden, um zu funktionieren. Wenn die übergeordnete Datei geändert wurde, haben Sie mit ziemlicher Sicherheit Pech gehabt.

Sie können die Deltadateien und den zugehörigen Deskriptor manuell verschieben und Szenarien beheben, in denen Dinge verloren gegangen sind. Dies funktioniert jedoch nur, wenn keine Änderungen an den Basisfestplatten oder Zwischendeltas vorgenommen wurden. Die Deskriptordateien können alle mit einem Texteditor bearbeitet werden.

Wenn Sie das verstanden haben, sollten Sie Folgendes lesen:SANBarrows CID-KettenreparaturanleitungDadurch erfahren Sie, wie Sie die Dinge wieder zusammennähen können, sofern sie wieder zusammengenäht werden können.

Und schließlich: Verlassen Sie sich niemals auf Snapshots als Backups. Sie sind für diesen Zweck nicht geeignet und verursachen im aktiven Zustand einen erheblichen zusätzlichen IO-Overhead.

Antwort2

Normalerweise ist die Delta-Datei eine Datei, die erstellt wird, wenn Sie eine Festplatte replizieren und möglicherweise beim Klonen. Das Delta ist nur eine einmalige Datei, die alle Änderungen speichert, die an einer Live-VM vorgenommen wurden, die beim Kopieren nicht ausgeschaltet wurde. Beim Beenden des Klons, der Replikation usw. wird das Delta (die Änderungen) in die Live-VM zurückgeschrieben. Ich glaube nicht, dass Sie zu einem Delta zurückkehren können, da es + Änderungen sind.

Randbemerkung: Sie sprechen davon, eine Festplatte auch mit vmkfstools zu vergrößern … aber das funktioniert nicht mit einer nicht dynamischen Festplatte, oder? Ich bin ziemlich sicher, dass Ihr Diskpart und/oder vmkfstools nur mit einer dynamischen Primärfestplatte funktionieren. Wenn Sie können, erstellen Sie einfach eine neue Festplatte und fügen Sie sie dem System hinzu.

Antwort3

VMware-Snapshots funktionieren so, dass alle Änderungen an der Festplatte seit der Erstellung des Snapshots in eine neue Datei, die Delta-Datei, geschrieben werden. Wenn Sie zum Snapshot zurückkehren, löscht das System einfach die Delta- undbam, sind Sie wieder am Punkt vor der Erstellung des Snapshots. Wenn Sie den Snapshot löschen, fügt das System alle Änderungen in die Originaldatei ein. Dies kann lange dauern, wenn Sie den Snapshot vor langer Zeit erstellt haben.

Ihre Frage ist nicht besonders klar, was Sie mit den Dateien auf dem Host gemacht haben, aber da es so klingt, als hätte das System den Snapshot bereits für Sie zurückgesetzt, haben Sie wahrscheinlich Pech gehabt, da der Host nicht mehr denkt, dass die VM einen Snapshot hat. Folgendes würde ich jedoch versuchen:

  1. Implementieren Sie eine Richtlinie zum Erstellen von Sicherungen, die nicht auf Snapshots basiert.
  2. Schalten Sie die VM aus.
  3. Kopieren Sie alle Dateien an einen sicheren Ort.
  4. Versuchen Sie, den Snapshot zu löschen.
  5. Sehen Sie, was passiert. Wenn Schritt 3 nicht das gewünschte Ergebnis gebracht hat, fahren Sie mit 5 fort.
  6. Machen Sie einen neuen Schnappschuss.
  7. Kopieren Sie alle Deltadateien aus Ihrer Sicherung über die Deltadateien, die in Schritt 5 erstellt werden.
  8. Sehen Sie, was passiert. Wenn Schritt 6 nicht das gewünschte Ergebnis gebracht hat, akzeptieren Sie Ihr Schicksal und versuchen Sie, das wiederherzustellen, was Sie verloren haben.

Viel Glück, --jed

verwandte Informationen