티스토리 뷰

반응형

NAS 을 선택하려면 아직도 고려해야할 것이 더 있습니다. 언제쯤 끝이 날까 싶지만, 사실 이게 거의 마지막이라고 봐도 무방합니다. NAS 를 운영하기 위해서는 결국 NAS 로 사용할 기기가 필요한데, 제조사 등에 따라서 가격도 천차만별이겠지만, 가장 큰 비용 차이가 발생하는건 NAS 기기에 몇 개의 디스크(Disk)을 설치할 수 있느냐에 따라 비용 차이가 어마어마하게 달라집니다. 심지어 많은 디스크를 운영하기 위해 NAS 전문 제조사의 제품을 구입하지 않고 직접 서버(Server)를 조립하여 운영하는 경우도 많아집니다.

 

그렇다면, 서버에 많은 디스크를 장착할 수 있다는 것은 무엇을 의미할까요?

우리가 흔히 윈도우즈(Windows 10 등)에서 하드디스크(HDD)를 연결하면 C 드라이브, D 드라이브, ... 과 같이 각각 하나의 장치처럼 인식합니다. 보통 서버에서도 이런 식으로 단일 디스크를 하나씩 각각 운영하는 경우도 있습니다. 조금 특이하게 JBOD 라는 기술을 이용해 디스크를 직렬로 쭉 연결한 것 처럼 하여 하나의 디스크처럼 인식하여 사용할 수 있게 하는 기술도 존재합니다. 하지만, 대부분 2 개 이상의 디스크를 이용할 경우 RAID(Redundant Array of Independent Disks 혹은 Redundant Array of Inexpensive Disks) 라는 기술을 이용합니다. 위키피디아에서도 간략하게나마 RAID 에 대한 설명을 하고 있습니다.

https://ko.wikipedia.org/wiki/RAID

 

RAID - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 복수 배열 독립 디스크(Redundant Array of Independent Disks 혹은 Redundant Array of Inexpensive Disks)는 여러 개의 하드 디스크에 일부 중복된 데이터를 나눠서 저장하는 기술이다. 디스크 어레이(disk array)라고도 한다. 데이터를 나누는 다양한 방법이 존재하며, 이 방법들을 레벨이라 하는데, 레벨에 따라 저장장치의 신뢰성을 높이거나 전체적인 성능을 향상시키는

ko.wikipedia.org

해당 문서에 나와있는 표준 레이드 레벨 중 일반적인 NAS 에서 제공하는 기술은 보통 RAID 0, RAID 1, RAID 5, RAID 6, RAID 0+1 정도입니다. 기술적인 정보도 중요하겠지만, NAS 를 구입하려고 할 때 몇 개의 디스크를 탑재할 수 있는 장비가 필요한지는 필요한 RAID 레벨에 따라 고려하면 되기 때문에 먼저 결론부터 말씀드리겠습니다. 물론 이런 RAID 없이 그냥 디스크 한 개만 장착할 수 있는 장비로도 NAS 구성에는 아무런 문제가 없지만, RAID 기술의 대부분이 디스크 장애 발생에 대비한 것이 크기 때문에 RAID 는 반드시 고려하는 것이 좋습니다.

 

RAID 0 와 RAID 1 은 모두 두 개 이상의 디스크가 필요합니다. 그러므로 RAID 0 혹은 RAID 1 으로 구축하려면 디스크를 두 개 장착할 수 있는 장비를 구입하면 됩니다.

RAID 0 는 디스크의 성능을 최대한 높이기 위한 기술로 SSD 에서는 큰 의미가 없지만 NAS 구축 시에는 보통 HDD 을 이용하기 때문에 RAID 0 를 고려해야 할 수도 있습니다. 하지만, RAID 0 는 디스크가 1 개라도 장애가 발생하면 모든 데이터를 유실되기 때문에 절대 권해드리지 않습니다. 고가의 장비에서는 RAID 를 위한 별도의 장비(RAID Controller)를 설치하고 운영하는데, 이 경우 기본적으로 제공되는 소프트웨어 적인 RAID 보다 성능이 좋아진다기 보다는 안정성이 높아지는 것입니다. 그렇기 때문에 안정성을 위해 RAID Controller 을 장비하는 경우도 많지만, RAID 0 는 기본적으로 RAID 풀림(RAID 로 구성한 디스크 묶음이 어떠한 이유로 인해 정상 동작하지 않는 경우)으로 인해 디스크가 아예 사용 불능에 빠질 수 있습니다. 상당수의 경우 다시 RAID 0 로 다시 묶어주면 인식이 잘 되는 편이지만, 재수가 없으면 복구가 불가능하여 모든 데이터가 사라질 수 있습니다. 다만 디스크의 갯수만큼 총 저장량이 늘어나기 때문에 최대한의 용량을 확보해야 할 경우 사용할 수 있습니다.

RAID 1 은 모든 디스크를 모두 동일한 내용으로 복제(mirror)하는 방식입니다. 디스크를 여러 개 장착해도 모두 동일한 내용으로 복제가 되기 때문에 하나의 디스크만 남아있다면 데이터는 원본 그대로 유지할 수 있습니다. 그래서 보통 NAS 에 디스크를 두 개 장착할 수 있다면 RAID 0 가 아닌 RAID 1 을 추천합니다. 단점은 역시나 디스크 용량을 모두 사용할 수 없고 1 개의 용량만큼만 사용할 수 있다는 것입니다.

보통 많이 구입하는 Synology 의 2 Bay(디스크 장착하는 곳이 2개인 것을 의미) 제품들로 구입했다면 RAID 1을 추천합니다. 용량 대비 가격이 비싸지긴 하지만 하나의 HDD 에 10 테라바이트(TB) 이상의 제품도 존재하기 때문에 가정에서 이용하는데 큰 문제는 없을 것입니다.

 

RAID 5 와 RAID 6 는 각각 세 개와 네 개 이상의 디스크가 필요합니다. 이는 패리티 비트라고 하는 정보를 1 개(RAID 5) 혹은 2 개(RAID 6)로 분산하는 기술을 의미하고, 기술적인 방법은 동일합니다. 컴퓨터는 현재 모든 정보를 0 혹은 1 의 값(2진수)로 저장하는데, 이러한 성질을 이용해 패리티 비트라는 오류 검출 및 데이터 보정 정보를 추가로 저장할 수 있는 것입니다.

RAID 5 기준으로 설명하자면 세 개의 디스크를 각각 A, B, C 라고 하고 저장할 데이터를 101101 이라고 가정하겠습니다. 그럼 첫번째 데이터 1 이 A 에 저장되면 B 는 아직 저장된 것이 없기 때문에 아직 0 의 데이터를 저장하고 있는 상태입니다(컴퓨터는 값이 없을 경우 보통 0 으로 채워져있습니다). 그러면 C 는 A 의 1 와 B 의 0 을 이용하여 패리티 비트를 C 에 저장합니다. 보통 패리티 비트는 짝수로 저장하는데, 1 와 0 을 합하면 1 이므로 홀수입니다. 그래서 이를 짝수로 만들기 위해서는 C 가 1 을 가지고 있어야 짝수가 됩니다. 그래서 첫 데이터가 저장되면 A, B, C 에는 각각 1, 0, 1 의 값을 가지게 됩니다. 다음 데이터인 0 이 저장되면 B 에 0 이 저장되고 마찬가지로 1, 0, 1 의 데이터를 가지고 됩니다.

A B C
1 0 1

세번째 데이터가 저장될 때에는 다시 A 부터 저장하지 않습니다. 패리티 비트의 위치를 순차적으로 다른 디스크로 이동시키는 것입니다. 그래서 이번에는 패리티 비트를 A 에 저장하게 됩니다. 그래서 B 에 1 이라는 데이터를 저장합니다. 그러면 C 에는 아직 값이 없기 때문에 0 이 저장이 되고 결과적으로 A 에 저장되는 패리티 비트는 1 이 됩니다. 1, 1, 0 이 되는 것이죠. 네번째 데이터는 C 에 1 이 저장이 되기 때문에 0, 1, 1 이 됩니다.

A B C
1 0 1
0 1 1

이런 식으로 다섯번째와 여섯번째 데이터를 C 와 A 에 각각 0 와 1 을 저장하면 최종적으로 1, 1, 0 이 저장됨을 알 수 있습니다.

A B C
1 0 1
0 1 1
1 1 0

이렇게 저장되면 결과적으로 디스크 전체의 용량을 다 사용할 수 없고 1 개의 디스크 용량만큼은 패리티 비트 저장에 사용되어야 하기 때문에 낭비가 됩니다. 속도 역시 디스크를 하나만 이용했을 때 비해서도 조금 느려지게 됩니다. 하지만, 이 상태에서 B 디스크가 장애가 발생하여 사용이 불가능해졌다고 가정해보겠습니다.

A X C
1 X 1
0 X 1
1 X 0

그럼 A 와 C 만 이용해서 원래의 데이터 내용을 알 수 있을까요? 네! 이것이 가능하기 때문에 RAID 5 을 쓰는 것이고, 사실 RAID 5 와 6 가 RAID 의 꽃이라고 불리는 이유입니다.

첫번째 데이터는 A 에서 1 을 읽어올 수 있습니다. 두번째 데이터는 B 가 장애가 발생하여 읽어올 수 없는 상태인데, A 와 C 을 합하면 짝수이기 때문에 B 는 짝수를 유지하기 위해 0 이었음을 알아낼 수 있습니다. 그래서 두번째 데이터는 0 입니다. 세번째 역시 B 가 장애이지만 A 와 C 을 이용해서 1 이라는 것을 알 수 있습니다. 이렇게 하나의 디스크를 패리티 비트로 이용하게 되면 디스크 장애시에도 데이터를 잃어버리지 않고 읽을 수 있다는 걸 알 수 있습니다. B 디스크를 수리하거나 새 디스크를 새로 구입하여 장착을 한 다음 디스크를 RAID 로 다시 묶으면 위와 같이 원래의 데이터를 계산할 수 있기 때문에 다시 원래처럼 복구가 가능해집니다. 즉, RAID 5 는 하나의 디스크 장애에 대응이 가능한 방식입니다.

RAID 6 는 여기에 하나의 패리티 비트를 추가적으로 저장하는 방식입니다. 그렇기 때문에 2 개의 디스크 용량만큼 패리티 비트가 저장되기 때문에 최소 4 개의 디스크가 필요하고 디스크 수가 늘어나도 용량은 2 개만큼 사용할 수 없습니다.

다만, RAID 5 와 RAID 6 사용 중 디스크가 장애가 발생하면 새로운 디스크로 교체해줘야 하는데, 그 때 새로운 디스크에 데이터를 새로 써넣는데 아주 오랜 시간이 소요됩니다. 그래서 RAID 5 의 경우 디스크에 새로 써넣는 도중 다른 디스크가 추가로 장애가 발생할 경우 모든 데이터가 유실될 수 있습니다. 이런 확률이 RAID 5 에서는 전문 서버 운영사에서 2년 내 약 10% 이내에서 발생한다고 보고되고 있고, RAID 6 에서는 1% 미만이라고 합니다. 그래서 회사에서 운영할 때에는 가급적 RAID 6 을 권합니다.

 

마지막으로 RAID 0+1 은 네 개 이상의 짝수 수량의 디스크가 필요합니다. 원리는 간단한데, 2 개 이상의 디스크를 RAID 0 로 구성한 뒤 이 구성을 그대로 RAID 1 형태로 복제(Mirror)하는 형태입니다.

 

이러한 RAID 을 구성할 때에는 각 디스크는 모든 디스크 중 가장 용량이 적은 디스크의 크기만을 사용할 수 있습니다. 남는 공간은 따로 파티션을 나누어서 사용도 가능하지만, 속도 동기화 문제 등이 존재하기 때문에 RAID 을 구성할 때에는 동일한 모델(스펙, 성능이 동일한)의 제품을 사용하는 것을 가장 추천합니다.

 

이렇듯, 가정에서 NAS 을 구성하더라도 데이터의 성질(언제든 다시 구할 수 있는 데이터냐 아니냐)에 따라 RAID 을 다른 방식으로 구성하는 것을 고려해야 합니다. 물리적으로 가장 저렴한 2 Bay NAS 을 구입하여 RAID 1 을 구성하는 것이 가장 간단하나, 데이터의 용량은 개인마다 다르기 때문에 4 Bay 이상의 제품을 구입하여 RAID 0+1 혹은 RAID 5 을 구성하는 것도 고려할 수 있습니다. 저는 개인적으로 RAID 5 로 구성하여 사용중인데, 아직까지 디스크 장애가 심하게 난 적은 없지만, 경우에 따라 디스크가 2 개가 연달아 장애가 발생할 수도 있기 때문에 SOHO 사무실 등에서는 RAID 6 도 적극 고려하길 바랍니다.

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함