전 포스팅에서 장착하고 파티션을 나눠둔 하드디스크를 가지고 RAID 방식별로 구축을 해보겠다.

RAID0 (stripping)

1. ls -l /dev/md? 명령으로 /dev/md0 장치가 있는지 확인한다.
있는경우 rm명령으로 삭제하고 다시 설정해 주면 된다.

mknot /dev/md0 b 9 0
(b: Block Device, 9:md 장치의 주 번호, 0:0번째 장치)

mdadm --create /dev/md0 --level=0 --raid-device=2 /dev/sdb1 /sdv/sdc1
(md0장치를 RAID0으로 sdb1,sdc1 하드디스크 두개를 이용해 구성)

mdadm --detail --scan 명령을 이용해 잘 적용되었나 확인해 본다.

이제 md0를 포맷하면 된다.
mkfs.ext3 /dev/md0

2. 이제 md0는 RAID0으로 처리된 하나의 하드디스크로 생각하면된다.
포맷까지 해 주었으니 마운트 시켜서 사용하면 된다.
mkdir /raid0data
mount /dev/md0 /raid0data

df -h 명령으로 제대로 마운트 되었나 확인.


3. 다음 부팅시 부터 유지될수 있도록
vi /etc/fstab
명령을 쳐서 아래의 문구를 삽입해주자.
/dev/md0             /raid0data             ext3          defaults            1 2
물론 다 편집하고 :wq! 로 저장하고 나오는것을 잊으면 안된다.



RAID1 (mirroring)

1. 이제 RAID1환경을 구축해보자. 큰 맥락은 RAID0과 크게 다르지 않다.
밑의 스샷을 참고하여 명령어를 입력해보자.

기존의 md1장치를 지운후, nknod 명령어를 통해 새로운 md1장치를 만든다.
이번엔 옵션을  b 9 1로 주어야 한다.
md1장치에 RAID1로 sdd1,sde1 하드디스크 두개를 이용.
확인해보고 md1장치를 포맷하면된다.


2. 디렉토리를 만들어 md1장치를 만든 디렉토리에 마운트 시켜보자.


3. vi /etc/fstab을 통해 다음과 같이 입력해주면 된다. 이제 재부팅해도 RAID1이 적용된 md1장치를 사용할수 있다.


RAID5

1. 조금의 옵션 차이만 있을뿐 큰 맥락은 변하지 않는다.
RAID5의 경우 하드디스크를 4개로 설정하면 된다. RAID5는 최소한 3개의 하드디스크가 필요하다.
3개의 하드디스크에 자료가 저장되면 1개의 하드디스크는 디스크가 고장났을때 복구될 예비 하드이다.


2. 마운트 까지 시켜주고, 제대로 적용되었나 확인해보면된다.
세 방식에 용량의 차이를 볼수 있을것이다. 자세한 설명은 바로 밑에서 하겠다.


3. vi /etc/fstab을 이용해 한줄 더 입력해주고 :wq! 로 저장하고 빠져나오자.

이상 세 방식의 RAID구성은 마무리 되었다.

밑의 사진을 보고 잠시 생각해보자.
RAID0 : md0 - 하드디스크2개사용 = 용량 198MB
RAID1 : md1 - 하드디스크2개사용 = 용량 99MB
RAID5 : md5 - 하드디스크4개사용 = 용량 296MB

RAID0의 경우 스트리핑을 통해 두개의 하드에 동시에 자료를 저장을 하기 때문에 두 하드디스크 전부의 용량을 활용한다.
RAID1의 경우 미러링을 통해, 하나의 하드디스크엔 자료 저장을, 다른 하나의 디스크는 똑같은 내용이 복제된다. 2개지만 1개의 용량밖엔 활용을 못한다.
RAID5의 경우 3개의 하드디스크엔 자료 저장. 나머지 1개의 하드디스크는 복구를 위해 예비기로 대기하게 된다.
이러한 차이가 있음을 인식하고, 활용하면 되겠다.

0+1과같이 스트리핑을 하게 한후 그것을 통채로 미러링해두면 안정적인 서버구축을 할수있다.
5+1과같이 예비의 하드디스크를 한개더 추가해 3개사용 2개예비로 두고 좀더 안정적으로 활용할 수 도있다.



이상 RAID환경을 구축하는 법을 알아보았다.
Posted by 딩구르
,