[KT Cloud] Linux 계열 서버 Data Disk Mount -LVM 구성
파티션 설정
Linux 계열 서버 Data Disk Mount -LVM 구성
PV(physical volume)생성
하나의 물리적 디스크 이다. 리눅스에서 VG,LV 를 만들기 위해 물리적인 디스크를 PV 형태로 만들어주어야 한다.
VG(volume group) 생성
하나 이상의 물리적 디스크가 모여 이루어진 볼륨이다. 모든 PV 는 VG 에 속해 있어야한다.
리눅스는 모두 속해 있어야 할 필요는 없음
LV(logical volume) 생성
사용자는 LV에 접근을 해서 파일을 읽고 쓴다. VG 는 하나 이상의 LV 에 속한다.
사용자는 파일이 연속된 것처럼 보이지만, 실제로 PV 에는 불연속적인 공간에 write 가 될수 있음.
- 파티션 하기전 사전 지식:
현재 용량 확인
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda3 17G 2.3G 14G 15% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.8G 0 1.8G 0% /dev/shm
tmpfs 1.8G 17M 1.8G 1% /run
tmpfs 1.8G 0 1.8G 0% /sys/fs/cgroup
/dev/xvda1 969M 190M 713M 22% /boot
tmpfs 354M 0 354M 0% /run/user/0
- fdisk 확인
# fdisk -l
Disk /dev/xvda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x00099475
Device Boot Start End Blocks Id System
/dev/xvda1 * 2048 2050047 1024000 83 Linux
/dev/xvda2 2050048 6244351 2097152 82 Linux swap / Solaris
/dev/xvda3 6244352 41943039 17849344 83 Linux
Disk /dev/xvdb: 85.9 GB, 85899345920 bytes, 167772160 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
xvdb 는 사용자마다 다를 수 있음
- 추가된 디스크를 Linux LVM 으로 파티션 생성
# fdisk /dev/xvdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xb4e3f7ca.
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-167772159, default 2048): enter
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-167772159, default 167772159): enter
Using default value 167772159
Partition 1 of type Linux and of size 80 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.
- pvcreate 도구 설치
# yum -y install lvm2
- pcreate 명령어를 이용하여 PV 생성
# pvcreate /dev/xvdb1
Physical volume "/dev/xvdb1" successfully created.
- 생성 결과 확인
# pvscan
PV /dev/xvdb1 lvm2 [80.00 GiB]
Total: 1 [80.00 GiB] / in use: 0 [0 ] / in no VG: 1 [80.00 GiB]
- VG 생성
# vgcreate -s 16m DataVG /dev/xvdb1
Volume group "DataVG" successfully created
- 생성된 VG 결과 확인
# vgdisplay DataVG
--- Volume group ---
VG Name DataVG
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 79.98 GiB
PE Size 16.00 MiB
Total PE 5119
Alloc PE / Size 0 / 0
Free PE / Size 5119 / 79.98 GiB
VG UUID hqIPnm-yzwG-drBN-GdQK-RQom-GS4O-zbMuyR
- LV 생성
# lvcreate -l +100%FREE -n Data DataVG
Logical volume "data00" created.
- Logical Volume 생성 내역 확인
# lvdisplay -v
--- Logical volume ---
LV Path /dev/DataVG/Data
LV Name Data
VG Name DataVG
LV UUID PMXwrU-Cp1s-lI8e-VZj3-xwtH-1fRL-RZkrkK
LV Write Access read/write
LV Creation host, time VM1495156618242, 2017-05-19 11:36:17 +0900
LV Status available
# open 0
LV Size 79.98 GiB
Current LE 5119
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:0
- 파일 시스템 생성
# mkfs.ext3 /dev/DataVG/Data
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
5242880 inodes, 20967424 blocks
1048371 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
640 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
- 폴더(루트에 만드세요) 생성후 마운트
# mkdir 연결할폴더명
# mount /dev/DataVG/Data 연결할폴더명
만약에 잘못해서 다시하려면
⇒ umount /dev/DataVG/Data 연결할폴더명
하고 다시 하면 됨.
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup
...
...
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=361904k,mode=700)
/dev/mapper/DataVG-Data on 연결할폴더명 type ext3 (rw,relatime,data=ordered)
- 부팅시 자동 마운트 되도록 fstab 에 추가
# vi /etc/fstab
/dev/mapper/DataVG-Data /4Linx ext3 defaults 0 0
를 추가하고 저장한다.