67.9. シンプロビジョニングされたボリューム (シンボリューム) の作成および管理
Red Hat Enterprise Linux は、シンプロビジョニングされたスナップショットボリュームと論理ボリュームをサポートします。
- シンプロビジョニングされた論理ボリュームを使用すると、利用可能な物理ストレージよりも大きな論理ボリュームを作成できます。
- シンプロビジョニングされたスナップショットボリュームを使用すると、同じデータボリュームにより多くの仮想デバイスを格納できます。
67.9.1. シンプロビジョニングの概要
最新のストレージスタックの多くは、シックプロビジョニングとシンプロビジョニングのどちらかを選択できるようになりました。
- シックプロビジョニングは、ブロックストレージの従来の動作を実行でき、実際の使用状況に関係なくブロックが割り当てられます。
- シンプロビジョニングは、ブロックストレージのプールよりも大きいサイズ (データを保存する物理デバイスよりもサイズが大きくなる可能性のあるブロックストレージ) をプロビジョニングできるので、過剰にプロビジョニングされる可能性があります。個々のブロックは実際に使用されるまで割り当てられないため、オーバープロビジョニングが発生する可能性があります。同じプールを共有する複数のシンプロビジョニングされたデバイスがある場合に、これらのデバイスは過剰にプロビジョニングされる可能性があります。
シンプロビジョニングを使用すると、物理ストレージをオーバーコミットでき、代わりにシンプールと呼ばれる空き領域のプールを管理できます。アプリケーションで必要な場合は、このシンプールを任意の数のデバイスに割り当てることができます。シンプールは、ストレージ領域をコスト効率よく割り当てる必要がある場合に、動的に拡張できます。
たとえば、10 人のユーザーから、各自のアプリケーションに使用するファイルシステムをそれぞれ 100GB 要求された場合には、各ユーザーに 100GB のファイルシステムを作成します (ただし、実際には 100GB 未満のストレージが、必要に応じて使用されます)。
シンプロビジョニングを使用する場合は、ストレージプールを監視して、使用可能な物理スペースが不足したときに容量を追加することが重要です。
以下は、シンプロビジョニングされたデバイスを使用する利点です。
- 使用可能な物理ストレージよりも大きい論理ボリュームを作成できます。
- 同じデータボリュームに保存する仮想デバイスを増やすことができます。
- データ要件をサポートするために論理的かつ自動的に拡張できるファイルシステムを作成できます。未使用のブロックはプールに戻され、プール内の任意のファイルシステムで使用できます。
シンプロビジョニングされたデバイスを使用する場合に発生する可能性のある欠点は次のとおりです。
- シンプロビジョニングされたボリュームには、使用可能な物理ストレージが不足するという固有のリスクがあります。基盤となるストレージを過剰にプロビジョニングした場合に、使用可能な物理ストレージが不足しているために停止する可能性があります。たとえば、バッキング用に 1T の物理ストレージのみを使用して、10T のシンプロビジョニングストレージを作成する場合に、この 1T が使い果たされると、ボリュームは使用不可または書き込み不能になります。
-
ボリュームが、シンプロビジョニングデバイスの後の階層に破棄するように送信していない場合には、使用量の計算が正確でなくなります。たとえば、
-o discard mount
オプションを指定せずにファイルシステムを配置し、シンプロビジョニングされたデバイス上でfstrim
を定期的に実行しないと、以前に使用されたストレージの割り当てが解除されることはありません。このような場合に、実際に使用していなくても、時間の経過とともにプロビジョニングされた量をすべて使用することになります。 - 使用可能な物理スペースが不足しないように、論理的および物理的な使用状況を監視する必要があります。
- スナップショットのあるファイルシステムでは、コピーオンライト (CoW) 操作が遅くなる可能性があります。
- データブロックは複数のファイルシステム間で混在する可能性があり、エンドユーザーにそのように表示されない場合でも、基盤となるストレージのランダムアクセス制限につながります。
67.9.2. シンプロビジョニングされた論理ボリュームの作成
シンプロビジョニングされた論理ボリュームを使用すると、利用可能な物理ストレージよりも大きな論理ボリュームを作成できます。シンプロビジョニングされたボリュームセットを作成すると、システムは要求されるストレージの全量を割り当てる代わりに、実際に使用する容量を割り当てることができます。
lvcreate
コマンドに -T
(または --thin
) オプションを付けて、シンプールまたはシンボリュームを作成できます。また、lvcreate
の -T
オプションを使用して、1 つのコマンドで同時にシンプールとシンプロビジョニングされたボリュームの両方を作成することもできます。この手順では、シンプロビジョニングされた論理ボリュームを作成および拡張する方法について説明します。
前提条件
- ボリュームグループを作成している。詳細は、LVM ボリュームグループの作成 を参照してください。
手順
シンプールを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -L 100M -T vg001/mythinpool
# lvcreate -L 100M -T vg001/mythinpool Thin pool volume with chunk size 64.00 KiB can address at most 15.81 TiB of data. Logical volume "mythinpool" created.
物理領域のプールを作成しているため、プールのサイズを指定する必要があります。
lvcreate
コマンドの-T
オプションでは引数を使用できません。コマンドで指定する他のオプションをもとに、作成するデバイスのタイプを決定します。次の例に示すように、追加のパラメーターを使用してシンプールを作成することもできます。また、
lvcreate
コマンドの ----thinpool
パラメーターを指定して、シンプールを作成することもできます。-T
オプションとは異なり、-thinpool
パラメーターでは、作成するシンプール論理ボリュームの名前を指定する必要があります。次の例では、-thinpool
パラメーターを使用して、サイズが 100M のボリュームグループ vg001 に mythinpool という名前のシンプールを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -L 100M --thinpool mythinpool vg001
# lvcreate -L 100M --thinpool mythinpool vg001 Thin pool volume with chunk size 64.00 KiB can address at most 15.81 TiB of data. Logical volume "mythinpool" created.
プールの作成ではストライピングがサポートされているため、
-i
および-I
オプションを使用してストライプを作成できます。次のコマンドは、ボリュームグループ vg001 に、thinpool という名前の 2 つの 64 KB ストライプと 256 KB のチャンクサイズを持つ 100 M シンプールを作成します。また、vg001/thinvolume という名前でサイズが 1T のシンボリュームを作成します。注記ボリュームグループに十分な空き領域がある 2 つの物理ボリュームがあることを確認してください。そうでない場合にはシンプールを作成できません。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -i 2 -I 64 -c 256 -L 100M -T vg001/thinpool -V 1T --name thinvolume
# lvcreate -i 2 -I 64 -c 256 -L 100M -T vg001/thinpool -V 1T --name thinvolume
シンボリュームを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -V 1G -T vg001/mythinpool -n thinvolume
# lvcreate -V 1G -T vg001/mythinpool -n thinvolume WARNING: Sum of all thin volume sizes (1.00 GiB) exceeds the size of thin pool vg001/mythinpool (100.00 MiB). WARNING: You have not turned on protection against thin pools running out of space. WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full. Logical volume "thinvolume" created.
このような場合には、ボリュームを含むプールのサイズよりも大きい、ボリュームの仮想サイズを指定しています。次の例に示すように、追加のパラメーターを使用してシンボリュームを作成することもできます。
シンボリュームとシンプールの両方を作成するには、
lvcreate
コマンドの-T
オプションを使用して、サイズと仮想サイズの両方の引数を指定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -L 100M -T vg001/mythinpool -V 1G -n thinvolume
# lvcreate -L 100M -T vg001/mythinpool -V 1G -n thinvolume Thin pool volume with chunk size 64.00 KiB can address at most 15.81 TiB of data. WARNING: Sum of all thin volume sizes (1.00 GiB) exceeds the size of thin pool vg001/mythinpool (100.00 MiB). WARNING: You have not turned on protection against thin pools running out of space. WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full. Logical volume "thinvolume" created.
残りの空き領域を使用してシンボリュームとシンプールを作成するには、
100%FREE
オプションを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -V 1G -l 100%FREE -T vg001/mythinpool -n thinvolume
# lvcreate -V 1G -l 100%FREE -T vg001/mythinpool -n thinvolume Thin pool volume with chunk size 64.00 KiB can address at most <15.88 TiB of data. Logical volume "thinvolume" created.
既存の論理ボリュームをシンプールボリュームに変換するには、
lvconvert
コマンドの--thinpool
パラメーターを使用します。また、-poolmetadata
パラメーターを--thinpool
パラメーターと組み合わせて使用して、既存の論理ボリュームをシンプールボリュームのメタデータボリュームに変換する必要があります。以下の例は、ボリュームグループ vg001 の既存の論理ボリューム lv1 を、シンプールボリュームに変換します。また、ボリュームグループ vg001 の既存の論理ボリューム lv2 を、そのシンプールボリュームのメタデータボリュームに変換します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvconvert --thinpool vg001/lv1 --poolmetadata vg001/lv2
# lvconvert --thinpool vg001/lv1 --poolmetadata vg001/lv2 Converted vg001/lv1 to thin pool.
注記論理ボリュームをシンプールボリュームまたはシンプールメタデータボリュームに変換すると、論理ボリュームのコンテンツが破棄されます。
lvconvert
はデバイスのコンテンツを保存するのではなく、コンテンツを上書きするためです。デフォルトでは、
lvcreate
コマンドは、次の式を使用してシンプールメタデータ論理ボリュームのおおよそのサイズを設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pool_LV_size / Pool_LV_chunk_size * 64
Pool_LV_size / Pool_LV_chunk_size * 64
スナップショットが大量にある場合や、シンプールのサイズが小さく、後で急激に大きくなることが予測される場合は、
lvcreate
コマンドの--poolmetadatasize
パラメーターで、シンプールのメタデータボリュームのデフォルト値を大きくしないといけない場合があります。シンプールのメタデータ論理ボリュームで対応している値は 2 MiB - 16 GiB です。次の例は、シンプールのメタデータボリュームのデフォルト値を増やす方法を示しています。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -V 1G -l 100%FREE -T vg001/mythinpool --poolmetadatasize 16M -n thinvolume
# lvcreate -V 1G -l 100%FREE -T vg001/mythinpool --poolmetadatasize 16M -n thinvolume Thin pool volume with chunk size 64.00 KiB can address at most 15.81 TiB of data. Logical volume "thinvolume" created.
作成されたシンプールとシンボリュームを表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvs -a -o +devices
# lvs -a -o +devices LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices [lvol0_pmspare] vg001 ewi------- 4.00m /dev/sda(0) mythinpool vg001 twi-aotz-- 100.00m 0.00 10.94 mythinpool_tdata(0) [mythinpool_tdata] vg001 Twi-ao---- 100.00m /dev/sda(1) [mythinpool_tmeta] vg001 ewi-ao---- 4.00m /dev/sda(26) thinvolume vg001 Vwi-a-tz-- 1.00g mythinpool 0.00
オプション:
lvextend
コマンドを使用して、シンプールのサイズを拡張します。ただし、シンプールのサイズを縮小することはできません。注記シンプールとシンボリュームの作成中に
-l100%FREE
引数を使用すると、このコマンドは失敗します。以下のコマンドは、既存のシンプールのサイズ (100M) を変更し、さらに 100M 分を拡張します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvextend -L+100M vg001/mythinpool
# lvextend -L+100M vg001/mythinpool Size of logical volume vg001/mythinpool_tdata changed from 100.00 MiB (25 extents) to 200.00 MiB (50 extents). WARNING: Sum of all thin volume sizes (1.00 GiB) exceeds the size of thin pool vg001/mythinpool (200.00 MiB). WARNING: You have not turned on protection against thin pools running out of space. WARNING: Set activation/thin_pool_autoextend_threshold below 100 to trigger automatic extension of thin pools before they get full. Logical volume vg001/mythinpool successfully resized
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvs -a -o +devices
# lvs -a -o +devices LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices [lvol0_pmspare] vg001 ewi------- 4.00m /dev/sda(0) mythinpool vg001 twi-aotz-- 200.00m 0.00 10.94 mythinpool_tdata(0) [mythinpool_tdata] vg001 Twi-ao---- 200.00m /dev/sda(1) [mythinpool_tdata] vg001 Twi-ao---- 200.00m /dev/sda(27) [mythinpool_tmeta] vg001 ewi-ao---- 4.00m /dev/sda(26) thinvolume vg001 Vwi-a-tz-- 1.00g mythinpool 0.00
オプション: シンプールとシンボリュームの名前を変更するには、次のコマンドを使用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvrename vg001/mythinpool vg001/mythinpool1 lvrename vg001/thinvolume vg001/thinvolume1
# lvrename vg001/mythinpool vg001/mythinpool1 Renamed "mythinpool" to "mythinpool1" in volume group "vg001" # lvrename vg001/thinvolume vg001/thinvolume1 Renamed "thinvolume" to "thinvolume1" in volume group "vg001"
名前を変更した後に、シンプールとシンボリュームを表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvs
# lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert mythinpool1 vg001 twi-a-tz 100.00m 0.00 thinvolume1 vg001 Vwi-a-tz 1.00g mythinpool1 0.00
オプション: シンプールを削除するには、次のコマンドを使用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvremove -f vg001/mythinpool1
# lvremove -f vg001/mythinpool1 Logical volume "thinvolume1" successfully removed. Logical volume "mythinpool1" successfully removed.
関連情報
-
システム上の
lvcreate (8)
、lvrename (8)
、lvs (8)
、およびlvconvert (8) の
man ページ
67.9.3. Web コンソールでシンプロビジョニングボリュームのプールの作成
シンプロビジョニングされたボリューム用のプールを作成します。
前提条件
- RHEL 8 Web コンソールがインストールされている。
- cockpit サービスが有効になっている。
ユーザーアカウントが Web コンソールにログインできる。
手順は、Web コンソールのインストールおよび有効化 を参照してください。
-
cockpit-storaged
パッケージがシステムにインストールされている。 - ボリュームグループが作成されている。
手順
RHEL 8 Web コンソールにログインします。
詳細は、Web コンソールへのログイン を参照してください。
- Storage をクリックします。
- Storage テーブルで、シンボリュームを作成するボリュームグループをクリックします。
- Logical volume group ページで、LVM2 logical volumes セクションまでスクロールし、 をクリックします。
- Name フィールドに、新しい論理ボリュームの名前を入力します。名前にスペースを含めないでください。
Pool for thinly provisioned volumes を選択します。
ドロップダウンメニューで、この設定では、ボリュームグループに含まれるすべてのドライブの容量の合計に等しい最大ボリュームサイズを持つ論理ボリュームを作成できます。
論理ボリュームのサイズを定義します。以下を検討してください。
- この論理ボリュームを使用するシステムに必要なスペースの量。
- 作成する論理ボリュームの数
領域をすべて使用する必要はありません。必要な場合は、後で論理ボリュームを大きくすることができます。
シンボリュームのプールが作成され、プールにシンボリュームを追加できるようになりました。
67.9.4. Web コンソールでシンプロビジョニングされた論理ボリュームの作成
Web コンソールを使用して、プール内にシンプロビジョニングされた論理ボリュームを作成できます。複数のシンボリュームを追加でき、各シンボリュームは、シンボリュームのプールと同じ大きさにできます。
シンボリュームを使用する場合は、論理ボリュームの物理的な空き容量を定期的に確認する必要があります。
前提条件
- RHEL 8 Web コンソールがインストールされている。
- cockpit サービスが有効になっている。
ユーザーアカウントが Web コンソールにログインできる。
手順は、Web コンソールのインストールおよび有効化 を参照してください。
-
cockpit-storaged
パッケージがシステムにインストールされている。 - シンボリュームのプールを作成している。
手順
RHEL 8 Web コンソールにログインします。
詳細は、Web コンソールへのログイン を参照してください。
- Storage をクリックします。
- Storage テーブルで、シンボリュームを作成するボリュームグループのメニューボタンをクリックします。
- Logical volume group ページで、LVM2 logical volumes セクションまでスクロールし、シン論理ボリュームを作成するプールをクリックします。
- Pool for thinly provisioned LVM2 logical volumes ページで、Thinly provisioned LVM2 logical volumes セクションまでスクロールし、Create new thinly provisioned logical volume をクリックします。
- Create thin volume ダイアログボックスで、シンボリュームの名前を入力します。名前にスペースは使用しないでください。
- シンボリュームのサイズを定義します。
Create をクリックします。
シン論理ボリュームが作成されます。ボリュームを使用する前にフォーマットする必要があります。
67.9.5. チャンクサイズの概要
チャンクは、スナップショットストレージ専用の物理ディスクの最大単位です。
チャンクサイズを使用するには、以下の基準を使用します。
- チャンクサイズが小さいほどメタデータが増え、パフォーマンスも低下しますが、スナップショットで領域の使用率が向上します。
- チャンクサイズが大きいほどメタデータ操作は少なくなりますが、スナップショットの領域効率が低下します。
デフォルトでは、lvm2
は 64 KiB のチャンクサイズから開始し、そのチャンクサイズに対して適切なメタデータサイズを推定します。lvm2
が作成および使用できるメタデータの最小サイズは 2 MiB です。メタデータのサイズを 128 MiB より大きくする必要がある場合、lvm2 はチャンクサイズを増やすため、メタデータのサイズはコンパクトなまま保たれます。しかし、これによりチャンクサイズの値が大きくなり、スナップショットの使用におけるスペース効率が低下する可能性があります。このような場合、チャンクサイズを小さくし、メタデータサイズを大きくすることを推奨します。
要件に従ってチャンクサイズを指定するには、-c
または --chunksize
パラメーターを使用して、lvm2
の推定チャンクサイズを無効にします。シンプールの作成後はチャンクサイズを変更できないことに注意してください。
ボリュームデータサイズが TiB の範囲にある場合は、サポートされる最大サイズである約 15.8 GiB をメタデータサイズとして使用し、要件に従ってチャンクサイズを設定します。ただし、ボリュームのデータサイズを拡張し、チャンクサイズを小さくする必要がある場合には、メタデータサイズを拡大できないことに注意してください。
不適切なチャンクサイズとメタデータサイズの組み合わせを使用すると、ユーザーが metadata
スペースを使い果たしたり、アドレス指定可能な最大シンプールデータサイズが制限されているためにシンプールサイズをそれ以上拡張できなくなったりして、問題が発生する可能性があります。
関連情報
-
lvmthin(7)
man ページ
67.9.6. シンプロビジョニングのスナップショットボリューム
Red Hat Enterprise Linux は、シンプロビジョニングされたスナップショットボリュームをサポートします。シン論理ボリュームのスナップショットにより、シン論理ボリューム (LV) を作成することもできます。シンプロビジョニングのスナップショットボリュームには、他のシンボリュームと同じ特性があります。ボリュームのアクティブ化、拡張、名前変更、削除、さらにはスナップショット作成も個別に行うことができます。
すべてのシンボリュームや、LVM スナップショットボリュームと同様に、シンプロビジョニングのスナップショットボリュームは、クラスターのノード間では対応していません。スナップショットボリュームは、1 つのクラスターノードで排他的にアクティブにする必要があります。
従来のスナップショットでは、作成されたスナップショットごとに新しい領域を割り当てる必要があります。この領域では、作成元に変更が加えられてもデータが保持されます。ただし、シンプロビジョニングスナップショットは、作成元と同じ領域を共有します。シン LV のスナップショットは、シン LV とそのスナップショットのいずれかに共通のデータブロックが共有されるので効率的です。シン LV のスナップショットを作成することも、他のシンスナップショットから作成することもできます。再帰スナップショットに共通のブロックもシンプールで共有されます。
シンプロビジョニングのスナップショットボリュームの利点は以下のとおりです。
- オリジンのスナップショットの数を増やしても、パフォーマンスへの影響はほとんどありません。
- シンスナップショットボリュームは、新しいデータのみが書き込まれ、各スナップショットにコピーされないため、ディスク使用量を減らすことができます。
- 従来のスナップショットの要件でしたが、シンスナップショットボリュームを作成元と同時にアクティブにする必要はありません。
- スナップショットからオリジンを復元する場合、シンスナップショットをマージする必要はありません。オリジンを削除して、代わりにスナップショットを使用できます。従来のスナップショットには、コピーバックする必要がある変更を保存する別のボリュームがあります。つまり、元のスナップショットにマージしてリセットする必要があります。
- 従来のスナップショットと比較して、許可されるスナップショットの上限数がはるかに増えています。
シンプロビジョニングのスナップショットボリュームを使用する利点は数多くありますが、従来の LVM スナップショットボリューム機能の方がニーズに適している場合もあります。すべてのタイプのボリュームで従来のスナップショットを使用できます。ただし、シンスナップショットを使用するには、シンプロビジョニングを使用する必要があります。
シンプロビジョニングのスナップショットボリュームのサイズを制限することはできません。スナップショットは、必要な場合はシンプール内の全領域を使用します。一般的には、使用するスナップショットの形式を決定する際に、使用しているサイトの特定要件を考慮するようにしてください。
デフォルトで、シンスナップショットボリュームは、通常のアクティブ化コマンドの実行時に省略されます。
67.9.7. シンプロビジョニングのスナップショットボリュームの作成
シンプロビジョニングされたスナップショットボリュームを使用すると、同じデータボリュームにより多くの仮想デバイスを格納できます。
シンプロビジョニングのスナップショットボリュームを作成する場合、ボリュームのサイズは指定しません。サイズパラメーターを指定すると、作成されるスナップショットはシンプロビジョニングのスナップショットボリュームにはならず、データを保管するためにシンプールを使用することもありません。たとえば、lvcreate -s vg/thinvolume -L10M
コマンドは、作成元ボリュームがシンボリュームであっても、シンプロビジョニングのスナップショットを作成しません。
シンプロビジョニングのスナップショットは、シンプロビジョニングされた作成元ボリューム用に作成するか、シンプロビジョニングされていない作成元ボリューム用にも作成できます。次の手順では、シンプロビジョニングされたスナップショットボリュームを作成するさまざまな方法について説明します。
前提条件
- シンプロビジョニングされた論理ボリュームを作成ている。詳細は、シンプロビジョニングの概要 を参照してください。
手順
シンプロビジョニングされたスナップショットボリュームを作成します。以下のコマンドは、シンプロビジョニングされた論理ボリューム vg001/thinvolume で、シンプロビジョニングのスナップショットボリューム (名前: mysnapshot1) を作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -s --name mysnapshot1 vg001/thinvolume
# lvcreate -s --name mysnapshot1 vg001/thinvolume Logical volume "mysnapshot1" created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvs
# lvs LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert mysnapshot1 vg001 Vwi-a-tz 1.00g mythinpool thinvolume 0.00 mythinpool vg001 twi-a-tz 100.00m 0.00 thinvolume vg001 Vwi-a-tz 1.00g mythinpool 0.00
注記シンプロビジョニングを使用する場合は、ストレージ管理者がストレージプールを監視し、容量が満杯になり始めたら容量を追加することが重要です。シンボリュームのサイズを拡張する方法は、シンプロビジョニングされた論理ボリュームの作成 を参照してください。
シンプロビジョニングされていない論理ボリュームの、シンプロビジョニングされたスナップショットを作成することもできます。シンプロビジョニングされていない論理ボリュームはシンプール内に含まれていないため、外部の複製元と呼ばれます。外部の作成元ボリュームは、複数の異なるシンプールからであっても、多くのシンプロビジョニングのスナップショットボリュームで使用でき、共有できます。外部の作成元は、シンプロビジョニングのスナップショットが作成される際に非アクティブであり、かつ読み取り専用である必要があります。
次の例では、origin_volume という名前の読み取り専用の非アクティブな論理ボリュームのシンスナップショットボリュームを作成します。このシンプロビジョニングのスナップショットボリュームの名前は mythinsnap です。論理ボリューム origin_volume は、既存のシンプール vg001/pool を使用する、ボリュームグループ vg001 内のシンプロビジョニングのスナップショットボリューム mythinsnap に対する外部の作成元になります。作成元のボリュームは、スナップショットボリュームと同じボリュームグループに属している必要があります。作成元の論理ボリュームを指定するときは、ボリュームグループを指定しないでください。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -s --thinpool vg001/pool origin_volume --name mythinsnap
# lvcreate -s --thinpool vg001/pool origin_volume --name mythinsnap
以下のコマンドを実行して、最初のスナップショットボリュームの 2 番目のシンプロビジョニングのスナップショットボリュームを作成できます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -s vg001/mysnapshot1 --name mysnapshot2
# lvcreate -s vg001/mysnapshot1 --name mysnapshot2 Logical volume "mysnapshot2" created.
3 番目のシンプロビジョニングされたスナップショットボリュームを作成するには、次のコマンドを使用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvcreate -s vg001/mysnapshot2 --name mysnapshot3
# lvcreate -s vg001/mysnapshot2 --name mysnapshot3 Logical volume "mysnapshot3" created.
検証
シンスナップショット論理ボリュームのすべての祖先と子孫のリストを表示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lvs -o name,lv_ancestors,lv_descendants vg001
$ lvs -o name,lv_ancestors,lv_descendants vg001 LV Ancestors Descendants mysnapshot2 mysnapshot1,thinvolume mysnapshot3 mysnapshot1 thinvolume mysnapshot2,mysnapshot3 mysnapshot3 mysnapshot2,mysnapshot1,thinvolume mythinpool thinvolume mysnapshot1,mysnapshot2,mysnapshot3
ここでは、以下のようになります。
- thinvolume は、ボリュームグループ vg001 で元となるボリュームです。
- mysnapshot1 は thinvolume のスナップショットです。
- mysnapshot2 は mysnapshot1 のスナップショットです。
mysnapshot3 は mysnapshot2 のスナップショットです、
注記lv_ancestors
フィールドとlv_descendants
フィールドには、既存の依存関係が表示されます。ただし、削除されたエントリーは追跡しません。このチェーンの最中にエントリーが削除されると、依存関係チェーンが壊れるためです。
関連情報
-
システムの
lvcreate (8)
man ページ
67.9.8. Web コンソールを使用してシンプロビジョニングされたスナップショットボリュームの作成
RHEL Web コンソールでシン論理ボリュームのスナップショットを作成し、前回のスナップショット以降ディスクに記録された変更をバックアップできます。
前提条件
- RHEL 8 Web コンソールがインストールされている。
- cockpit サービスが有効になっている。
ユーザーアカウントが Web コンソールにログインできる。
手順は、Web コンソールのインストールおよび有効化 を参照してください。
-
cockpit-storaged
パッケージがシステムにインストールされている。 - シンプロビジョニングボリュームが作成されている。
手順
- RHEL 8 Web コンソールにログインします。
- Storage をクリックします。
- Storage テーブルで、シンボリュームを作成するボリュームグループをクリックします。
- Logical volume group ページで、LVM2 logical volumes セクションまでスクロールし、シン論理ボリュームを作成するプールをクリックします。
- Pool for thinly provisioned LVM2 logical volumes ページで、Thinly provisioned LVM2 logical volumes セクションまでスクロールし、論理ボリュームの横にあるメニューボタン をクリックします。
ドロップダウンメニューから、Create snapshot を選択します。
Name フィールドにスナップショット名を入力します。
- をクリックします。
- Pool for thinly provisioned LVM2 logical volumes ページで、Thinly provisioned LVM2 logical volumes セクションまでスクロールし、新しく作成されたスナップショットの横にあるメニューボタン をクリックします。
ドロップダウンメニューから Activate を選択してボリュームをアクティブ化します。