Show Table of Contents
4.4.4. シンプロビジョニングされた論理ボリュームの作成
Red Hat Enterprise Linux 6.4 リリースでは、論理ボリュームのシンプロビジョニングが可能です。これにより、利用可能なエクステントより大きい論理ボリュームを作成することができます。シンプロビジョニングを使用すると、空き領域のストレージプール (シンプールと呼ばれる) を管理して、アプリケーションが必要とする場合に、これを任意の数のデバイスに割り当てることができます。その後、アプリケーションが実際に論理ボリュームに書き込む際など後で割り当てられるように、シンプールにバインドできるデバイスを作成できます。シンプールでは、ストレージ領域のコスト効率の良い割り当てに必要となる動的な拡張が可能です。
注記
このセクションでは、シンプロビジョニングされた論理ボリュームを作成し、拡張するために使用する基本的なコマンドの概要を説明します。LVM シンプロビジョニングの詳細情報と、シンプロビジョニングされた論理ボリュームと共に LVM コマンドおよびユーティリティーを使用する方法についての情報は、
lvmthin(7) man ページを参照してください。
注記
シンボリュームはクラスター内のノード間ではサポートされません。シンプールとそのすべてのシンボリュームは、1 つのクラスターノードでのみ排他的にアクティブ化する必要があります。
シンボリュームを作成するには、以下のタスクを実行してください。
vgcreateコマンドを使用して、ボリュームグループを作成します。lvcreateコマンドを使用して、シンプールを作成します。lvcreateコマンドを使用して、シンプール内にシンボリュームを作成します。
lvcreate コマンドに -T (または --thin) オプションを使用して、シンプールまたはシンボリュームを作成します。また、lvcreate コマンドの -T オプションを使用して、1 つのコマンドで同時にシンプールとプール内のシンボリュームの両方を作成することも可能です。
以下のコマンドは、
lvcreate コマンドに -T オプションを使用して、mythinpool という名前のシンプールを作成します。これは、ボリュームグループ vg001 内にあり、サイズは 100M です。物理領域のプールを作成しているため、プールのサイズを指定する必要があります。lvcreate コマンドの -T オプションは引数を取りません。コマンドが指定する他のオプションから作成されるデバイスのタイプを推定します。
#lvcreate -L 100M -T vg001/mythinpoolRounding up size to full physical extent 4.00 MiB Logical volume "mythinpool" created #lvsLV VG Attr LSize Pool Origin Data% Move Log Copy% Convert my mythinpool vg001 twi-a-tz 100.00m 0.00
以下のコマンドは、
lvcreate コマンドに -T オプションを使用して、シンプール vg001/mythinpool に thinvolume という名前のシンボリュームを作成します。ここでは、仮想サイズを指定して、ボリュームを含むプールよりも大きなボリュームの仮想サイズを指定している点に注意してください。
#lvcreate -V1G -T vg001/mythinpool -n thinvolumeLogical volume "thinvolume" created #lvsLV VG Attr LSize Pool Origin Data% Move Log Copy% Convert mythinpool vg001 twi-a-tz 100.00m 0.00 thinvolume vg001 Vwi-a-tz 1.00g mythinpool 0.00
以下のコマンドは、
lvcreate コマンドに -T オプションを使用して、シンプールとプール内にシンボリュームを作成します。その際、lvcreate コマンドでサイズと仮想サイズの引数を指定します。また、このコマンドは、ボリュームグループ vg001 内に mythinpool という名前のシンプールを作成し、そのプール内に thinvolume という名前のシンボリュームも作成します。
#lvcreate -L 100M -T vg001/mythinpool -V1G -n thinvolumeRounding up size to full physical extent 4.00 MiB Logical volume "thinvolume" created #lvsLV VG Attr LSize Pool Origin Data% Move Log Copy% Convert mythinpool vg001 twi-a-tz 100.00m 0.00 thinvolume vg001 Vwi-a-tz 1.00g mythinpool 0.00
また、
lvcreate コマンドの --thinpool パラメーターを指定して、シンプールを作成することもできます。-T オプションとは異なり、--thinpool パラメーターには作成しているシンプール論理ボリューム名の引数が必要です。以下の例は、lvcreate コマンドで --thinpool パラメーターを指定して、mythinpool という名前のシンプールを作成します。これは、ボリュームグループ vg001 内にあり、サイズは 100M です。
#lvcreate -L 100M --thinpool mythinpool vg001Rounding up size to full physical extent 4.00 MiB Logical volume "mythinpool" created #lvsLV VG Attr LSize Pool Origin Data% Move Log Copy% Convert mythinpool vg001 twi-a-tz 100.00m 0.00
ストライピングはプールを作成するためにサポートされています。以下のコマンドは、2 つの 64 kB のストライプがあり、チャンクサイズが 256 kB のボリュームグループ
vg001 内に pool という名前の 100M のシンプールを作成します。また、1T のシンボリューム vg00/thin_lv も作成します。
# lvcreate -i 2 -I 64 -c 256 -L100M -T vg00/pool -V 1T --name thin_lvlvextend コマンドを使用して、シンボリュームのサイズを拡張できます。ただし、シンプールのサイズを縮小することはできません。
以下のコマンドは、既存のシンプールのサイズ (100M) を変更し、100M 拡張します。
#lvextend -L+100M vg001/mythinpoolExtending logical volume mythinpool to 200.00 MiB Logical volume mythinpool successfully resized #lvsLV VG Attr LSize Pool Origin Data% Move Log Copy% Convert mythinpool vg001 twi-a-tz 200.00m 0.00 thinvolume vg001 Vwi-a-tz 1.00g mythinpool 0.00
他の論理ボリュームのタイプと同様に、
lvrename を使用してボリューム名の変更、lvremove を使用してボリュームの削除、lvs と lvdisplay のコマンドを使用してボリュームの情報の表示を行うことができます。
デフォルトでは、
lvcreate は数式 (Pool_LV_size / Pool_LV_chunk_size * 64) に沿ってシンプールのメタデータ論理ボリュームのサイズを設定します。現時点ではメタデータボリュームのサイズを変更することはできませんが、後でシンプールのサイズが大幅に拡大されることが予測される場合には、lvcreate コマンドの --poolmetadatasize パラメーターを使ってこの値を増やしておくことをお勧めします。シンプールのメタデータ論理ボリュームのサポートされる値は、2MiB から 16GiB の間です。
lvconvert コマンドの --thinpool パラメーターを使用して、既存の論理ボリュームをシンプールボリュームに変換できます。既存の論理ボリュームをシンプールボリュームに変換する場合、lvconvert コマンドの --thinpool パラメーターとともに --poolmetadata パラメーターを使用して、既存の論理ボリュームをシンプールボリュームのメタデータボリュームに変換する必要があります。
注記
論理ボリュームをシンプールボリュームまたはシンプールメタデータボリュームに変換すると、論理ボリュームのコンテンツが破棄されます。この場合、
lvconvert はデバイスのコンテンツを保存するのではなく、コンテンツを上書きするためです。
以下の例は、ボリュームグループ
vg001 内の既存の論理ボリューム lv1 をシンプールボリュームに変換しています。また、ボリュームグループ vg001 内の既存の論理ボリューム lv2 をそのシンプールボリュームのメタデータボリュームに変換しています。
# lvconvert --thinpool vg001/lv1 --poolmetadata vg001/lv2
Converted vg001/lv1 to thin pool.
Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.