GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでシンプロビジョニングされた論理ボリュームを作成する方法

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 -T /

ここで、-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 -T / -n

[[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つのツール


Linux
  1. Linuxでスワップを作成する方法

  2. LinuxでSystemdサービスを作成する方法

  3. Linuxでスワップファイルを作成する方法

  1. CentOS / RHEL :シン プロビジョニングされた論理ボリュームを作成する方法

  2. snapper コマンドを使用して LVM シン ボリュームのスナップショットを作成する方法

  3. シン プロビジョニングされていない qcow2 ファイルを作成するにはどうすればよいですか?

  1. Linuxパーティションまたは論理ボリュームにファイルシステムを作成する方法

  2. Linuxコマンドのスクリプトを作成する方法

  3. LinuxRPMパッケージを作成する方法