RAID 구성과 종류에 대해 알아보자

반응형

RAID

(Redundant Array of Independent/Inexpensive Disk)



개념

여러 개의 디스크를 하나의 논리적인 유닛으로 묶어주는 저장 기술


사용하는 이유 / 목적

서버의 사용자가 서버 운영에 있어 가장 당혹스러울 때는 하드디스크의 장애로 인한 DATA 손실일 것이다. 하드디스크는 사실상 소모품으로 분류되며 I/O가 많은 서버에는 고장이 잦은 것이 당연하다고 볼 수 있다. 사용 목적에 따라 백업이 절대적으로 필요한 경우가 있고 또한, 여분의 디스크가 있어 용량을 증설하려고 할 때 데이터 손실 없이 증설이 필요한 경우가 있다.


디스크는 데이터를 저장하는 장소이며, 디스크 관련 기술의 핵심은 저장되는 데이터의 보존무중단 서비스에 초점을 맞추고 있다. 물론 성능 향상과 효율성을 증대시켜 가용성을 얻는 효과도 있다.


즉, 서버 관리자는 RAID 구성을 통해 여러 개의 하드 디스크를 하나로 통합해 속도와 효율성을 향상 시켜 디스크의 가용성을 높이고 디스크 고장시에도 서버 데이터를 보호하고 무중단 서비스를 하기 위해 사용한다.


장점

1) 데이터 안정성 보장

2) 운용 가용성 확보

3) 용량 증설의 용이성


설정방법

두 가지 방법이 있다.


1. H/W

: 서버 세팅 전 RAID는 HW RAID. 즉, 물리적인 DISK 단위로 RAID를 구성하며, 운영체제에 이 디스크가 하나의 디스크처럼 보이게 한다.


2. S/W

: 서버 세팅 후 RAID는 SW RAID. 즉, 설치된 운영체제 안에서 Partition 단위로 RAID를 구성하며, 여러 개의 디스크를 하나의 디스크처럼 보이게 한다. 물론 운영체제는 여러 개의 디스크로 인식한다.

H/W 구성에 비해 가격은 저렴하지만, 성능 향상 폭이 작고 안정성도 떨어진다.


3. 펌웨어 (=메인보드 RAID)

: OS 진입 전 BIOS(UEFI) 메뉴에서 RAID를 구성. OS에 관계없이 작동하며, OS에선 사용자에게 원래 장착한 디스크 대신 가상의 BIOS(UEFI) RAID 하드웨어가 표시. 다른 운영체제로 변경해도 RAID가 계속 유효한 대신, 메인보드를 변경하게 되면 RAID는 더 이상 사용을 못하는 경우가 발생할 수 있다.


종류

1. RAID 0 - 스트라이프(분산)


데이터를 여러 개의 디스크에 분산하여 저장한다.


* 최소 드라이브 개수 : 2

* 최대 용량 : 디스크의 수 x 디스크의 용량


장점 1) 디스크를 추가할 때마다 용량 증설 및 성능이 향상된다.

       2) 속도가 매우 빠르다.


단점 1) 디스크 중 하나라도 고장 발생 시 장애 복구가 어렵다.

       2) 패리티(오류검출기능)를 지원하지 않는다.



2. RAID 1 – 미러링(복제)


같은 데이터를 저장한 디스크를 2개씩 갖고 있다.


* 최소 드라이브 개수 : 2

* 최대 용량 : 디스크의 용량


장점 1) 디스크 고장이 나더라도 똑같은 데이터 값을 담은 디스크가 하나 더 있기 때문에 데이터 안정성이 보장된다.

       2) 복원이 비교적 쉽다.


단점 1) 용량이 전체 디스크의 절반만 사용 가능하다.

       2) 디스크 두 개에 동일한 데이터를 써야 하기 때문에 쓰기 성능이 나쁘다.



3. RAID 2


해밍 코드인 오류정정부호(ECC)를 기록하는 전용 하드 디스크를 이용해서 안전성을 확보한다.


모든 I/O에서 ECC 계산이 필요하며 그로 인해 ECC 디스크에 병목 현상이 발생한다. 또한 고장 시 추가적인 연산이 계속적으로 필요해 I/O 속도가 매우 나쁘다.



4. RAID 3


데이터가 Byte 단위로 쪼개져 모든 디스크에 균등하게 저장되고, 패리티 정보는 별도 전용 디스크에 저장한다.


* 최소 드라이브 개수 : 3 

* 최대 용량 : (디스크의 수 - 1) x 각 디스크의 용량


장점 1) 1개의 디스크까지 고장을 허용한다.

       2) 순차적 쓰기 성능과 읽기 성능 우수하다.


단점 1) 패리티 디스크 손상 시 복구가 불가능하다.


※. 정보 전달 과정에서 발생한 오류가 있는지 없는지 검출하기 위해 사용되는게 패리트 비트이다.



5. RAID 4


데이터가 Block 단위로 쪼개져 디스크에 불균등하게 저장되고, 패리티 정보는 별도 전용 디스크에 저장한다.


* 최소 드라이브 개수 : 3

* 최대 용량 : (디스크의 수 - 1) x 디스크의 용량


장점 1) 1개의 디스크까지 고장을 허용한다.

       2) 읽기 성능 우수하다.


단점 1) 쓰기 성능 나쁘다.


※. RAID 2, 3, 4는 현재 거의 사용되지 않는다. 또한 Byte와 Block의 차이점은 한 번에 데이터를 처리할 수 있는 크기가 다르다는 뜻이다. 즉, Byte보단 Block 단위로 데이터를 처리하는 것이 한 번에 더 많은 양의 데이터를 처리할 수 있기에 3보단 4가 더 좋다고 볼 수 있다.



6. RAID 5


데이터가 Block 단위로 쪼개져 디스크에 대체로 균등하게 저장되고, 패리티 정보도 모든 디스크에 나뉘어 저장된다. 

(별도 패리티 디스크 존재 X)


* 최소 드라이브 개수 : 3

* 최대 용량 : (디스크의 수 - 1) x 디스크의 용량


장점 1) 1개의 디스크까지 고장을 허용한다.

       2) RAID 3, 4의 단점인 병목 현상과 패리티 디스크 고장으로 인해 발생하는 복구의 어려움을 해결한 형태다.

       3) 성능 면에서는 RAID 0보다 떨어지지만 성능, 안정성, 용량 세 부분을 고려한 형태라고 볼 수 있다.


단점 1) 패리티를 끊임없이 갱신해야 한다.

       2) 디스크 재구성이 느리다.



7. RAID 6 


RAID 5와 전부 똑같으며, 다른 점은 추가적으로 2차 패리티가 각 디스크에 저장된다.


* 최소 드라이브 개수 : 3

* 최대 용량 : (디스크의 수 - 2) x 디스크의 용량


장점 1) 2차 패리티 존재로 인해 2개의 디스크까지 고장을 허용한다.

       2) 읽기 성능 우수하다.


단점 1) 많은 패리티를 여러 번 갱신해야 하기 때문에 쓰기 성능은 RAID 5보다 더 나쁘다.



8. RAID 0+1


스트라이핑(RAID 0) 후 -> 미러링(RAID 1)으로 구성한다.


* 최소 드라이브 개수 : 4

* 최대 용량 : 디스크의 수 / (RAID 0로 묶는 디스크 개수) X 디스크의 용량


장점 1) RAID 0의 속도 + RAID 1의 안정성을 갖췄다.

       2) 기술적으로 단순하다.


단점 1) RAID 1+0에 비해 안정성이 떨어진다.

       2) 복구 시간 오래 걸린다.



9. RAID 1+0


미러링(RAID 1) 후 -> 스트라이핑(RAID 0)으로 구성한다.


* 최소 드라이브 개수 : 4

* 최대 용량 : 디스크의 수 / (RAID 1로 묶는 디스크 개수) X 디스크의 용량


장점 1) RAID 0의 속도 + RAID 1의 안정성을 갖췄다.

       2) RAID 0+1에 비해 디스크 장애 발생시 복구 수월하다.


단점 1) 기술적으로 복잡하다.


※. 0+1보다 1+0이 더 많이 사용된다고 알고 있다.


RAID 0+1과 RAID 1+0의 차이

(왼쪽에서부터 순서대로 HDD1 HDD2 ... HDD6)


1. 안정성의 차이

RAID 0+1의 경우에는 만약 HDD1이 고장 났을 때, HDD 1,2,3이 사용할 수 없게 된다.

하지만 RAID 1+0의 경우에는 HDD1이 고장 나도 HDD2만 사용 못 할 뿐이다.


2. 복구에 걸리는 시간의 차이

RAID 0+1의 경우에는 만약 HDD1이 고장 났을 때, HDD 4,5,6의 내용을 HDD 1,2,3에 통째로 붙여 넣어야 하기 때문에 REBUILD 시간이 오래 걸린다.

하지만 RAID 1+0의 경우에는 HDD1이 고장나도 HDD2의 내용만 붙여넣으면 되기 때문에 REBUILD 시간이 RAID 0+1에 비해 덜 걸린다.




제 주관적인 지식을 통해 작성된 글이며, 틀린 부분이 있다면 의견을 달아주세요.


반응형

댓글

Designed by JB FACTORY