LVM(論理ボリューム管理)は、サーバー上のディスクスペースをより効率的に使用するための優れた方法です。 LVMの利点の1つは、lvmベースのパーティションのスナップショットを取得し、シンプロビジョニングされた論理ボリュームを作成できることです。
シンプロビジョニングを使用すると、使用可能なディスク容量よりも大きな論理ボリュームを作成できます。シンプロビジョニングを使用するには、ボリュームグループからシンプールを作成する必要があります。その後、そのシンプールから論理ボリュームを作成できます。
この記事では、Linuxでシンプロビジョニングされた論理ボリュームを作成する方法を段階的に説明します。
Linuxサーバー(CentOS 7.x / RHEL 7.x)があり、新しい10GBのディスクを割り当てたとしましょう。 10 GBのシンプールを作成します。このシンプールから、最初に4GBごとに2つの論理ボリュームと1GBのサイズの1つの論理ボリュームを作成します。
シンプロビジョニングされた論理ボリュームを作成するには、次の手順を参照してください
ステップ1)pvcreateコマンドを使用して物理ボリュームを作成します
新しいディスクが/dev/sdbとして検出されたとしましょう。以下のpvcreateコマンドを実行して、ディスク上に物理ボリュームを作成します。
[[email protected] ~]# pvcreate /dev/sdb Physical volume "/dev/sdb" successfully created [[email protected] ~]#
ステップ2)vgcreateコマンドを使用してボリュームグループを作成します
vgcrereateコマンドを実行して、「volgrp」という名前のボリュームを作成します
[[email protected] ~]# vgcreate volgrp /dev/sdb Volume group "volgrp" successfully created [[email protected] ~]#
ステップ3)ボリュームグループからシンプールを作成します
シンプールは、lvcreateコマンドを使用して作成される論理ボリュームのようなものです
構文:
#lvcreate –L
ここで、-Lはプールのサイズを指定するために使用され、-Tはシンプールを指定するために使用されます
[[email protected] ~]# lvcreate -L 9.90G -T volgrp/lvpool Rounding up size to full physical extent 9.90 GiB Logical volume "lvpool" created. [[email protected] ~]#
シンプールのサイズを確認する
[[email protected] ~]# lvs /dev/volgrp/lvpool LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvpool volgrp twi-a-tz-- 9.90g 0.00 0.59 [[email protected] ~]#
ステップ4)シンプールから論理ボリュームを作成する
各サイズ4GBサイズの2つの論理ボリュームを作成しましょう
構文:
#lvcreate -V
[[email protected] ~]# lvcreate -V 4G -T volgrp/lvpool -n node1 Logical volume "node1" created. [[email protected] ~]# lvcreate -V 4G -T volgrp/lvpool -n node2 Logical volume "node2" created. [[email protected] ~]#
以下のlvsコマンドを使用して、シンプールと論理ボリュームのステータスを確認します
[[email protected] ~]# lvs /dev/volgrp/lvpool && lvs /dev/volgrp/node{1..2} LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvpool volgrp twi-aotz-- 9.90g 0.00 0.65 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert node1 volgrp Vwi-a-tz-- 4.00g lvpool 0.00 node2 volgrp Vwi-a-tz-- 4.00g lvpool 0.00 [[email protected] ~]#
ステップ5)シンプロビジョニングされた論理ボリュームをフォーマットします
mkfsコマンドを使用して、上記で作成した論理ボリューム上にファイルシステム(ext4)を作成します。
[[email protected] ~]# mkfs.ext4 /dev/volgrp/node1 [[email protected] ~]# mkfs.ext4 /dev/volgrp/node2 [[email protected] ~]# mkdir /opt/vol1 && mkdir /opt/vol2 [[email protected] ~]# mount /dev/volgrp/node1 /opt/vol1/ && mount /dev/volgrp/node2 /opt/vol2/ [[email protected] ~]#>
「dfコマンド」を使用してマウントポイントを確認します
[[email protected] ~]# df -Th /opt/vol1/ /opt/vol2/ Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/volgrp-node1 ext4 3.9G 16M 3.6G 1% /opt/vol1 /dev/mapper/volgrp-node2 ext4 3.9G 16M 3.6G 1% /opt/vol2 [[email protected] ~]#
ddコマンドを使用して上記で作成したファイルシステムにデータを書き込みます
[[email protected] ~]# dd if=/dev/zero of=/opt/vol1/file.txt bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 3.26031 s, 329 MB/s [[email protected] ~]# dd if=/dev/zero of=/opt/vol2/file.txt bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 2.70821 s, 396 MB/s [[email protected] ~]#
次に、lvsコマンドを使用して、シンプロビジョニングされた論理ボリュームのサイズを確認します。
両方の論理ボリュームが29%のデータを消費していることがわかります。
次に、シンプールから3番目の論理ボリュームを作成してみます。
[[email protected] ~]# lvcreate -V 1G -T volgrp/lvpool -n node3 Logical volume "node3" created. [[email protected] ~]#
シナリオ:
今のところ、論理ボリューム内のシンプールのスペース全体を消費しています。サイズ2Gの論理ボリュームをもう1つ作成するように頼まれた場合。
シンプールから新しい論理ボリュームを作成できますか…?
何が起こるか ?オーバーコミットをサポートしていますか…?
答えは「はい」です。オーバーコミットまたはオーバープロビジョニングをサポートしているため、論理ボリュームを作成できますが、論理ボリュームの作成中に警告メッセージがスローされます。例を以下に示します:
[[email protected] ~]# lvcreate -V 2G -T volgrp/lvpool -n node4 WARNING: Sum of all thin volume sizes (11.00 GiB) exceeds the size of thin pool volgrp/lvpool and the size of whole volume group (10.00 GiB)! For thin pool auto extension activation/thin_pool_autoextend_threshold should be below 100. Logical volume "node4" created. [[email protected] ~]#
次に、論理ボリュームのステータスを再度確認します
ステップ6)lvextendコマンドを使用してシンプールのサイズを拡張します
5Gのディスクがもう1つサーバー(/ dev / sdc)に割り当てられていると仮定すると、このディスクを使用してシンプールを拡張します。
次の手順を参照してください
物理ボリュームを作成し、ボリュームグループ(volgrp)を拡張します
[[email protected] ~]# pvcreate /dev/sdc Physical volume "/dev/sdc" successfully created [[email protected] ~]# vgextend volgrp /dev/sdc Volume group "volgrp" successfully extended [[email protected] ~]#
シンプールは論理ボリュームであるため、lvextendコマンドでそのサイズを拡張できます
[[email protected] ~]# lvextend -L+5G volgrp/lvpool
次に、シンプールのサイズを確認します。約15GBである必要があります。
注:シンプールを縮小または縮小することはできません。拡張のみがサポートされています
このガイドの内容は以上です。参考になると思います。フィードバックやコメントを共有してください。
また読む :Linuxディスクの使用状況とパーティションを監視するための上位5つのツール