スナップショットには、スナップショット作成時の仮想マシンの状態とデータが保存されます。仮想マシンのスナップショットを作成すると、特定の状態の仮想マシンのイメージがコピーおよび保存されます。スナップショットは、繰り返し同じ状態の仮想マシンに戻る必要があるが、複数の仮想マシンを作成したくないという場合に便利です。
仮想マシンのスナップショットを複数作成して、線形処理でリストアする位置を作成できます。複数のスナップショットによって、さまざまなワーク プロセスに対応した多くの状態を保存できます。スナップショットは個々の仮想マシンで操作されます。チームの各メンバーの仮想マシン スナップショットを作成するなど、複数の仮想マシンのスナップショットを作成する場合は、各チーム メンバーの仮想マシンについて別々のスナップショットを作成する必要があります。
スナップショットは、未知の障害または有害な効果が発生する可能性のあるソフトウェアをテストするための、短期的なソリューションとして便利です。たとえば、線形処理、アップデート パッケージをインストールするような反復処理、または異なるバージョンのプログラムをインストールするような分岐処理において、スナップショットをリストア ポイントとして使用できます。スナップショットを使用すると、同一のベースラインから各インストールが開始します。
スナップショットがあれば、仮想マシンに変更を加える前に、ベースラインを保存できます。
vSphere Clientでは、仮想マシン スナップショットおよびスナップショット ツリーを作成および管理するための操作方法を提供します。これらの操作により、スナップショットの作成、スナップショット階層にあるスナップショットのリストア、スナップショットの削除などを行うことができます。後で仮想マシンの状態をリストアできるように、特定の時点の仮想マシン状態を保存するスナップショット ツリーを作成することができます。スナップショット ツリーの各分岐には、最大で 32 のスナップショットを保存できます。
スナップショットには、次の情報が含まれます。
- 仮想マシンの設定。スナップショット作成後に追加または変更されたディスクを含む、仮想マシン ディレクトリ。
- 電源状態。仮想マシンは、パワーオン状態、パワーオフ状態、またはサスペンド状態にすることができます。
- ディスク状態。すべての仮想マシンの仮想ディスクの状態。
- (任意) メモリ状態。仮想マシンのメモリの内容。
スナップショットの階層
vSphere Clientには、スナップショットのツリー階層が、1 つ以上の分岐付きで表示されます。階層内のスナップショットは、親と子の関係を持ちます。線形プロセスでは、各スナップショットに親スナップショットと子スナップショットが 1 つずつ存在します。ただし、最後に作成したスナップショットには親スナップショットのみ存在します。親スナップショットにはそれぞれ、複数の子スナップショットを作成できます。最新の親スナップショットに戻ったり、スナップショット ツリー内の任意の親スナップショットまたは子スナップショットをリストアしたり、そのスナップショットからさらに別のスナップショットを作成することができます。スナップショットをリストアし、別のスナップショットを作成するたびに、分岐(子スナップショット)が作成されます。
- 親スナップショット
- 最初に作成する仮想マシンのスナップショットは、ベース親スナップショットです。親スナップショットは仮想マシンの現在の状態を保存した、最新のバージョンです。スナップショットを作成すると、仮想マシンに接続された各ディスクについて差分ディスク ファイルが作成され、オプションでメモリ ファイルが作成されます。差分ディスク ファイルとメモリ ファイルは、基本となる .vmdk ファイルと一緒に保存されます。親スナップショットは、常にスナップショット マネージャの現在地点アイコンのすぐ上に表示されるスナップショットです。スナップショットに戻るかリストアした場合、そのスナップショットは現在の状態 (現在地点) の親になります。
- 子スナップショット
- 親スナップショットの後に作成された、仮想マシンのスナップショットです。子スナップショットには、接続している各仮想ディスクの差分ファイルが含まれています。仮想ディスクの現在の状態(現在点)から参照するメモリ ファイルが含まれている場合もあります。各子スナップショットの差分ファイルは、親ディスクに到達するまで、過去の各子スナップショットとマージされます。子ディスクは、あとで、将来の子ディスク用の親ディスクになることができます。
スナップショット ツリーに複数の分岐がある場合、親スナップショットと子スナップショットの関係は変更できます。親スナップショットには複数の子スナップショットを作成できます。スナップショットの多くは子スナップショットが存在しません。
スナップショットの動作
スナップショットを作成すると、特定の時点でのディスク状態を保存できます。これは、添付されている各仮想ディスクまたは仮想 RDM についての一連の差分ディスクが作成されることによって実現され、オプションでメモリ ファイルを作成してメモリと電源状態を保存することもできます。スナップショットの作成により、スナップショット マネージャに、仮想マシンの状態と設定を表すスナップショット オブジェクトが作成されます。
各スナップショットでは、差分ディスク ファイル (.vmdk) が追加で作成されます。スナップショットの作成時、スナップショット メカニズムにより、ゲスト OS による .vmdk ベース ファイルへの書き込みが防止され、代わりに、すべての書き込みが差分ディスク ファイルに対して行われます。差分ディスクは、仮想ディスクの現在の状態と、以前スナップショットを作成した時点の状態の違いを示します。複数のスナップショットが存在する場合、差分ディスクは各スナップショット間の違いを示すことがあります。ゲスト OS が仮想ディスクのすべてのブロックに書き込みを行うと、差分ディスク ファイルは短期間に肥大化し、仮想ディスク全体と同程度のサイズになることがあります。