VM スナップショット

最終公開日 : Oct 07, 2026
XenServerは、特定の時点でのVMストレージとメタデータのスナップショットを作成できる便利なメカニズムを提供します。必要に応じて、スナップショットの取得中にI/Oが一時的に停止され、自己整合性のあるディスクイメージが確実にキャプチャされるようにします。
スナップショット操作の結果、テンプレートに似たスナップショットVMが作成されます。VMスナップショットには、接続されたVIFを含むすべてのストレージ情報とVM構成が含まれており、バックアップ目的でエクスポートおよび復元できます。スナップショットはすべてのストレージタイプでサポートされています。ただし、LVMベースのストレージタイプでは、以下の要件を満たす必要があります。
  • ストレージリポジトリが以前のバージョンのXenServer®で作成された場合、アップグレードされている必要があります
  • ボリュームはデフォルト形式である必要があります (type=raw ボリュームのスナップショットは作成できません)
スナップショット操作は2段階のプロセスです。
  • メタデータをテンプレートとしてキャプチャする。
  • ディスクのVDIスナップショットを作成する。
以下の種類のVMスナップショットがサポートされています: 通常のスナップショットとメモリ付きスナップショット。

通常のスナップショット

通常のスナップショットはクラッシュコンシステントであり、Linux VMを含むすべてのVMタイプで実行できます。

メモリ付きスナップショット

VMのメモリ (ストレージ) とメタデータを保存することに加えて、メモリ付きスナップショットはVMの状態 (RAM) も保存します。この機能は、ソフトウェアのアップグレードやパッチ適用時に役立ちますが、変更前のVM状態 (RAM) に戻すオプションも必要とする場合にも有用です。メモリ付きスナップショットに戻しても、VMの再起動は必要ありません。
実行中または一時停止中のVMのメモリ付きスナップショットは、管理API、xe CLI、またはXenCenterを使用して作成できます。

VMスナップショットの作成

スナップショットを作成する前に、特別なオペレーティングシステム固有の構成と考慮事項に関する以下の情報を参照してください。
まず、メモリの状態をキャプチャできるように、VM が実行中または一時停止状態であることを確認してください。操作を実行する VM を選択する最も簡単な方法は、引数 vm=name または vm=vm uuid を指定することです。
VM のスナップショットを作成するには、vm-snapshotコマンドを実行します。
xe vm-snapshot vm=vm uuid new-name-label=vm_snapshot_name

メモリ付きスナップショットの作成

後で識別できるように、メモリ付きスナップショットにわかりやすい名前を付けて、vm-checkpoint コマンドを実行します。
xe vm-checkpoint vm=vm uuid new-name-label=name of the checkpoint
XenServer がメモリ付きスナップショットの作成を完了すると、その UUID が表示されます。
例:
xe vm-checkpoint vm=2d1d9a08-e479-2f0a-69e7-24a0e062dd35 \
new-name-label=example_checkpoint_1
b3c0f369-59a1-dd16-ecd4-a1211df29886
メモリ付きスナップショットには、ディスクごとに少なくとも 4 MB のディスク容量と、RAM のサイズ、さらに約 20% のオーバーヘッドが必要です。したがって、256 MB の RAM を持つチェックポイントには、約 300 MB のストレージが必要になります。
注:
チェックポイント作成プロセス中、VM は短時間一時停止され、この期間中は使用できません。

XenServer プール上のすべてのスナップショットを一覧表示するには

snapshot-list コマンドを実行します。
xe snapshot-list
このコマンドは、XenServer プール内のすべてのスナップショットを一覧表示します。

特定のVM上のスナップショットを一覧表示するには

vm-listコマンドを実行して、特定のVMのUUIDを取得します。
xe vm-list
このコマンドは、すべてのVMとそのUUIDのリストを表示します。例:
xe vm-list
uuid ( RO): 116dd310-a0ef-a830-37c8-df41521ff72d
name-label ( RW): Windows Server 2016 (1)
power-state ( RO): halted

uuid ( RO): dff45c56-426a-4450-a094-d3bba0a2ba3f
name-label ( RW): Control domain on host
power-state ( RO): running
VMは、フィールドの値に基づいてVMの完全なリストをフィルタリングすることによっても指定できます。
例えば、power-state=haltedを指定すると、power-stateフィールドが「halted」と等しいすべてのVMが選択されます。複数のVMが一致する場合、操作を実行するには--multipleオプションを指定する必要があります。xe vm-list params=allコマンドを使用して、一致させることができるフィールドの完全なリストを取得します。
必要なVMを見つけて、次のように入力します。
xe snapshot-list snapshot-of=vm uuid
例:
xe snapshot-list snapshot-of=2d1d9a08-e479-2f0a-69e7-24a0e062dd35
このコマンドは、そのVM上に現在存在するスナップショットを一覧表示します。
    uuid ( RO): d7eefb03-39bc-80f8-8d73-2ca1bab7dcff
    name-label ( RW): Regular
    name-description ( RW):
    snapshot_of ( RO): 2d1d9a08-e479-2f0a-69e7-24a0e062dd35
    snapshot_time ( RO): 20090914T15:37:00Z

    uuid ( RO): 1760561d-a5d1-5d5e-2be5-d0dd99a3b1ef
    name-label ( RW): Snapshot with memory
    name-description ( RW):
    snapshot_of ( RO): 2d1d9a08-e479-2f0a-69e7-24a0e062dd35
    snapshot_time ( RO): 20090914T15:39:45Z

VMを以前の状態に復元する

復元したいスナップショットのUUIDがあることを確認し、snapshot-revertコマンドを実行します。
  1. 復元したいスナップショットまたはチェックポイントのUUIDを見つけるには、snapshot-listコマンドを実行します。
    xe snapshot-list
  2. スナップショットのUUIDをメモし、次のコマンドを実行して復元します。
    xe snapshot-revert snapshot-uuid=snapshot uuid
    例:
    xe snapshot-revert snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886
    VMをチェックポイントに復元した後、VMはサスペンドされます。
注:
  • スナップショットをシックプロビジョニングするための十分なディスク容量がない場合、現在のディスクの状態が解放されるまで、スナップショットに復元することはできません。この問題が発生した場合は、操作を再試行してください。
  • どのスナップショットにも復元できます。復元操作中に既存のスナップショットとチェックポイントが削除されることはありません。

スナップショットを削除する

削除したいチェックポイントまたはスナップショットのUUIDがあることを確認し、次のコマンドを実行します。
  1. 復元したいスナップショットまたはチェックポイントのUUIDを見つけるには、snapshot-list コマンドを実行します。
    xe snapshot-list
  2. スナップショットのUUIDをメモし、snapshot-uninstall コマンドを実行して削除します。
    xe snapshot-uninstall snapshot-uuid=snapshot-uuid
  3. このコマンドは、削除されるVMとVDIについて警告します。確認するには、yes と入力します。
例:
xe snapshot-uninstall snapshot-uuid=1760561d-a5d1-5d5e-2be5-d0dd99a3b1ef
The following items are about to be destroyed
VM : 1760561d-a5d1-5d5e-2be5-d0dd99a3b1ef (Snapshot with memory)
VDI: 11a4aa81-3c6b-4f7d-805a-b6ea02947582 (0)
VDI: 43c33fe7-a768-4612-bf8c-c385e2c657ed (1)
VDI: 4c33c84a-a874-42db-85b5-5e29174fa9b2 (Suspend image)
Type 'yes' to continue
yes
All objects destroyed
チェックポイントまたはスナップショットのメタデータのみを削除したい場合は、次のコマンドを実行します。
xe snapshot-destroy snapshot-uuid=snapshot-uuid
例:
xe snapshot-destroy snapshot-uuid=d7eefb03-39bc-80f8-8d73-2ca1bab7dcff

スナップショットテンプレート

スナップショットからテンプレートを作成する

スナップショットからVMテンプレートを作成できます。ただし、そのメモリ状態は削除されます。
  1. snapshot-copy コマンドを使用し、テンプレートの new-name-label を指定します。
    xe snapshot-copy new-name-label=vm-template-name \
          snapshot-uuid=uuid of the snapshot
    例:
    xe snapshot-copy new-name-label=example_template_1
          snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886
    注:
    このコマンドは、同じプール内にテンプレートオブジェクトを作成します。このテンプレートは、現在のプール専用のXenServerデータベースにのみ存在します。
  2. テンプレートが作成されたことを確認するには、コマンド template-list を実行します。
    xe template-list
    このコマンドは、XenServerホスト上のすべてのテンプレートを一覧表示します。

スナップショットをテンプレートにエクスポートする

VMスナップショットをエクスポートすると、VMの完全なコピー(ディスクイメージを含む)が、ローカルマシンに単一ファイルとして保存されます。このファイルには、.xva というファイル名拡張子が付いています。
  1. コマンド snapshot-export-to-template を使用してテンプレートファイルを作成します。
    xe snapshot-export-to template snapshot-uuid=snapshot-uuid \
          filename=template-  filename
    例:
    xe snapshot-export-to-template snapshot-uuid=b3c0f369-59a1-dd16-ecd4-a1211df29886 \
          filename=example_template_export
VMのエクスポート/インポート機能は、さまざまな方法で使用できます。
  • VMの便利なバックアップ機能として。エクスポートされたVMファイルは、災害発生時にVM全体を復旧するために使用できます。
  • VMをすばやくコピーする方法として。たとえば、何度も使用する特殊なサーバー構成などです。VMを希望どおりに構成し、エクスポートしてからインポートするだけで、元のVMのコピーを作成できます。
  • VMを別のホストに移動する簡単な方法として。
テンプレートの使用方法の詳細については、VMの作成 およびXenCenterドキュメントのVMの管理の記事を参照してください。

スケジュールされたスナップショット

スケジュールされたスナップショット機能は、重要なサービスVMのシンプルなバックアップおよび復元ユーティリティを提供します。定期的なスケジュールされたスナップショットは自動的に取得され、個々のVMを復元するために使用できます。スケジュールされたスナップショットは、プール内の選択されたVMに対してプール全体のスナップショットスケジュールを設定することで機能します。スナップショットスケジュールが有効になっている場合、指定されたVMのスナップショットは、毎時、毎日、または毎週のスケジュールされた時刻に取得されます。複数のスケジュールされたスナップショットをプールで有効にすることができ、異なるVMをカバーし、異なるスケジュールを持つことができます。VMは一度に1つのスナップショットスケジュールにのみ割り当てることができます。
XenCenter は、この機能を使用するのに役立つさまざまなツールを提供します。
  • スケジュール済みスナップショットを定義するには、新しいスナップショットスケジュールウィザードを使用します。
  • プールのスケジュール済みスナップショットを有効化、無効化、編集、削除するには、VM スナップショットスケジュールダイアログボックスを使用します。
  • スナップショットスケジュールを編集するには、VM スナップショットスケジュールダイアログボックスからそのプロパティダイアログボックスを開きます。
  • VM をスケジュール済みスナップショットに復元するには、スナップショットタブでそのスナップショットを選択し、VM をそれに復元します。
詳細については、XenCenter ドキュメントの「スケジュール済みスナップショット」を参照してください。