ESXi 上で、スナップショットの削除に失敗に対応

あるVMのスナップショット一覧を見たら以下のように、スナップショットが沢山作成されていた。

f:id:shaggyman:20190719134141p:plain

 

どうやらデイリーバックアップ時のスナップショット作成→スナップショット削除の作業のうち、スナップショット削除に失敗しているようだ。

 

Host Clientで、手動削除を行ったが、失敗。

f:id:shaggyman:20190719134359p:plain

 

調べたら、残っている一番古いスナップショットの日付の直前に、バックアップから復旧作業等を行ったようだ。

また、ESXi に ssh でログインしファイルを調べると、以下.vmsdにある、snapshot0 のファイル w-win10jp64-Snapshot1.vmsn が見当たらないことに気づいた。

---

.encoding = "UTF-8"
snapshot.lastUID = "3"
snapshot.current = "3"
snapshot0.uid = "1"
snapshot0.filename = "w-win10jp64-Snapshot1.vmsn"
snapshot0.displayName = "for Backup"
snapshot0.type = "1"
snapshot0.createTimeHigh = "363990"
snapshot0.createTimeLow = "1935648841"
snapshot0.numDisks = "1"
snapshot0.disk0.fileName = "w-win10jp64.vmdk"
snapshot0.disk0.node = "scsi0:0"
snapshot.numSnapshots = "3"
snapshot1.uid = "2"
snapshot1.filename = "w-win10jp64-Snapshot2.vmsn"
snapshot1.parent = "1"
snapshot1.displayName = "仮想マシン スナップショット 2019%252f7%252f17 11:09:57"
snapshot1.createTimeHigh = "363990"
snapshot1.createTimeLow = "-40805507"
snapshot1.numDisks = "1"
snapshot1.disk0.fileName = "w-win10jp64.vmdk"
snapshot1.disk0.node = "scsi0:0"
snapshot2.uid = "3"
snapshot2.filename = "w-win10jp64-Snapshot3.vmsn"
snapshot2.parent = "2"
snapshot2.displayName = "仮想マシン スナップショット 2019%252f7%252f17 11:12:24"
snapshot2.type = "1"
snapshot2.createTimeHigh = "363991"
snapshot2.createTimeLow = "105838208"
snapshot2.numDisks = "1"
snapshot2.disk0.fileName = "w-win10jp64-000001.vmdk"
snapshot2.disk0.node = "scsi0:0"

---

 

以下の作業を行って、復旧

  1. 該当VMシャットダウン
  2. 該当VM登録解除
  3. vmsd 編集(詳細以下)
  4. VM再登録
  5. スナップショット削除

vmsd は以下のように編集

  • snapshot0 に関する行削除
  • snapshot.numSnapshots の数値 -1
  • snapshot1.parent

 

---

.encoding = "UTF-8"
snapshot.lastUID = "3"
snapshot.current = "3"
snapshot1.uid = "2"
snapshot1.filename = "w-win10jp64-Snapshot2.vmsn"
snapshot1.displayName = "仮想マシン スナップショット 2019%252f7%252f17 11:09:57"
snapshot1.createTimeHigh = "363990"
snapshot1.createTimeLow = "-40805507"
snapshot1.numDisks = "1"
snapshot1.disk0.fileName = "w-win10jp64.vmdk"
snapshot1.disk0.node = "scsi0:0"
snapshot.numSnapshots = "2"

snapshot2.uid = "3"
snapshot2.filename = "w-win10jp64-Snapshot3.vmsn"
snapshot2.parent = "2"
snapshot2.displayName = "仮想マシン スナップショット 2019%252f7%252f17 11:12:24"
snapshot2.type = "1"
snapshot2.createTimeHigh = "363991"
snapshot2.createTimeLow = "105838208"
snapshot2.numDisks = "1"
snapshot2.disk0.fileName = "w-win10jp64-000001.vmdk"
snapshot2.disk0.node = "scsi0:0"

---