[Linux] LVM ๊ตฌ์„ฑ

2023. 7. 7. 18:01ใ†System ์ž‘์—…์‹ค/LINUX

728x90
๋ฐ˜์‘ํ˜•

 




 

 

 

๐Ÿš€ [Linux] LVM ๊ตฌ์„ฑ

    ๐Ÿ”ฝ ๊ฐœ์š”

        ๐Ÿ“ฆ ์†Œ๊ฐœ

์˜ค๋Š˜์€ Red Hat Linux ๊ณ„์—ด์˜ Rocky Linux์— 1TB HDD๋ฅผ ์ด์šฉํ•ด์„œ LVM ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•ด๋ณด๋ ค๊ณ  ํ•ด์š”.

LVM(Logical Volume Manager)๋Š” Linux์˜ ์ €์žฅ ๊ณต๊ฐ„์„ ํšจ์œจ์ ์ด๊ณ  ์œ ์—ฐํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ Kernel์˜ ํ•œ ๋ถ€๋ถ„์ด์—์š”.

๊ทธ๋ ‡๋‹ค๋ฉด LVM๊ณผ ์ผ๋ฐ˜ Disk Partitioning์€ ์–ด๋–ค ์ฐจ์ด๊ฐ€ ์žˆ์„๊นŒ์š”?

LVM์ด ์•„๋‹Œ ๊ธฐ์กด ๋ฐฉ์‹์˜ ๊ฒฝ์šฐ, HDD๋ฅผ Partitioningํ•œ ๋’ค OS ์˜์—ญ์— Mountํ•˜์—ฌ R/W (Read/Write)๋ฅผ ํ•ด์ฃผ๋Š” ๋ฐฉ์‹์ธ๋ฐ, LVM์€ Partition ๋Œ€์‹  Volume์ด๋ผ๋Š” ๋‹จ์œ„๋กœ ์ €์žฅ ์žฅ์น˜๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฐฉ์‹์ด์—์š”.

์ด๋Ÿฐ ๋ฐฉ์‹์œผ๋กœ Storage ํ™•์žฅ / ๋ณ€๊ฒฝ์— ์œ ์—ฐํ•˜๊ณ , ํฌ๊ธฐ๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ, ๊ธฐ์กด Data์˜ ์ด์ „์ด ํ•„์š” ์—†๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์–ด์š”.


LVM์€ ์ด๋Ÿฌํ•œ ์žฅ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด์š”.

โˆ™ ์œ ์—ฐํ•œ ์šฉ๋Ÿ‰ ์กฐ์ ˆ
โˆ™ ํฌ๊ธฐ ์กฐ์ ˆ์ด ๊ฐ€๋Šฅํ•œ Storage Pool
โˆ™ ์ž„์˜์˜ ์žฅ์น˜ ์ด๋ฆ„ ์ง€์ •
โˆ™ Disk Strping, Mirror Volume ๋“ฑ ์ œ๊ณต


์ถœ์ฒ˜ :  https://www.thegeekdiary.com/redhat-centos-a-beginners-guide-to-lvm-logical-volume-manager/

 


1. PV (Physical Volume) - ๋ฌผ๋ฆฌ์  ๋ณผ๋ฅจ
  โˆ™ ์‹ค์ œ Disk ์žฅ์น˜๋ฅผ ๋ถ„ํ• ํ•œ ํŒŒํ‹ฐ์…˜๋œ ์ƒํƒœ
  โˆ™ PV๋Š” ์ผ์ •ํ•œ ํฌ๊ธฐ์˜ PE๋กœ ๊ตฌ์„ฑ

2. PE(Physical Extent) - ๋ฌผ๋ฆฌ์  ํ™•์žฅ
  โˆ™ PV๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์ผ์ • ํฌ๊ธฐ์˜ Block
  โˆ™ 1PE๋Š” 4MB ์ •๋„ ํ•ด๋‹น
  โˆ™ PE์™€ LE๋Š” 1:1๋กœ ๋Œ€์‘

3. VG(Volume Group) - ๋ณผ๋ฅจ ๊ทธ๋ฃน
  โˆ™ PV๋“ค์ด ๋ชจ์—ฌ ์ƒ์„ฑ๋˜๋Š” ๋‹จ์œ„
  โˆ™ ์‚ฌ์šฉ์ž๋Š” VG๋ฅผ ์›ํ•˜๋Š”๋Œ€๋กœ ์ชผ๊ฐœ LV ์ƒ์„ฑ

4. LV(Logical Volume) - ๋…ผ๋ฆฌ์  ๋ณผ๋ฅจ
  โˆ™ ์‚ฌ์šฉ์ž๊ฐ€ ์ตœ์ •์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋‹จ์œ„, VG์—์„œ ํ•„์š”ํ•œ ํฌ๊ธฐ๋งŒํผ ๋‚˜๋ˆ  LV ์ƒ์„ฑ


์ถœ์ฒ˜ :  https://www.thegeekdiary.com/redhat-centos-a-beginners-guide-to-lvm-logical-volume-manager/

 

 

 

    ๐Ÿ”ฝ Ubuntu

        ๐Ÿ“ฆ ํŒŒํ‹ฐ์…˜ ๊ตฌ์„ฑ

์ตœ์ดˆ ์ถ”๊ฐ€ํ•œ Disk ์ •๋ณด๋ฅผ ํ™•์ธํ•ด ๋ณผ๊ฒŒ์š”.

fdisk -l

 


์œ„์™€ ๊ฐ™์ด 1TB Disk๊ฐ€ /dev/sdb ์žฅ์น˜๋กœ ์ค€๋น„๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

 

 

 

์ด์ œ ํŒŒํ‹ฐ์…˜์„ ๋งŒ๋“ค์–ด ๋ณผ๊ฒŒ์š”.

fdisk {์žฅ์น˜ Mount ๊ฒฝ๋กœ}

728x90

 

์ตœ์ดˆ ์œ„์™€ ๊ฐ™์ด ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•œ ๋’ค n์ด๋ผ๋Š” ๋ช…๋ น์–ด๋ฅผ ์ฃผ์—ˆ๋Š”๋ฐ, New๋ผ๋Š” ์˜๋ฏธ์—์š”.

์ฆ‰, ์ƒˆ ํŒŒํ‹ฐ์…˜์„ ๋งŒ๋“ค๊ฒ ๋‹ค๋Š” ์˜๋ฏธ์—์š”.



๊ทธ ๋‹ค์Œ์€ p๋ผ๋Š” ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด Primary Partion Type์œผ๋กœ ์žก๊ฒ ๋‹ค๊ณ  ํ•˜์˜€์–ด์š”.
Primary Patiton Type์€ ์ด 4๊ฐœ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”๋ฐ, 1๋ฒˆ์„ ์„ ํƒํ•ด์ฃผ๊ณ ,

First sector๋Š” Default ๊ฐ’ 2048์ด ์ž…๋ ฅ๋˜๊ฒŒ ํ•˜๊ณ ,
Last sector๋˜ํ•œ, ๋ชจ๋“  ์šฉ๋Ÿ‰์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด Default ๊ฐ’์ด ์ž…๋ ฅ๋˜๊ฒŒ ํ•˜์˜€์–ด์š”.



์—ฌ๊ธฐ์„œ ๋‹ค์‹œ p ๋ช…๋ น์–ด๋ฅผ ์ฃผ๊ฒŒ ๋˜๋ฉด Print ์ฆ‰, ๋งŒ๋“ค์–ด์ง„ ํŒŒํ‹ฐ์…˜ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์žฅ์น˜๊ฐ€ /dev/sdb1์œผ๋กœ ํŒŒํ‹ฐ์…˜์ด ์žกํžŒ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

ํ˜„์žฌ ํŒŒํ‹ฐ์…˜ ID๊ฐ€ 83์œผ๋กœ ์žกํ˜€ ์žˆ๋Š”๋ฐ, ์ด๊ฑธ 8e ์ฆ‰, LVM์œผ๋กœ ์žก์•„๋ณผ๊ฑฐ์—์š”.



์ตœ์ดˆ t ๋ผ๋Š” ๋ช…๋ น์–ด๋ฅผ ์ค€ ๋’ค l ๋ช…๋ น์–ด๋ฅผ ์ฃผ๊ฒŒ ๋˜๋ฉด ์žก์„ ์ˆ˜ ์žˆ๋Š” ํŒŒํ‹ฐ์…˜ ์ข…๋ฅ˜๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

์ฃผ๋‹ˆ์“ฐ๋Š” 8e Linux LVM์„ ์„ ํƒํ•ด ์ฃผ์—ˆ์–ด์š”.



๋‹ค์‹œ ์ •๋ณด๋ฅผ ํ™•์ธํ•ด๋ณด๋‹ˆ ํŒŒํ‹ฐ์…˜ ID๊ฐ€ 8e๋กœ ๋ณ€๊ฒฝ๋œ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.



w ์ฆ‰, write ๋ช…๋ น์–ด๋ฅผ ์ฃผ์–ด ์ €์žฅํ•˜๊ณ , ๋‚˜์™€์ค๋‹ˆ๋‹ค.

 

 



        ๐Ÿ“ฆ
LVM ์ค‘ PV ๋งŒ๋“ค๊ธฐ

pvdisplay

 


์œ„์˜ ๋ช…๋ น์–ด ํ˜น์€ pvs๋ฅผ ํ†ตํ•ด ํ˜„์žฌ ๋งŒ๋“ค์–ด์ ธ ์žˆ๋Š” PV ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.


pvcreate {ํŒŒํ‹ฐ์…˜ ์žฅ์น˜ Mount ๊ฒฝ๋กœ}

 


์œ„์˜ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ๋งŒ๋“ค์—ˆ๋˜ ํŒŒํ‹ฐ์…˜์œผ๋กœ PV๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ์—ˆ์–ด์š”.


pvdisplay

 


๋‹ค์‹œ ํ•œ๋ฒˆ PV ์ •๋ณด๋ฅผ ํ™•์ธํ•ด๋ณด๋‹ˆ PV๊ฐ€ ํ•˜๋‚˜ ๋งŒ๋“ค์–ด์ง„๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.











        ๐Ÿ“ฆ LVM ์ค‘ VG ๋งŒ๋“ค๊ธฐ

vgdisplay

 


์œ„์˜ ๋ช…๋ น์–ด ํ˜น์€ vgs ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ๋งŒ๋“ค์–ด์ง„ VG ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

vgcreate {VG ์ด๋ฆ„} {PV Mount ๊ฒฝ๋กœ}

 


์œ„์˜ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด DataVG๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ๋Š”๋ฐ, PV(/dev/sdb1)์— ํ• ๋‹นํ•ด ์ฃผ๋ผ๋Š” ๋ช…๋ น์„ ์ฃผ์—ˆ์–ด์š”.

vgdisplay

 

 

VG๊ฐ€ ๋งŒ๋“ค์–ด์ง„๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

 

 

 

        ๐Ÿ“ฆ LVM ์ค‘ LV ๋งŒ๋“ค๊ธฐ

lvcreate -n {LV ์ด๋ฆ„} -l {ํ• ๋‹นํ•  ์šฉ๋Ÿ‰} {VG ์ด๋ฆ„}

 

 

์ฃผ๋‹ˆ์“ฐ๋Š” DataLV๋ฅผ ๋งŒ๋“œ๋Š”๋ฐ, ๋ชจ๋“  ์šฉ๋Ÿ‰์„ ๋‹ค ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด ์ฃผ์—ˆ์–ด์š”.

๋งŒ์•ฝ 500GB ๋งŒ ํ• ๋‹นํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ต๋‹ˆ๋‹ค.

lvcreate -n {LV ์ด๋ฆ„} -L 500GB {VG ์ด๋ฆ„}

 

 

 

 

        ๐Ÿ“ฆ File System Format

๋งŒ๋“ค์–ด์ง„ LV๋ฅผ ๊ฐ€์ง€๊ณ , File System Type ์ง€์ •๊ณผ ํฌ๋งท ์ž‘์—…์„ ํ•ด๋ณผ๊ฒŒ์š”.

mkfs.{์ ์šฉํ•  File System Type} {LV Mount ๊ฒฝ๋กœ}


์ฃผ๋‹ˆ๋Š” XFS File System์œผ๋กœ Type์„ ์ง€์ •ํ•ด ์ฃผ์—ˆ์–ด์š”.



ํ•ด๋‹น LV๊ฐ€ Mount๋  Directory๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ์—ˆ์–ด์š”.


blkid

 


์œ„ ๋ช…๋ น์–ด๋กœ Mount ํ•˜๊ณ ์ž ํ•  ์žฅ์น˜์˜ UUID ๊ฐ’์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.


vim /etc/fstab

๋ฐ˜์‘ํ˜•


์œ„์™€ ๊ฐ™์ด fstab์— Mountํ•  ์žฅ์น˜ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•ด ์ฃผ์—ˆ์–ด์š”.

์ฃผ๋‹ˆ์“ฐ๋Š” 1TB Disk๋ฅผ LV๋กœ ๋งŒ๋“ค์—ˆ๊ณ , /data Directory์— Mountํ•  ๊ฒƒ์ด๋ฉฐ, ํ•ด๋‹น ์žฅ์น˜๋Š” XFS File System์ด๊ธฐ ๋•Œ๋ฌธ์— ์œ„์™€ ๊ฐ™์ด ์ž…๋ ฅํ•ด ์ฃผ์—ˆ์–ด์š”.


mount -a


์œ„์˜ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜๋ฉด fstab์˜ ์ž…๋ ฅ๋œ ์ •๋ณด๋ฅผ ํ†ตํ•ด ๋ชจ๋‘ Mount ํ•˜๋ผ๋Š” ์˜๋ฏธ์—์š”.

df -h ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํ™•์ธํ•ด ๋ณด๋ฉด ์ •์ƒ์ ์œผ๋กœ 1TB Dis๊ฐ€ /data Directory์— Mount๋œ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์š”.

 

 

 

 

 

 

 

728x90
๋ฐ˜์‘ํ˜•