IT/linux

linux LVM

울티마 2022. 6. 10. 14:29

1. Adding Disks
[root@centos72 ~]# fdisk -l : /dev/sdb ~ /dev/sdf

2. creating new partition and changing partition type to LVM
(fdisk로 각 디스크의 파티션 생성 및 파티션 타입을 LVM으로 변경)

[root@centos72 ~]# fdisk /dev/sdb
Building a new DOS disklabel with disk identifier 0xab69fb12.
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p

Partition number (1–4, default 1): 1
First sector (2048–104857599, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048–104857599, default 104857599):
Using default value 104857599
Partition 1 of type Linux and of size 50 GiB is set

Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition ‘Linux’ to ‘Linux LVM’

Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

3. verifying LVM type
[root@centos72 ~]# fdisk -l
Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 4096 bytes / 1048576 bytes
Disk label type: dos
Disk identifier: 0x000243ce
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 7813119 3905536 83 Linux
/dev/sda2 7813120 70311935 31249408 82 Linux swap / Solaris
/dev/sda3 70311936 209715199 69701632 83 Linux
/dev/sdb1 2048 104857599 52427776 8e Linux LVM
/dev/sdc1 2048 104857599 52427776 8e Linux LVM
/dev/sdd1 2048 104857599 52427776 8e Linux LVM
/dev/sde1 2048 104857599 52427776 8e Linux LVM
/dev/sdf1 2048 104857599 52427776 8e Linux LVM

4. reboot and check agagin

[root@centos72 ~]# reboot

[root@centos72 ~]# fdisk -l
/dev/sdb1 2048 104857599 52427776 8e Linux LVM
/dev/sde1 2048 104857599 52427776 8e Linux LVM
/dev/sdc1 2048 104857599 52427776 8e Linux LVM
/dev/sdd1 2048 104857599 52427776 8e Linux LVM
/dev/sdf1 2048 104857599 52427776 8e Linux LVM

5. LVM2 패키지 설치
[root@centos72 ~]# yum install lvm2

6. creating PV, VG, LV
(1) creating PV
[root@centos72 ~]# pvcreate /dev/sdb1
Physical volume “/dev/sdb1” successfully created

[root@centos72 ~]# pvcreate /dev/sdc1
Physical volume “/dev/sdc1” successfully created

[root@centos72 ~]# pvcreate /dev/sdd1
Physical volume “/dev/sdd1” successfully created

[root@centos72 ~]# pvcreate /dev/sde1
Physical volume “/dev/sde1” successfully created

[root@centos72 ~]# pvcreate /dev/sdf1
Physical volume “/dev/sdf1” successfully created

(2) creating VG
[root@centos72 ~]# vgcreate vg01 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1
Volume group “vg01” successfully created

(3) configuring /etc/lvm/lvm.conf
PV will not be changed

[root@centos72 ~]# cat /etc/lvm/lvm.conf | grep filter
filter = [ “a/sdb/”, “a/sdc/”, “a/sdd/”, “a/sde/”, “a/sdf/”, “r/.*/” ]
   >> sdb, sdc, sdd, sde, sdf 변경 금지

[root@centos72 ~]# vgs -vvv

(4) verifying VG
[root@centos72 ~]# vgdisplay vg001
----Volume group ---
VG Name vg01
System ID
Format lvm2
Metadata Areas 5
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 5
Act PV 5
VG Size 249.98 GiB
PE Size 4.00 MiB
Total PE 63995
Alloc PE / Size 0 / 0
Free PE / Size 63995 / 249.98 GiB
VG UUID wy2vjI-qtAB-gM4p-O6Wk-n5RR-WRCE-bt6k4J

(5) creating LV --stripe
[root@centos72 by-id]# lvcreate --extents 100%FREE --stripes 5 -- stripteesize 64 -- name lvData01 vg01
Rounding size (63744 extents) up to stripe boundary size (63745 extents).
Logical volume “lvData01” created.
   >> 5개의 디스크로 구성하므로 stripe 개수는 5, stripe 사이즈는 64KB

# lvcreate -L 100G -i5 -I32 -n lv_tmax vg01
→ 5개의 스트라이프를 32KB 사이즈로 100GB 생성

[root@centos72 by-id]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lvData01 vg01 -wi-a ------249.00g

(6) creating filesystem
[root@centos72 by-id]# mkfs -t xfs /dev/vg01/lvData01
[root@centos72 by-id]# ls -l /dev/mapper/
lrwxrwxrwx. 1 root root 7 Dec 28 15:08 vg01-lvData01 -> ../dm-0

(6) editing /etc/fstab and mount
[root@centos72 by-id]# mkdir -p /data
[root@centos72 by-id]# mount -t xfs /dev/mapper/vg01-lvData01 /data
[root@centos72 by-id]# df -H
/dev/mapper/vg01-lvData01 268G 35M 268G 1% /data

[root@centos72 ~]# vi /etc/fstab
/dev/mapper/vg01-lvData01/data xfs defaults0 0
참고 : 일반 디스크 파일시스템 생성 및 마운트

[root@centos72 data]# fdisk -l
Disk /dev/sdg: 75.2 GB, 75161927680 bytes, 146800640 sectors

파티션 생성
[root@centos72 data]# fdisk /dev/sdg
Welcome to fdisk (util-linux 2.23.2).
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1–4, default 1): 1
First sector (2048–146800639, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048–146800639, default 146800639):
Using default value 146800639
Partition 1 of type Linux and of size 70 GiB is set

Command (m for help): w
The partition table has been altered!

파일시스템 생성
[root@centos72 data]# mkfs.xfs /dev/sdg1
UUID 확인
[root@centos72 data]# ls -l /dev/disk/by-uuid/
lrwxrwxrwx. 1 root root 10 Dec 28 15:40 06b5722b-8569–4484-add6-ad1dbb6d771a -> ../../sdg1
마운트 및 fstab 등록
[root@centos72 data]# mkdir -p /data1
[root@centos72 data]# vi /etc/fstab
[root@centos72 data]# cat /etc/fstab
UUID=06b5722b-8569–4484-add6-ad1dbb6d771a /data1 xfs defaults 0 0

리부팅 후 마운트 확인
[root@centos72 data]# rebooot
[root@centos72 ~]# df -H
/dev/sdg1 76G 35M 76G 1% /data1