仮想化を初めて使用するので、スナップショットを削除するとどうなるかを確実に理解したい
このような木があるとしましょう
2つの質問:
SnapShotBを削除した場合、SnapShotCはどうなりますか?
VMwareヘルプから "注:[削除]をクリックすると、スナップショットデータが親にコミットされ、選択したスナップショットが削除されます。"したがって、ソフトウェアをインストールしたり、SnapShotBにファイルを追加して削除したりすると、そのソフトウェアはそしてそれらのファイルはSnapShotAにプッシュされますか?
そのスナップショットツリーを書き換える必要があります。実際のツリーは次のようになります。
SnapshotAを実行すると、メインのvmdkファイルがフリーズし、新しいデルタファイルが作成されました。それ以降、すべての変更はデルタファイルに書き込まれました。
SnapshotBを実行すると、最初のデルタファイルが凍結され、別のデルタファイルが作成されました。それ以降のすべての変更は、この新しいデルタファイルに書き込まれました。
そして、SnapshotCを実行すると、2番目のデルタファイルが凍結され、さらに「現在の」状態を表す別のデルタファイルが作成されました。すべての変更はこのファイルに書き込まれます。
SnapshotBを削除すると、最初のデルタファイルは、SnapshotCを表す2番目のデルタファイルとマージされます。したがって、SnapshotCをバッキングするファイルwillは変更されますが、SnapshotCの実際のstateは変更されません。
いいえ、スナップショットはそのように変更されません。 SnapshotBを削除すると、それらの変更に依存するツリー内の次のファイルにそれらの変更がプッシュされます。それらをSnapshotA(ベースvmdk)に適用すると、本質的にはSnapshotAがSnapshotBに変わり、スナップショットが使用できなくなります。 :)
スナップショットの動作は、vSphereとWorkstationで異なる場合があります
質問した場合、VMware WorkstationまたはVMware vSphere Clientを使用しても動作は同じです。ただし、SnapshotCを削除した場合の動作は同じではありません。
VSphere ClientでSnapshotCを削除すると、SnapshotBはSnapshotCになりますが、その名前は保持されます。削除すると、SnapshotCからSnapshotBに加えた変更がコミットされます。そうしたくない場合は、次のように削除する前にSnapshotBに「移動」する必要があります。
この動作は、このVMwareフォーラムの投稿で詳しく説明されています。
http://communities.vmware.com/thread/580
VMware Workstationでは、その下にあるときにSnapshotCを削除した場合、変更は上方にコミットされません。変更が失われ、SnapshotBに戻ります。