LVM

PV：物理ボリューム………HDDと同じ

VG：ボリュームグループ…..PVの集合

LV：論理ボリューム………VGからマウント可能なボリューム（VGから切り出す）

ハードディスク追加手順

ハードディスクの取り付け

LVMパーティション作成

PV作成

PVをVGへ登録、またはVG作成

論理ボリュームを追加(mount)、または論理ボリュームサイズを拡大

論理ボリュームを追加(mount)の場合はLVへファイルシステム作成

LVMパーティション作成

HDDパーティション確認

# fdisk -l ← HDDパーティション確認
Disk /dev/xvdb: ##.5 GB, ############ bytes ← 追加したHDDを/dev/xvdbとして認識
255 heads, 63 sectors/track, #### cylinders
Units = cylinders of ###### * 512 = ######## bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

パーティション設定

# fdisk /dev/xvdb
......
Command (m for help): n ← n(新規パーティション作成)
Command action
e extended
p primary partition (1-4)
p ← p(基本パーティション)
Partition number (1-4): 1 ← 1(パーティション番号)
First cylinder (1-####, default 1): ← enter
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-####, default ####): ← enter
Using default value ####
Command (m for help): t ← t(システムID設定）
Selected partition 1
Hex code (type L to list codes): 8e ← 8e(LVMシステムID)
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): p ← p(パーティション表示)
Disk /dev/xvdb: ##.5 GB, ######### bytes
255 heads, 63 sectors/track, #### cylinders
Units = cylinders of ##### * 512 = ######### bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xea#####
Device Boot Start End Blocks Id System
/dev/xvdb1 1 #### ########+ 8e Linux LVM
パーティションが一つでIdが8e、SystemがLinux LVMとなっていることを確認
Command (m for help): w ← w(パーティションをディスクへ書き込み)応答
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

PV(Physical volume)作成

# pvcreate /dev/xvdb1 ← 作成したLVMパーティションでPV作成
Physical volume "/dev/xvdb1" successfully created
# pvdisplay ← 確認
--- Physical volume ---
PV Name /dev/xvda#
VG Name VolGroup00
PV Size ##.90 GiB / not usable ##.00 MiB
Allocatable yes (but full)
.........
"/dev/xvdb1" is a new physical volume of "##.## GiB"
--- NEW Physical volume ---
PV Name /dev/xvdb1
VG Name
PV Size ##.## GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID AX9M24-XXXXXXXXXXXXXXXXXXXXXXXXX

PVをVGへ登録

# vgextend VolGroup00 /dev/xvdb1 ← 作成したPVを既存VGへ登録
Volume group "VolGroup00" successfully extended
[root@host ~]# vgdisplay ← 確認
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 4
VG Access read/write
VG Status resizable
.........
VG Size ##.84 GiB
PE Size ##.00 MiB
Total PE 891
Alloc PE / Size 252 / ##.88 GiB
Free PE / Size 639 / ###.97 GiB ← VGに空きができたのを確認
VG UUID ZoDZsE-LWRR-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

新たにVGを作成する場合

# vgcreate VolData /dev/xvdb1
Volume group "VolData" successfully created
# vgdisplay
--- Volume group ---
VG Name VolData
System ID
Format lvm2
Metadata Areas 1
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 1
Act PV 1
VG Size 1.95 TiB
PE Size 4.00 MiB
Total PE 511999
Alloc PE / Size 0 / 0
Free PE / Size 511999 / 1.95 TiB
VG UUID XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

論理ボリュームサイズを拡大

LVの拡大

# lvdisplay /dev/VolGroup00/LogVol00 ← 拡大する前のLV状況確認
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID D36jZ6-e6si-jiXXXXXXXXXXXXXXXXXXXXXXXX
LV Write Access read/write
LV Status available
# open 1
LV Size #.## GB ← 拡大前LVサイズ
Current LE 108
Segments 1
Allocation inherit
.........
# vgdisplay ← 拡大する前のVG状況確認
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 35
VG Access read/write
VG Status resizable
.........
PE Size 32.00 MB
Total PE ####
Alloc PE / Size ## / #.## GB
Free PE / Size ## / ##.00 GB ← VGに空きあり
VG UUID 9fGKL1-4ki1-XXXXXXXXXXXXXXXXXXXXXXXXX
# lvextend -L +##G /dev/VolGroup00/LogVol00
← VGの空きすべて(PE Size×Free PE=##.00 GB)を使用してLVサイズ拡大
Extending logical volume LogVol00 to ##.## GB
Logical volume LogVol00 successfully resized
[root@centos ~]# lvdisplay /dev/VolGroup00/LogVol00 ← 拡大後LV
--- Logical volume ---
LV Name /dev/VolGroup00/LogVol00
VG Name VolGroup00
LV UUID D36jZ6-e6si-jiXXXXXXXXXXXXXXXXXXXXXXXX
LV Write Access read/write
LV Status available
# open 1
LV Size ##.## GB ← 拡大後LVサイズ
.........
[root@centos ~]# vgdisplay ← 拡大後VG
--- Volume group ---
VG Name VolGroup00
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 36
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
.........
Free PE / Size 0 / 0 ← VGに空きなし
VG UUID 9fGKL1-4ki1-XXXXXXXXXXXXXXXXXXXXXXXXX

ファイルシステムサイズ拡大

# df ← 拡大前ファイルシステムサイズ
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/VolGroup00-LogVol00
####8080 #####572 ####344 51% / ← 拡大前ファイルシステムサイズ
/dev/sda1 101000 23800 72000 25% /boot
tmpfs 127000 0 127000 0% /dev/shm
[root@centos ~]# resize2fs /dev/VolGroup00/LogVol00 ← LVファイルシステムサイズ拡大(LVサイズに合わせる)
resize2fs 1.xx.xx (dd-mm-20##)
Filesystem at /dev/VolGroup00/LogVol00 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/VolGroup00/LogVol00 to ######## (4k) blocks.
The filesystem on /dev/VolGroup00/LogVol00 is now ######## blocks long.
[root@centos ~]# df ← 拡大後ファイルシステムサイズ照会
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/mapper/VolGroup00-LogVol00
####1604 ####432 ####980 20% / ← 拡大後ファイルシステムサイズ
/dev/sda1 101000 23800 72000 25% /boot
tmpfs 127000 0 127000 0% /dev/shm

論理ボリュームを追加する場合

ハードディスク取り外し手順

VGからPV削除

PV削除

パーティション削除

ハードディスク取り外し

メモ

pvscan
lvscan
lvdisplay
vgrename

参考

http://abcmark2010.hatenablog.com/entry/2016/01/10/170809

https://qiita.com/TsutomuNakamura/items/93c6333c8dd32aeb197a#%E8%A3%9C%E8%B6%B3%E8%AB%96%E7%90%86%E3%83%9C%E3%83%AA%E3%83%A5%E3%83%BC%E3%83%A0%E3%82%92%E7%B8%AE%E5%B0%8F%E3%81%99%E3%82%8B