Menu Close

Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

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

注記
LVM は、シンプロビジョニングのスナップショットに対応しますシンプロビジョニングのスナップショットボリュームの作成に関する情報は、「シンプロビジョニングされたスナップショットボリュームの作成」 を参照してください。
スナップショットボリュームを作成するには、lvcreate コマンドで -s 引数を使用します。スナップショットボリュームは書き込み可能です。
注記
LVM スナップショットは、クラスターのノード間では対応していません。クラスター化されたボリュームグループ内にスナップショットボリュームは作成できません。ただし、クラスター論理ボリューム上でデータの一貫したバックアップ作成が必要な場合、ボリュームを排他的にアクティブ化した上で、スナップショットを作成することができます。1 つのノードでのみ論理ボリュームをアクティベートする方法は、「クラスター内の個別ノードでの論理ボリュームのアクティブ化」 を参照してください。
注記
ミラー化論理ボリュームを対象とした LVM スナップショットがサポートされています。
RAID 論理ボリュームを対象としたスナップショットに対応しています。RAID 論理ボリュームの作成方法は、「RAID 論理ボリューム」 を参照してください。
LVM では、作成元のボリュームのサイズよりも大きく、そのボリュームのメタデータを必要とするスナップショットボリュームを作成できません。これよりも大きなスナップショットボリュームを指定しても、システムには、作成元のサイズに必要な大きさのスナップショットボリュームのみが作成されます。
デフォルトで、スナップショットボリュームは、通常のアクティブ化コマンドの実行時に省略されます。スナップショットボリュームのアクティブ化を制御する方法は、「論理ボリュームのアクティブ化の制御」 を参照してください。
以下のコマンドは、名前が /dev/vg00/snap でサイズが 100 MB のスナップショット論理ボリュームを作成します。これは、/dev/vg00/lvol1 という名前の元の論理ボリュームのスナップショットを作成します。元の論理ボリュームにファイルシステムが含まれている場合は、任意のディレクトリー上でスナップショット論理ボリュームをマウントしてから、そのファイルシステムのコンテンツにアクセスし、元のファイルシステムが更新を継続している間にバックアップを実行できます。
# lvcreate --size 100M --snapshot --name snap /dev/vg00/lvol1
スナップショット論理ボリュームを作成した後に、lvdisplay コマンドで、複製元のボリュームを指定すると、すべてのスナップショット論理ボリュームとそのステータス (アクティブまたは非アクティブ) の一覧が出力されます。
以下の例は、論理ボリューム /dev/new_vg/lvol0 のステータスを示しています。これに対して、スナップショットボリューム /dev/new_vg/newvgsnap が作成されています。
# lvdisplay /dev/new_vg/lvol0
  --- Logical volume ---
  LV Name                /dev/new_vg/lvol0
  VG Name                new_vg
  LV UUID                LBy1Tz-sr23-OjsI-LT03-nHLC-y8XW-EhCl78
  LV Write Access        read/write
  LV snapshot status     source of
                         /dev/new_vg/newvgsnap1 [active]
  LV Status              available
  # open                 0
  LV Size                52.00 MB
  Current LE             13
  Segments               1
  Allocation             inherit
  Read ahead sectors     0
  Block device           253:2
デフォルトでは lvs コマンドは、複製元のボリュームと、使用されているスナップショットボリュームの現在の割合を表示します。以下の例は、論理ボリューム /dev/new_vg/lvol0 を含むシステム用の lvs コマンドのデフォルト出力を示しています。スナップショットボリューム /dev/new_vg/newvgsnap はこの論理ボリューム用に作成されています。
# lvs
  LV         VG     Attr   LSize  Origin Snap%  Move Log Copy%
  lvol0      new_vg owi-a- 52.00M
  newvgsnap1 new_vg swi-a-  8.00M lvol0    0.20
警告
複製元ボリュームが変更されると、スナップショットのサイズが拡大されるため、lvs コマンドを使用して、スナップショットボリュームのパーセンテージを定期的に監視して、満杯にならないように確認することが重要です。スナップショットは、100% になると完全に消失します。これは、作成元ボリュームの変更されていない部分に書き込みが行われるため、スナップショットが必ず破損するためです。
スナップショットが満杯になると、スナップショット自体が無効になるだけでなく、そのスナップショットデバイスにマウントされているすべてのファイルシステムのマウントが強制的に解除されます。これにより、マウントポイントへのアクセス時に必ず発生するファイルシステムエラーを回避できます。さらに、lvm.conf ファイルに snapshot_autoextend_threshold オプションを指定できます。このオプションにより、スナップショットの残りの領域が、設定されたしきい値を下回ると、常にスナップショットを自動的に拡張できるようになりました。この機能の利用に際しては、ボリュームグループに未割り当ての領域があることが条件になります
LVM では、作成元のボリュームのサイズよりも大きく、そのボリュームのメタデータを必要とするスナップショットボリュームを作成できません。同様に、スナップショットの自動拡張を実行しても、スナップショットに必要なサイズとして計算される最大サイズを超えて拡張されることはありません。スナップショットのサイズが複製元のボリュームを包含できるまで拡大されると、スナップショットの自動拡張はモニターされなくなります。
snapshot_autoextend_thresholdsnapshot_autoextend_percent の設定についての詳細は、lvm.conf ファイルに記載されています。lvm.conf ファイルの詳細は、付録B LVM 設定ファイル を参照してください。