하나의 용량큰 하드디스크를 사용하는데는 기술적, 비용적 문제가 있다.
이런저런 제약을 극복(?)하고 하나로 하드디스크로 서버를 가동시켰다고 가정해보자.
기계적인 결함으로 하드디스크가 망가져 버린다면?
서버 자체가 날아가 버리는 것이다.
기계야 새로 사면 되지만, 그 안의 정보는 다시 살 곳이 없다...

이런 문제점을 극복하기 위해 RAID라는 기술을 활용한다.
RAID(Redundant Array of Inexpensive Disks)
여러개의 하드디스크를 묶어서 마치 하나의 디스크를 사용하는 것과 같이 하는 기술이다.
방식에 따라 그중 몇개의 하드가 고장나더라도, 기술적으로 보완이 가능하다.
이제 RAID 여러 방식에 대해 설명하겠다.


RAID0 (stripping)
묶인 하드디스크에 분산해서 동시에 저장
장점 : 속도빠름
단점 : 하드디스크 하나 고장나면 전부 고장남. 안정성 0

RAID1 (mirroring)
묶인 하드디스크 양쪽게 같은 내용 저장
장점 : 안정적
단점 : 구축하는데 비용이 많이 든다.

RAID5
사용하는 용량보다 몇개의 하드디스크를 예비용으로 더 묶어두고, 고장나면 대기하고있던 하드디스크가 투입됨
장점 : 어느정도의 결함 허용. 저장곤간 효율좋음
단점 : 하드웨어 특성상 하나의 하드가 고장나면 결국 인접한 하드 같이 고장남. DB서버에서는 RAID5 안쓰임
※ 참고 : hot spare 하드디스크 항상 켜져 있는 상태로 대기상태에서 문제생기면 교체됨
             hot swap 전원 켜져 있는 상태에서 하드 교체 가능

이런 기본개념을 바탕으로 
5+1(복구용 예비하드디스크 추가로 더 장착), 0+1(스트리핑하는 환경을 전체적으로 미러링) , 1+0 등과 같이 활용하면 된다.

VMware상에서 구축해보기로 하자.
우선 RAID에 필요한 하드디스크를 장착하고, 파티션을 나눠보자.

1. 우선 리눅스의 전원을 끈다.

2.Edit Virtual machine settings 부분을 클릭해 아래 창을 띄운후 Add를 눌러 하드디스크를 추가해보자.





3. 용량은 간단하게 100MB정도로 설정하고, single file로 설정하자.


4. 이제 100MB짜리 하드 하나가 장착되었다. vmdk파일명의 경우 알아보기 쉽게 설정하면 되겠다.


5. 같은 방법으로 8개의 하드디스크를 장착한 화면이다.


6. 이제 부팅후 하드디스크가 잘 장착 되어있나 확인해 보면 된다.
ls /dev/sd* 명령어를 이용해 목록을 확인해보자.
sdb, sdc, sdd, sde, sdf, sdg, sdh, sdi 까지 8개의 디스크가 확인되었다.

이제 fdisk명령을 이용해 파티션을 설정해주면 된다.
fdisk /dev/sdb
fdisk에 진입한 상태에선 밑의 사진에 보이는 법대로 차례로 입력하면 된다.

n(새파티션), p(프라이머리파티션), 1(파티션번호), 엔터(시작점-디폴트1번), 엔터(끝점=용량-디폴트 마지막),
t(파일시스템 유형선택), fd(Linux raid autodetect 유형번호), p(잘 설정되었나 확인), w(저장) 의 순서이다.

같은 방법으로 sdb, sdc, sdd, sde, sdf, sdg, sdh, sdi 까지 8개의 디스크 모두 설정해 준다.


7. 다 설정하고 난후 확인해보자.
1번 파티션이 잡힌 상태로 이상없이 확인이 된다.


8. 이제 불의의 사고를 대비해 현재상태를 복원지점으로 설정해 두자.
리눅스의 전원을 끈후 VMware에서 설정하면 된다.
VM메뉴 - snapshot - Take Snapshot 하여 적당한 이름을 지정해준다.


9. 완성


다음 포스팅에서 계속..
Posted by 딩구르

댓글을 달아 주세요