10.7. スナップショット RHEL システムロールを使用して LVM スナップショットを元に戻す
新しい スナップショット
RHEL システムロールを使用すると、snapshot_lvm_action
パラメーターを revert
に設定することで、LVM スナップショットを元のボリュームに戻すことができるようになりました。
論理ボリュームとスナップショットボリュームの両方が開いておらずアクティブでない場合は、元に戻す操作がすぐに開始されます。それ以外の場合は、オリジンまたはスナップショットがアクティブ化され、両方が閉じられた後に開始されます。
前提条件
- 制御ノードと管理ノードを準備している
- 管理対象ノードで Playbook を実行できるユーザーとしてコントロールノードにログインしている。
-
管理対象ノードへの接続に使用するアカウントに、そのノードに対する
sudo
権限がある。
手順
次の内容を含む Playbook ファイル (例:
~/playbook.yml
) を作成します。特定の LVM スナップショットを元のボリュームに戻します。
--- - name: Revert a snapshot to its original volume hosts: all tasks: - name: Revert data_vg/data2 vars: snapshot_lvm_snapset_name: snapset1 snapshot_lvm_action: revert snapshot_lvm_vg: data_vg snapshot_lvm_lv: data2 roles: - redhat.rhel_system_roles.snapshot
ここで、
snapshot_lvm_lv
パラメーターは特定の論理ボリューム (LV) を記述し、snapshot_lvm_vg
パラメーターは特定のボリュームグループ (VG) を記述します。LVM スナップショットのセットを元のボリュームに戻します。
--- - name: Revert a set of snapshot hosts: all vars: snapshot_lvm_set: name: snapset1 volumes: - name: data1 snapshot vg: data_vg lv: data1 - name: data2 snapshot vg: data_vg lv: data2 tasks: - name: Revert the snapshot set vars: snapshot_lvm_action: revert snapshot_lvm_set: "{{ snapshot_lvm_set }}" roles: - redhat.rhel_system_roles.snapshot
ここで、
snapshot_lvm_set
パラメーターは、同じ VG からの特定の LV を記述します。このパラメーターを設定する際に、異なる VG から LV を指定することもできます。注記元に戻す
操作が完了するまでに時間がかかる場合があります。
Playbook の構文を検証します。
$ ansible-playbook --syntax-check ~/playbook.yml
このコマンドは構文を検証するだけであり、有効だが不適切な設定から保護するものではないことに注意してください。
Playbook を実行します。
$ ansible-playbook ~/playbook.yml
ホストを再起動するか、次の手順に従って論理ボリュームを非アクティブ化してから再アクティブ化します。
$ umount /data1; umount /data2 $ lvchange -an data_vg/data1 data_vg/data2 $ lvchange -ay data_vg/data1 data_vg/data2 $ mount /data1; mount /data2
関連情報
-
/usr/share/ansible/roles/rhel-system-roles.snapshot/README.md
file -
/usr/share/doc/rhel-system-roles/snapshot/
ディレクトリー