「インストール - KVM」の版間の差分

ナビゲーションに移動 検索に移動
252行目: 252行目:
復元されたSUSEを起動する。<br>
復元されたSUSEを起動する。<br>
  sudo virsh start SUSE15
  sudo virsh start SUSE15
<br><br>
== 仮想マシンのスナップショット ==
===== スナップショットの概要 =====
KVMにおけるスナップショットとは、仮想マシンのある時点の状態を保持する機能である。
スナップショットは、一般的なバックアップのように全てのデータを保持せずに、仮想マシン上の変更が発生した時に差分のみを保持する。
スナップショットは、仮想マシン本体またはスナップショットファイルのいずれかが破損すると、元の状態に戻すことはできなくなるので、
バックアップの代わりとして利用する場合は注意すること。
スナップショットの作成手順として、親スナップショット(external)を作成して、それから派生する子スナップショット(internal)を作成する。
<br>
===== 親スナップショット(external)の取得 =====
<code>virsh snapshot-create-as</code>コマンドを使用することで、仮想マシンの親スナップショット(external)を取得することができる。
スナップショットの取得は、仮想マシンが起動中でも可能である。
sudo virsh snapshot-create-as <仮想マシン名> <スナップショット名> "<コメント>" --disk-only --atomic
<br>
===== 親スナップショット(external)の復元 =====
親スナップショットの復元は、<code>virsh snapshot-revert</code>コマンドを使用する。
親スナップショットの復元については、子スナップショット(internal)を取得してから行うこと。
sudo virsh snapshot-revert <仮想マシン名> <スナップショット名>
<br>
===== 親スナップショット(external)の削除 =====
親スナップショット(external)を削除する場合は、<code>--metadata</code>オプションを付けることで削除できる。
sudo virsh snapshot-delete <仮想マシン名> <親スナップショット名> --metadata
<br>
===== 子スナップショット(internal)の取得 =====
親スナップショット(external)を取得した状態で、以下のコマンドを実行すると、スナップショットを取得することができる。
なお、スナップショット名は親スナップショット(external)や他の子スナップショット(internal)と被らないようにすること。
sudo virsh snapshot-create-as <仮想マシン名> <子スナップショット名> "<コメント>"
<br>
===== 子スナップショット(internal)の復元 =====
特定のスナップショットに復元するには、<code>virsh snapshot-revert</code>コマンドを使用する。
指定するスナップショットは、子スナップショット(internal)を指定するようにする。
sudo virsh snapshot-revert <仮想マシン名> <子スナップショット名>
<br>
===== 子スナップショット(internal)の削除 =====
<code>virsh snapshot-delete</code>コマンドを実行することで、スナップショットを削除することができる。
sudo virsh snapshot-delete <仮想マシン名> <子スナップショット名>
<br>
===== スナップショットの確認 =====
sudo virsh snapshot-list <仮想マシン名>
<br>
# 出力例
  Name                Creation Time            State
------------------------------------------------------------
  SN01_KVM_SUSE        2020-01-01 00:00:00 +0900 shutoff
<br>
===== スナップショットのツリー表示 =====
スナップショットの派生関係を確認する場合、<code>--tree</code>オプションを付けることで確認できる。
sudo virsh snapshot-list <仮想マシン名> --tree
<br>
# 出力例
SN01_KVM_SUSE
  |
  +- SN02_KVM_SUSE
      |
      +- MariaDB_KVM_SUSE
      +- PostgreSQL_KVM_SUSE
<br>
===== 現在の状態が、どのスナップショットからの派生か確認する =====
<code>virsh snapshot-list</code>コマンドに<code>--tree --current</code>オプションを使用することで確認することができる。
sudo virsh snapshot-list <仮想マシン名> --tree --current
<br>
# 出力例
MariaDB_KVM_SUSE
<br><br>
<br><br>


__FORCETOC__
__FORCETOC__
[[カテゴリ:CentOS]][[カテゴリ:SUSE]]
[[カテゴリ:CentOS]][[カテゴリ:SUSE]]

案内メニュー