본문 바로가기
프로그래밍/LINUX

[LINUX 25일차] CentOS RAID 생성(Level 0+1,Level 1+0) / LVM(Linear 구성)

by B T Y 2017. 4. 12.
반응형

CentOS RAID 생성(Level 0+1,Level 1+0) / LVM(Linear 구성)에 대해서 정리한다.



※ RAID 생성 [ Level 0+1 ]



1. 디스크 추가

- /dev/sdb ( 1G )

- /dev/sdc ( 1G )

- /dev/sdd ( 1G )

- /dev/sde ( 1G )



2. Raid 파티션 생성 ( fd )

- /dev/sdb1

- /dev/sdc1

- /dev/sdd1

- /dev/sde1



3. Raid 생성 ( Tool - mdadm )

- /dev/md/stripe1 ( Level 0 )

- /dev/sdb1

- /dev/sdc1


- /dev/md/stripe2 ( Level 0 )

- /dev/sdd1

- /dev/sde1


- /dev/md/level01 ( Level 1 )

- /dev/md/stripe1

- /dev/md/stripe2



4. 파일시스템 생성 ( ext4 )

- /dev/md/level01

#>mkfs -t ext4 /dev/md/level01



5. 마운트

#>mount /dev/md/level01 /raid/level01



6. 장치 멈춤

- 마운트 해제

#>umount /dev/md/level01

- /dev/md/level01

#>mdadm --stop /dev/md/level01


- /dev/md/stripe1

#>mdadm --stop /dev/md/stripe1


- /dev/md/stripe2

#>mdadm --stop /dev/md/stripe2


* Level 0+1에서 장치를 멈출때는 장치를 생성할때와 반대 순서로 작업을 진행 해준다.



( Level 0+1에서 먼저 Level 0을 구성하기 위해 4장의 디스크로 /dev/md/stripe1과 /dev/md/stripe2 구성을 진행 하였다 )



( mdadm --detail을 이용해서 /dev/md/stripe2의 구성 정보를 확인 할 수 있다 )



( 2개의 stripe 구성 장치를 가지고 이번에는 mirror 구성을 해주게 되면 Level 0+1 구성이 된다 )



( Leve 0+1 구성 이후에는 정보를 저장하기 위해 ext4 파일 시스템을 생성 해줬다 )



( 파일 시스템 생성 이후에는 mount로 연결해서 해당 마운트 포인트의 내용은 방금 만든 

/dev/md/level01로 저장이 되도록 한다 )





※ RAID 생성 [ Level 1+0 ]



1. 디스크 추가 ( 4장 )


2. 파티션 생성 ( fd )


3. Raid 생성 ( Tool - mdadm )

#>mdadm --create /dev/md/level10 -l 10 -n 4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1



4. Raid 확인

#>mdadm --detail /dev/md/level10



5. 파일시스템 생성

#>mkfs -t ext4 /dev/md/level10



6. 마운트

#>mount /dev/md/level10


- 확인

#>df -h



* mdadm에서 Level 10 구성을 지원해주기 때문에 생성할때 -l 옵션에 10이라고만 적어줘도 된다.





※ LVM ( Logical Volume Manager )


- Raid보다 유연한 기능( 사용하는 중에 크기 조절 가능 ) 제공

( 하지만 안정성은 떨어진다 )


- LINUX에서 LVM을 사용하기 때문에 제공한다.

( 따로 설치할 필요가 없다 )



1. PV( Physical Volumn )

- LVM을 구성하는 물리적 단위


2. VG( Volumn Group )

- 여러개의 PV로 구성되는 논리적인 단위


3. LV( Logical Volumn )

- VG를 이용하여 사용하고자 하는 디스크 공간을 할당

( 파티션과 같은 개념 )





※ LVM 구성 [ Linear 구성 ]



1. 디스크 추가

- /dev/sdb ( 1G )

- /dev/sdc ( 1G )



2. LVM 파티션 생성 ( 시스템ID - 8e )

- /dev/sdb1

- /dev/sdc1



3. PV 생성

#>pvcreate <dev_name>


- 확인

#>pvs



( LVM을 구성하기 위해서는 해당 디스크 장치들을 물리적인 PV로 먼저 만들어줘야 한다 )



4. VG 생성

#>vgcreate <vg_name> <pv_name> ...


- 확인

#>vgs



( 생성한 PV들을 vgcreate를 이용해 하나의 그룹으로 묶어준다 )



5. LV 생성

#>lvcreate -L <size> -n <lv_name> <vg_name>

( size 단위 : bBsSkKmMgGtTpPeE )


#>lvcreate -l <size> -n <lv_name> <vg_name>

( size 단위 : % )


#>lvcreate -L 500M -n lv01 korea

#>lvcreate -L 750M -n lv02 korea

#>lvcreate -l 100%FREE -n lv03 korea


- 확인

#>lvs


#>pvs



( lvcreate -L 명령어를 사용해서 500M 크기의 LV를 할당했는데 여기서 <lv_name> 자리에는 

디렉터리가 아닌 이름만 단독으로 써준다 )



( vgs와 pvs 명령어를 이용해서 확인해보면 사용 가능한 크기가 500M 줄어든걸 볼 수 있다 )



( 각 PV의 크기가 1G인데 이번에는 LV 크기를 750M로 주고 생성하니까 Linear 방식인데도 불구하고 

남아있는 장치부터 순서대로 저장되는게 아닌 한번에 저장 가능한 공간에 먼저 저장 시키는걸 볼 수 있다 )


* 원래 순차적으로 저장하는 Linear 특성의 방식을 생각해본다면 /dev/sdb1에 먼저 저장 되는게 맞는데 

이런 부분에서는 Raid에 Linear 방식과 약간의 차이를 보인다.

( 만약 LV 크기가 1.5G였다면 그냥 우리가 알고 있는 Linear 방식처럼 순차적으로 저장이 된다 )



( lvcreate -l을 이용하면 %로 LV를 생성 할 수 있는데 이 경우에는 남은 공간에 100%를 쓴다고 했기 때문에 

양쪽 PV에 남은 공간을 다 가져오는걸 볼 수 있다 )



6. 파일시스템 생성

#>mkfs -t ext4 /dev/mapper/korea-lv01



7. 마운트

#>mkdir -p /lvm/linear1

#>mount /dev/mapper/korea-lv01


- 확인

#>df -h



8. 장치 제거

1) 마운트 해제

#>umount /dev/mapper/korea-lv01



2) LV 제거

#>lvremove <dev_name>

#>lvremove /dev/mapper/korea-lv01

#>lvremove /dev/mapper/korea-lv02

#>lvremove /dev/mapper/korea-lv03


3) VG 제거

#>vgremove <vg_name>

#>vgremove korea



4) PV 제거

#>pvremove <dev_name>

#>pvremove /dev/sdb1

#>pvremove /dev/sdc1



반응형

댓글