GNU/Linux >> Linux の 問題 >  >> Cent OS

LVM (論理ボリューム管理) の初心者向けガイド

LVM とは

論理ボリューム マネージャー (LVM) は、物理ディスクとファイル システムの間に追加のレイヤーを導入して、ファイル システムを次のようにできるようにします。ディスク上のスペース
– 通常の不可解なデバイス名ではなく、意味のある名前をボリュームに付けます。
– 複数の物理ディスクにまたがります

Linux LVM は HP-UX LVM と非常によく似ており、スナップショット、クラスター サポート (GFS2、OCFS、Lustre) などの他の多くの高度な機能を提供します。

コンセプト

LVM は、物理ボリューム、論理ボリューム、ファイル システムなどのいくつかの概念的なレイヤーで構成されています。

概念層は、物理エクステント (物理ボリュームの場合) や論理エクステント (論理ボリュームの場合) などの小さな単位で構成されます。

物理ボリューム (PV)

各物理ボリュームは、ディスク パーティション、ディスク全体、メタデバイス、またはループバック ファイルにすることができます。コマンド pvcreate を使用します LVM で使用するストレージを初期化します。ブロック デバイスを物理ボリュームとして初期化すると、デバイスの先頭にラベルが配置されます。

ボリューム グループ (VG)

ボリューム グループは、論理ボリュームと物理ボリュームのコレクションを 1 つの管理単位にまとめます。ボリューム グループは、固定サイズの物理エクステントに分割されます。コマンド vgcreate 以前に pvcreate で LVM 用に構成されたブロック スペシャル デバイスの物理ボリューム パスを使用して、新しいボリューム グループを作成します。
– VG は PV で構成され、さらに物理エクステント (PE) で構成されます。 PE のサイズは VG によって異なり、VG の作成時に定義されます。
– PE のデフォルト サイズは 4MB ですが、VG の作成時に必要な値に変更できます。
– 一般に、PE サイズが大きいほど、パフォーマンスが向上します (ただし、LV の粒度の制御は少なくなります)。

論理ボリューム (LV)

論理ボリュームは、非 LVM システムのディスク パーティションに相当する概念です。論理ボリュームは、同じボリューム グループに存在する物理エクステントから作成されるブロック デバイスです。コマンド lvcreate を使用できます 既存のボリューム グループに論理ボリュームを作成します。

ファイル システム

ファイル システムは、論理ボリュームの上に構築されます。コマンド mkfs を使用して、論理ボリュームの上にファイル システムを作成できます。ファイルシステムが作成されたら、必要に応じて論理ボリュームをマウントできます。

始めましょう


以下の例では:
1. 3 つの物理ディスク (/dev/sdb、/dev/sdc、/dev/sdd) から 3 つの物理ボリュームを作成します。 ).
2.これら 3 つの PV からボリューム グループを作成します (/dev/vg01) ).
3.この VG (/dev/vg01/lvol01) に論理ボリュームを作成します。 ).
4.この LV にファイル システムを作成し、マウントします (/data01)。 ).

物理ボリュームを作成する

pvcreate コマンドは、LVM で使用するために PV を初期化するために使用されます。 PV を作成する前に、ディスクが OS に表示されていることを確認してください。 PV として使用するブロック デバイスをスキャンするには、lvmdiskscan を使用します。 コマンド。

# lvmdiskscan
.......
  /dev/sdb   [       2.00 GiB]
  /dev/sdc   [       2.00 GiB]
  /dev/sdd   [       2.00 GiB]
  3 disks
  19 partitions
  0 LVM physical volume whole disks
  0 LVM physical volumes

ブロックデバイスを初期化します:

# pvcreate /dev/sdb /dev/sdc /dev/sdd
  Physical volume "/dev/sdb" successfully created
  Physical volume "/dev/sdc" successfully created
  Physical volume "/dev/sdd" successfully created

物理ボリュームを表示
pvdisplay コマンドを使用します 、pvspvscan 作成したばかりの PV を表示します。

# pvdisplay
  "/dev/sdb" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb
  VG Name
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               Mt3F7z-a2AV-28Vn-uXe2-QejE-Z6tP-UMlQGM

  "/dev/sdc" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdc
  VG Name
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               5m1Fuc-yTRn-I2vG-bMfU-6SE7-53EA-s8VQjt

  "/dev/sdd" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdd
  VG Name
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               1x3e2A-C0Lt-DrUA-tPSM-lsMu-sn70-qg1j8p
# pvscan
  PV /dev/sdb                      lvm2 [2.00 GiB]
  PV /dev/sdc                      lvm2 [2.00 GiB]
  PV /dev/sdd                      lvm2 [2.00 GiB]
  Total: 3 [6.00 GiB] / in use: 0 [0   ] / in no VG: 3 [6.00 GiB]
# pvs
  PV         VG   Fmt  Attr PSize PFree
  /dev/sdb        lvm2 a--  2.00g 2.00g
  /dev/sdc        lvm2 a--  2.00g 2.00g
  /dev/sdd        lvm2 a--  2.00g 2.00g

ボリューム グループを作成する

vgcreate を使用します 新しいボリューム グループ vg01 を作成するコマンド 先ほど作成した 3 つの PV を使用します。 -s でエクステントを指定できます オプション -p を使用して、オプションと VG 内の PV および LV の最大数 および -l それぞれ。これらのオプションはすべてオプションであり、必ずしも使用する必要はありません。

# vgcreate vg01 /dev/sdb /dev/sdc /dev/sdd
  Volume group "vg01" successfully created

vgcreate コマンドで使用されるオプションのオプションは次のとおりです:

オプション 意味
-s 物理エクステント サイズ
-p 最大PV数
-l 最大LV数
–alloc 割り当てポリシー (連続、任意、または固定のいずれか)

VG 情報の表示
コマンド vgs および vgdisplay を使用して、作成したばかりの VG に関する情報を表示できます:

# vgs vg01
  VG   #PV #LV #SN Attr   VSize VFree
  vg01   3   0   0 wz--n- 5.99g 5.99g
# vgdisplay vg01
  --- Volume group ---
  VG Name               vg01
  System ID
  Format                lvm2
  Metadata Areas        3
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                3
  Act PV                3
  VG Size               5.99 GiB
  PE Size               4.00 MiB
  Total PE              1533
  Alloc PE / Size       0 / 0
  Free  PE / Size       1533 / 5.99 GiB
  VG UUID               Cw7GGz-NH3o-Sax2-5jPv-buZS-938T-tmNKFa

VG の有効化と無効化
vgchange コマンドを使用して、ボリューム グループをアクティブ化/非アクティブ化できます。
VG を非アクティブ化するには:

# vgchange -a n vg01
  0 logical volume(s) in volume group "vg01" now active

VG を有効にするには:

# vgchange -a y vg01
  1 logical volume(s) in volume group "vg01" now active

論理ボリュームの作成

lvcreate コマンドを使用して VG に論理ボリュームを作成できるようになりました .
– コマンドで LV 名を指定しない場合、デフォルトで LV には lvol# という名前が付けられます .
– 通常、どの PV が LV にまたがるかを指定しない場合、論理ボリュームは、次の空きベースで PV に作成されます。
– サイズ 5 GB の論理ボリューム lvol01 を作成するには:

# lvcreate -L 5G -n lvol01 vg01
  Logical volume "lvol01" created

ストライプ ボリュームの作成
作成した 3 つの PV すべてにまたがるストライプ ボリュームを作成するには:

# lvcreate -L 5G -I 4096 -i 3 -n lvol01 vg01
  Rounding size (1280 extents) up to stripe boundary size (1281 extents)
  Logical volume "lvol01" created
I - PVs to span while creating striped volume
i - stripe unit

ミラー ボリュームの作成
3 つの PV (sdb、sdc、sdd) にまたがる 3 方向のミラー ボリュームを作成するには:

# lvcreate -L 1G -m 2 -n lvol01 vg01
  Logical volume "lvol01" created

ミラーリングされた LV の作成時に使用するデバイスを指定することもできます。この場合、VG に 3 つの PV しかないため、LV はデフォルトでこれら 3 つの PV に作成されます。

LV 情報の表示
コマンド lvdisplayレベルlvscan 作成したばかりの LV に関する情報を表示するために使用できます。

# lvs /dev/vg01/lvol01
  LV     VG   Attr      LSize Pool Origin Data%  Move Log         Cpy%Sync Convert
  lvol01 vg01 mwi-a-m-- 1.00g                         lvol01_mlog   100.00
# lvdisplay /dev/vg01/lvol01
  --- Logical volume ---
  LV Path                /dev/vg01/lvol01
  LV Name                lvol01
  VG Name                vg01
  LV UUID                ptlmAV-mO42-fWiJ-e2Ml-r9kj-PFcC-MOexxw
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2014-10-22 09:04:25 -0700
  LV Status              available
  # open                 0
  LV Size                1.00 GiB
  Current LE             256
  Mirrored volumes       3
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:4
# lvscan
  ACTIVE            '/dev/vg01/lvol01' [1.00 GiB] inherit

ファイル システムを作成しています

最後のステップは、作成したばかりの新しい LV にファイル システムを作成し、ディレクトリにマウントして、アクセスしてデータを保存できるようにすることです。コマンド mkfs LV の上にファイル システムを作成するために使用できます。

# mkfs.ext4 /dev/vg01/lvol01
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
	32768, 98304, 163840, 229376

Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 37 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

ファイルシステムが作成されると、論理ボリュームをマウントできます。 /etc/fstab に必ずエントリを追加してください 、システムの起動時に自動的にマウントされるようにします。

# mkdir /data01
# mount /dev/vg01/lvol01 /data01
# vi /etc/fstab
/dev/vg01/lvol01	/data01			ext4	defaults	0 0
# df -h /data01
Filesystem                   Size  Used  Avail  Use%  Mounted on
/dev/mapper/vg01-lvol01     1008M   34M  924M   4%    /data01

LVM を管理するグラフィカル ツール

クールなグラフィカル ツールが利用可能です (system-config-lvm )を使用したい場合。システムにまだインストールされていない場合は、yum を使用してインストールします:

# yum install system-config-lvm

グラフィカル LVM 管理ツールを起動するには、次のコマンドを実行します:

# system-config-lvm

LVM 構成:論理ボリューム (LV) 操作/ユーティリティ
LVM 構成:ボリューム グループ (VG) 操作/ユーティリティ
LVM 構成:物理ボリューム (PV) 操作/ユーティリティ


Cent OS
  1. LVM ボリュームグループからディスクを削除する方法

  2. CentOS / RHEL :LVM の物理ボリューム (PV) に含まれる論理ボリューム (LV) を見つける方法

  3. LVM 構成 :論理ボリューム (LV) の操作/ユーティリティ

  1. Linux / CentOS/RedhatでLVMを構成する方法

  2. LVMを使用してLinuxで物理ボリュームを作成する方法

  3. LVM 構成 :物理ボリューム (PV) の操作/ユーティリティ

  1. LVMを使用したLinuxでの論理ボリュームの作成

  2. Lvmパーティション/物理ボリューム>2tbを作成する方法は?

  3. 論理ボリューム管理を使用してルートを縮小しますか?