ESX Snapshots die Xte

Ich klage mal wieder mein Leid über „Geister Snapshots“

Über die Feiertage ist bei einer unserer VMs ein Snapshot stehen geblieben
und da ich auch den einen oder anderen Tag Urlaub bekommen habe, ist das nicht gleich aufgefallen.

Auf jeden Fall war er mittlerweile 60GB groß. Das löschen via GUI hat mal wieder nicht funktioniert.
Irgendwann hat er abgebrochen und im VI Client wurde kein Snapshot mehr angezeigt.
Aber das kennen wir ja schon -> Lösung

Diesmal hat das aber nicht funktioniert – nach 12h ist der Vorgang abgebrochen und der Snapshot war immer noch da.

Netter weise ließ sich die VM aber auch nicht mehr einschalten (Schweißperlen bilden sich auf der Stirn des Admins)

Fehlermeldung:

The parent virtual disk has been modified since the child was created
Super – das kann ja ein toller Samstag werden!

Ich werde hier jetzt mal meinen Lösungsansatz schildern:

IST:

60G Jan 16 10:02 SERVER-XY_1-000001-delta.vmdk
256 Jan 15 17:09 SERVER-XY_1-000001.vmdk
7.2G Jan 15 18:24 SERVER-XY_1-000002-delta.vmdk
263 Jan 15 17:09 SERVER-XY_1-000002.vmdk
6.2G Jan 15 17:02 SERVER-XY_1-000003-delta.vmdk
263 Jan 14 08:59 SERVER-XY_1-000003.vmdk
302K Jan 15 17:05 SERVER-XY_1-000004-delta.vmdk
237 Jan 15 17:05 SERVER-XY_1-000004.vmdk
16M Jan 16 20:35 SERVER-XY_1-000005-delta.vmdk
263 Jan 16 11:34 SERVER-XY_1-000005.vmdk
150G Jan 16 08:58 SERVER-XY_1-flat.vmdk
405 Jan 16 11:30 SERVER-XY_1.vmdk

Durch den einen oder anderen Rettungsversuch unter der Woche haben wir jetzt schon 5 Snapshots – aber ob 2 oder 5 ist ja egal.
Eine Lösung findet sich im VMWare KB1007849

Hier mal die „cat´s“ meiner vmdk Files:

[root@esx SERVER-XY]# cat SERVER-XY_1-000005.vmdk
# Disk DescriptorFile
version=1
CID=e33002b5
parentCID=e33002b5
createType="vmfsSparse"
parentFileNameHint="SERVER-XY_1-000004.vmdk"
# Extent description
RW 314572800 VMFSSPARSE "SERVER-XY_1-000005-delta.vmdk"

# The Disk Data Base
#DDB

[root@esx SERVER-XY]# cat SERVER-XY_1-000004.vmdk
# Disk DescriptorFile
version=1
CID=e33002b5
parentCID=e33002b5
createType="vmfsSparse"
parentFileNameHint="SERVER-XY_1-000003.vmdk"
# Extent description
RW 314572800 VMFSSPARSE "SERVER-XY_1-000004-delta.vmdk"

# The Disk Data Base
#DDB

[root@esx SERVER-XY]# cat SERVER-XY_1-000003.vmdk
# Disk DescriptorFile
version=1
CID=e33002b5
parentCID=6d3da253
createType="vmfsSparse"
parentFileNameHint="SERVER-XY_1-000002.vmdk"
# Extent description
RW 314572800 VMFSSPARSE "SERVER-XY_1-000003-delta.vmdk"

# The Disk Data Base
#DDB

ddb.toolsVersion = "7303"
[root@esx SERVER-XY]# cat SERVER-XY_1-000002.vmdk
# Disk DescriptorFile
version=1
CID=6d3da253
parentCID=d35ad50b
createType="vmfsSparse"
parentFileNameHint="SERVER-XY_1-000001.vmdk"
# Extent description
RW 314572800 VMFSSPARSE "SERVER-XY_1-000002-delta.vmdk"

# The Disk Data Base
#DDB

ddb.toolsVersion = "7303"
[root@esx SERVER-XY]# cat SERVER-XY_1-000001.vmdk
# Disk DescriptorFile
version=1
CID=d35ad50b
parentCID=fee0d339
createType="vmfsSparse"
parentFileNameHint="SERVER-XY_1.vmdk"
# Extent description
RW 314572800 VMFSSPARSE "SERVER-XY_1-000001-delta.vmdk"

# The Disk Data Base
#DDB

ddb.toolsVersion = "7303"
[root@esx SERVER-XY]# cat SERVER-XY_1.vmdk
# Disk DescriptorFile
version=1
CID=e33002b5
parentCID=ffffffff
createType="vmfs"

# Extent description
RW 314572800 VMFS "SERVER-XY_1-flat.vmdk"

# The Disk Data Base
#DDB

ddb.toolsVersion = "7303"
ddb.adapterType = "lsilogic"
ddb.geometry.sectors = "63"
ddb.geometry.heads = "255"
ddb.geometry.cylinders = "19581"
ddb.uuid = "60 00 C2 92 aa ab 87 6b-72 50 9a 5a e3 99 fc 6b"
ddb.virtualHWVersion = "4"

Nach 5x drüber schauen habe ich das Problem auch gefunden.
Zuerst dachte ich mit dem Snapshot 4 stimmt was nicht,
da die CID und die parentCID gleich sind e33002b5
und dies auch noch die CID von Snapshot 3 ist.

Nach ein bissel probieren habe ich festgestellt, dass dies auftritt, wenn die VM nach dem Erstellen des Snapshots nicht eingeschaltet wurde (keine Änderungen am Snapshot vorgenommen wurden)

Gut das ist also nicht das Problem …

Wenn man sich jetzt aber das vmdk von der Basis HDD anschaut:

[root@esx SERVER-XY]# cat SERVER-XY_1.vmdk
# Disk DescriptorFile
version=1
CID=e33002b5
parentCID=ffffffff
createType="vmfs"

Dann fällt einem auf das die CID die selbe wie von Snapshot 3 ist
Das die parentCID fffffffff ist, ist OK – zeigt einfach das es kein weiteres Parent gibt.

[root@esx SERVER-XY]# cat SERVER-XY_1-000003.vmdk
# Disk DescriptorFile
version=1
CID=e33002b5
parentCID=6d3da253

da kann also was nicht stimmen…
Wenn man sich jetzt aber den Snapshot 1 anschaut:

[root@esx SERVER-XY]# cat SERVER-XY_1-000001.vmdk
# Disk DescriptorFile
version=1
CID=d35ad50b
parentCID=fee0d339

Hier sollte als Parent ja eigentlich die CID der Basis HDD stehen.
Nun ist die Frage – was ist falsch.
Die CID der Basis HDD oder die parentCID von Snapshot 1.

Zu Gunsten des Angeklagten habe ich angenommen, dass die CID der Basis HDD nicht stimmt und gegen die parentCID von Snapshot 1 getauscht.
Sieht dann also so aus:

[root@esx SERVER-XY]# cat SERVER-XY_1-000001.vmdk
# Disk DescriptorFile
version=1
CID=d35ad50b
parentCID=fee0d339
createType="vmfsSparse"
parentFileNameHint="SERVER-XY_1.vmdk"

[root@esx SERVER-XY]# cat SERVER-XY_1.vmdk
# Disk DescriptorFile
version=1
CID=fee0d339
parentCID=ffffffff
createType="vmfs"

Und siehe da – die VM bootet wieder
„Schweiß von der Stirn wischen“

Aber das Problem ist ja noch nicht vom Tisch …
Der Snapshot ist immer noch da. Bei mir war das „Glück“ das der Snapshot der System HDD schon committed war und nur noch die Daten HDD das Problem darstellte.

Zwei Lösungen denke ich mal gibt es:
1. 3te HDD in die VM und die Daten rüber kopieren (robocopy)
2. die VHD clonen

vmkfstools -i /vmfs/volumes/LUN1/SERVER-XY/SERVER-XY_1-000005.vmdk /vmfs/volumes/LUN1/SERVER-xy_recovery/SERVER-XY_1.vmdk

und dann die orginal HDD gegen die geclonte HDD ersetzten.

Ich hab ersteres gemacht – und bin froh das alles wieder geht ….

LINKS:
VMWare KB1007849 Consolidating snapshots
VMWare KB935 Cloning an ESX Server Virtual Machine
VMWare KB1005228 … virtual disk with snapshot has the wrong CID
VMWare KB1007969 Committing snapshots generates a content ID mismatch error
vmwaretips.com
About Roy I
Malaysia VMware Communities Tips to recover Snapshot problem on VM

No votes yet.
Please wait...

Tags:

Hinterlasse eine Antwort