RAID
RAID 는 여러 개의 디스크를 하나의 디스크 처럼 사용할 수 있게 한다.
하드웨어 RAID 도 있고 소프트웨어 RAID 도 있다.
여기에서는 가상머신을 통해 소프트웨어 RAID 를 한번 다뤄보자.
RAID 에는 다양한 방식이 있는데 특징적으로 아래와 같다.
Linear RAID
단순히 두개의 하드 디스크를 사용하는 것과 동일하다.
RAID 0 ( Striping )
2개의 하드 디스크에 동시 저장하기 때문에 가장 바르다.
I/O 가 일어날 때 데이터를 여러 조각으로 나누어 각각의 디스크에 순서대로 저장하게 된다.
하나의 하드디스크라도 깨지게 되면 사실상 나머지 하나의 디스크도 못쓰게 된다.
RAID 1 ( Mirroring )
RAID 0 과 달리 안정성에 중점을 둔 RAID 레벨이다.
두 개의 디스크에 동일한 데이터를 기록한다.
일반적으로 OS 가 설치되는 디스크에 필수적으로 사용되는 구성 방법이다.
RAID 4 ( Parity )
RAID 0 을 위한 2개의 하드와 문제가 생겼을 때 이를 복원하기 위한 하나의 하드를 더 두는 방식이다.
결국 저장되는 데이터는 0 또는 1 이므로 모든 수의 구성이 짝수개를 유지하도록 해서 문제가 생기면 문제가
생긴 하드를 복원할 수 있는 방식이다.
두 개의 하드디스크에 문제가 생기면 복원할 수 없는 단점과 하나의 하드디스크는 Parity 용으로 사용해서
실제 데이터를 저장할 수 없는 단점이 있다.
RAID 5
RAID 4 의 문제점이 Parity 용 하드가 하나라서 데이터를 동시에 기록하려고 하면 병목 현상이 일어날 수 있는데
이를 개선한 방식이라고 한다.
RAID 6
RAID 4,5 의 두 개의 하드디스크에 문제가 생기면 복원할 수 없는 단점을 두개의 Parity 하드를 사용해서
두개가 동시에 문제가 생겨도 복원이 가능하도록 하는 방식이다.
RAID 0 + 1
RAID 0 을 RAID1 로 묶는 방식이다.
세트 하나가 Fault 가 발생해도 다른 하나의 세트를 사용할 수 있다.
VMware 에 RAID 구축
아래와 같이
Linear RAID 를 /dev/sdb, /dev/sdc
RAID 0 타입으로 /dev/sdd, /dev/sde
RAID 1 타입으로 /dev/sdf, /dev/sdg
RAID 5 타입으로 /dev/sdh, /dev/sdi, /dev/sdj
형식의 RAID 용 하드 디스크를 추가한다. ( 앞장 참조 )
RAID 타입으로 파티션 나누기
각 물리 하드 디스크를 fdisk 로 들어가서
sdb 하드 디스크의 타입을 보면 Linux 로 설정되어 있다.
type 정보는 t 를 명령창에 입력하면 되고 입력 가능한 타입을 보고 싶으면 L 을 누르면 된다.
이중 RAID 를 설정하기 위해 필요한 타입은 "fd" (Linux raid auto) 가 된다.
fd 를 입력하고 다시 확인해 보면 Type 이 raid autodetect 로 바뀐 것을 확인할 수 있다.
이 상태에서 w 를 주면 리부팅 하지 않아도 포멧 된 상태가 바로 나타난다.
마찬가지로 sdc, sde, ... 를 모두 RAID 타입으로 포멧후 실제로 파티션이 포멧되었는지 확인하자.
Linear RAID 만들기
앞서 fdisk 로 한꺼번에 파티션은 나누어 놓았다.
앞서 일반적으로 하드디스크를 추가하는 것과 달리 논리 볼륨을 구성해야 한다.
이를 위한 명령이 mdadm 이다.
# 볼륨 그룹 만들기
# --level = linear (RAID Linear) , 0 (RAID 0) , 1 (RAID 1) , 5 (RAID 5)
# --raid-devices = 2 ( 논리 볼륨을 구성할 파티션의 개수 )
$ mdadm --create /dev/md9 --level=linear --raid-devices=2 /dev/sdb1 /dev/sdc1
# 볼륨 그룹 확인
$ mdadm --detail /dev/md9
# 볼륨 그룹 최근 확인
$ mdadm --detail --scan
|
아래와 같이 확인해 볼 수 있다.
이제 포멧하고 마운트하자.
마지막으로 /etc/fstab 파일에 마운트 정보를 기록한다.
...
$ /dev/md9 /raidLinear ext4 defaults 0 0
|
나머지 RAID 만들기
나머지 RAID 를 만드는 과정도 동일하다.
mdadm 의 인자만 다르기 때문에 특별히 설명은 하지 않고 위에 구성대로 만들어보자.
추가작업
우분투 버그로 인해 한가지 작업을 더 해주어야 한다.
아래와 같이 논리 볼륨 정보를 수동으로 기입해야 한다.
이때 name=xx 부분은 지운다.
'LINUX > Ubuntu' 카테고리의 다른 글
25. 텔넷 서버 (0) | 2020.01.29 |
---|---|
24. LVM (0) | 2020.01.29 |
22. 하드디스크 추가 (0) | 2020.01.29 |
21. 소켓 (0) | 2020.01.29 |
20. 서비스 ( 데몬 ) (0) | 2020.01.29 |