Red Hat Training

A Red Hat training course is available for RHEL 8

10.2. 元のボリュームのスナップショット作成

lvcreate コマンドを使用して、元のボリューム (作成元) のスナップショットを作成します。ボリュームのスナップショットは書き込み可能です。デフォルトでは、シンプロビジョニングされたスナップショットと比較すると、通常のアクティベーションコマンドを実行中に、作成元のボリュームを使用して、スナップショットのボリュームを有効にします。LVM は、元のボリュームのサイズとボリュームに必要なメタデータサイズの合計よりも大きいスナップショットボリュームの作成をサポートしていません。これより大きいスナップショットボリュームを指定すると、LVM は作成元のサイズに必要なスナップショットボリュームを作成します。

注記

クラスター内のノードは LVM スナップショットをサポートしていません。共有ボリュームグループ内にスナップショットボリュームは作成できません。ただし、共有論理ボリューム上でデータの一貫したバックアップ作成が必要な場合は、ボリュームを排他的にアクティブにした上で、スナップショットを作成できます。

次の手順は、origin という名前の論理ボリュームを作成し、その論理ボリュームから、snap という名前のスナップショットボリュームを作成します。

前提条件

手順

  1. ボリュームグループ vg001 から、論理ボリューム origin を作成します。

    # lvcreate -L 1G -n origin vg001
    Logical volume "origin" created.
  2. 名前が snap で、サイズが 100 MB のスナップショット論理ボリューム /dev/vg001/origin を作成します。

    # lvcreate --size 100M --name snap --snapshot /dev/vg001/origin
      Logical volume "snap" created.

    --size の代わりに -L 引数を、--name の代わりに -n を、そして --snapshot の代わりに -s を使用して、スナップショットを作成することもできます。

    元の論理ボリュームにファイルシステムが含まれている場合は、任意のディレクトリー上でスナップショット論理ボリュームをマウントしてそのファイルシステムのコンテンツにアクセスし、元のファイルシステムが更新を継続している間にバックアップを実行できます。

  3. 元のボリュームと、使用されているスナップショットボリュームの現在の割合を表示します。

    # lvs -a -o +devices
      LV      VG    Attr       LSize  Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices
     origin vg001  owi-a-s---  1.00g                                                  /dev/sde1(0)
      snap vg001  swi-a-s--- 100.00m     origin 0.00                                 /dev/sde1(256)

    lvdisplay /dev/vg001/origin コマンドを使用して、論理ボリューム /dev/vg001/origin のステータスと、すべてのスナップショット論理ボリュームおよびそれらのステータス (アクティブまたは非アクティブなど) を表示することもできます。

    警告

    スナップショット LV の領域は、元の LV が書き込まれた後に消費されます。lvs コマンドは、現在のスナップショット領域の使用状況を Data% data_percent フィールド値でレポートします。スナップショットの容量が 100% に達すると、スナップショットは無効になり使用できなくなります。

    無効なスナップショットは、Attr 列の 5 番目の位置の I または lvslv_snapshot_invalid レポートフィールドでレポートされます。lvremove コマンドを使用して、無効なスナップショットを削除できます。

  4. オプション: 次のいずれかの方法を使用して、容量が 100% いっぱいになり無効になる前にスナップショットを拡張します。

    • /etc/lvm.conf ファイル内の次のパラメーターを使用して、スナップショットを自動的に拡張するように LVM を設定します。

      snapshot_autoextend_threshold
      スナップショットの使用量がこのパラメーターに設定された値を超えた後、スナップショットを拡張します。デフォルトでは 100 に設定され、自動拡張は無効になっています。このパラメーターの最小値は 50 です。
      snapshot_autoextend_percent
      現在のサイズに対する割合を指定して、その分の領域をスナップショットに追加します。デフォルトでは、20 に設定されます。

      以下の例では、次のパラメーターを設定した後、作成された 1 G のスナップショットは、使用量が 700 M を超えると 1.2 G に拡張されます。

      例10.1 スナップショットの自動拡張

      # vi /etc/lvm.conf
      snapshot_autoextend_threshold = 70
      snapshot_autoextend_percent = 20
      注記

      この機能には、ボリュームグループに未割り当てのスペースが必要です。同様に、スナップショットの自動拡張を実行しても、スナップショットに必要なサイズとして計算される最大サイズを超えて拡張されることはありません。スナップショットのサイズが複製元のボリュームを包含できるまで拡大されると、スナップショットの自動拡張はモニターされなくなります。

    • lvextend コマンドを使用して、このスナップショットを手動で拡張します。

      # lvextend -L+100M /dev/vg001/snap

関連情報

  • lvcreate (8)lvextend (8)、および lvs (8) の man ページ
  • /etc/lvm/lvm.conf ファイル