2swan

RAID 본문

RAID

RAID

2swan 2024. 4. 25. 12:51

 

 

서버나 스토리지에 들어가는 하드디스크의 안 자성물질을 입힌 원판(플래터)이 회전하고, 그 위에 헤드가 움직이면서 작동한다. 이러한 물리적 움직임이 있는 하드디스크는 내구성이 존재하기 때문에 사용하다 보면 언젠가는 고장이 난다. 디스크가 깨졌다고도 표현한다. 물리적 움직임이 없는 SSD도 내구성이 존재하여 무한히 사용할 수 없다. 이러한 디스크 장애가 시스템의 중단으로 이어질 수 있어 RAID를 사용하여 가용성을 확보한다.

 

 

RAID ( Redundant Array of Independent Disk )

여러 개의 하드 디스크에 일부 중복된 데이터를 나눠서 저장하는 기술

중복된 데이터를 나눠서 저장하는 이유는 데이터를 안전하게 보호하기 위함에 있다.

성능, 공간 효율, 데이터 안전성 중에서 어느 것에 기준을 맞추냐에 따라 구성방법이 달라진다

 

RAID의 목적은 크게 세 가지로 본다

1. 여러 개의 디스크 모듈을 하나의 대용량 디스크처럼 사용할 수 있도록 하는 것

2. 여러 개의 디스크 모듈에 데이터를 나누어서 한꺼번에 쓰고 한꺼번에 읽는 식으로 입출력 속도를 높이는 것

3. 여러 개의 디스크를 모아서 하나의 디스크로 만들고 그 중 하나 혹은 그 이상의 디스크에 장애가 나더라도 최소한 데이터가 사라지는 것은 방지하자는 것

 

 

 

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

S/W
서버 세팅 후 RAID는 SW RAID. 즉, 설치된 운영체제 안에서 Partition 단위로 RAID를 구성하며, 여러 개의 디스크를 하나의 디스크처럼 보이게 한다. 물론 운영체제는 여러 개의 디스크로 인식한다.
H/W 구성에 비해 가격은 저렴하지만, 성능 향상 폭이 작고 안정성이 떨어진다.

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


H/W RAID (하드웨어 RAID)
전용 RAID 컨트롤러 카드 사용: H/W RAID는 RAID 컨트롤러 카드를 사용하여 RAID 구성을 관리합니다. 이 카드에는 자체적인 프로세서와 메모리가 내장되어 있어 RAID를 하드웨어적으로 처리합니다.
RAID 처리의 독립성: H/W RAID는 운영 체제와는 별개로 독립적으로 RAID 작업을 처리합니다. 즉, RAID 카드가 운영 체제와 관계없이 디스크 데이터를 RAID 수준에 맞게 관리합니다.
OS에 표시되는 형태: 운영 체제는 이 하드웨어 RAID를 단일 디스크처럼 인식하고, 하드웨어 RAID 컨트롤러가 RAID 처리와 관련된 모든 작업을 담당합니다.
성능과 안정성: H/W RAID는 RAID 처리와 관련된 작업을 하드웨어에서 독립적으로 수행하므로, 성능이 좋고 안정성이 높습니다. 또한, RAID 카드의 메모리와 CPU가 RAID 작업을 전담하기 때문에, 운영 체제의 자원에 부담을 주지 않습니다.

펌웨어 RAID (메인보드 RAID 또는 BIOS RAID)
메인보드의 RAID 기능 사용: 펌웨어 RAID는 메인보드 자체의 RAID 기능을 이용하여 RAID를 설정합니다. 메인보드의 펌웨어(즉, BIOS 또는 UEFI)에 RAID 설정이 내장되어 있습니다.
RAID 처리: 이 방식은 운영 체제나 하드웨어 RAID 카드의 도움 없이, 메인보드의 펌웨어가 RAID 작업을 처리합니다. 펌웨어 RAID는 운영 체제가 로드되기 전에 BIOS/UEFI에서 RAID 구성을 설정하며, 이를 통해 OS가 하드웨어 RAID처럼 디스크를 단일 디스크처럼 인식할 수 있도록 합니다.
성능과 제한 사항: 펌웨어 RAID는 하드웨어 RAID에 비해 성능과 안정성에서 다소 제한적일 수 있습니다. 메인보드의 펌웨어는 하드웨어 RAID 카드처럼 강력한 독립적인 프로세서를 갖추지 않기 때문에, RAID 작업에 대한 성능이 상대적으로 떨어질 수 있습니다.
운영 체제와 독립적: 펌웨어 RAID는 운영 체제와 무관하게 작동하지만, 운영 체제가 로드된 후에는 이 RAID 구성을 단일 디스크처럼 인식합니다. 그러나 메인보드를 변경하면 RAID 구성이 유효하지 않게 되므로, 메인보드 교체 시 RAID 구성을 재구성해야 할 수 있습니다.


항목 H/W RAID 펌웨어 RAID (BIOS/UEFI RAID)
구성 방식 전용 RAID 카드가 RAID를 관리 메인보드의 펌웨어(BIOS/UEFI)가 RAID를 관리
성능 성능 우수 (RAID 카드의 독립적 처리) 성능은 하드웨어 RAID보다 낮을 수 있음
독립성 하드웨어 RAID 카드 독립적 처리 펌웨어는 메인보드에 의존적
운영 체제 영향 운영 체제와 무관, OS가 단일 디스크로 인식 운영 체제와 무관하지만, 메인보드 교체 시 RAID가 유효하지 않을 수 있음
가격 상대적으로 비쌈 (전용 RAID 카드 필요) 상대적으로 저렴 (메인보드 기능으로 처리)
호환성 RAID 카드가 제공하는 기능에 따라 다양한 RAID 레벨 지원 제한된 RAID 레벨 지원, 주로 기본 RAID 수준 (예: RAID 1, 0)
장점 높은 성능, 안정성, 독립적인 관리 가격이 저렴하고 설정이 간편하다

 

 

 

RAID 0

  • 데이터의 빠른 입출력을 위해 데이터를 여러 디스크에 분할하여 저장하는 방식.
  • 데이터를 분할해야 하기 때문에 디스크는 최소 2개 이상이 필요하다 2개의 디스크를 사용하면 성능도 2배 ( 둘이 나눠서 4초가 걸리는 시간은 2초로 단축 )
  • 중요하지 않은 데이터를 저장할 때 사용한다.
  • 안정성이 떨어져서 권장하는 방식이 아니다.

*RAID 0에서는 가장 작은 드라이브의 용량을 기준으로 설정된다.

500GB 하드 두 개를 RAID 0로 묶으면 1TB 드라이브 하나가 생성되고, 디스크가 몇 개라도 관계 없다. 묶는 대로 용량은 증가한다. 단, 500GB, 1TB를 RAID 0으로 묶으면, 가장 작은 드라이브인 500GB에 맞춰 전체 용량이 1TB가 된다

(작은 용량 x 2)

 

장점 : 성능 좋다.

단점 : 특정 디스크에서 장애 발생 시 데이터는 모두 손실 되기에 가용성이 좋지 않다.

 

H/W RAID

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

전용 RAID 컨트롤러 카드 사용: H/W RAID는 RAID 컨트롤러 카드를 사용하여 RAID 구성을 관리합니다. 이 카드에는 자체적인 프로세서와 메모리가 내장되어 있어 RAID를 하드웨어적으로 처리합니다.
RAID 처리의 독립성: H/W RAID는 운영 체제와는 별개로 독립적으로 RAID 작업을 처리합니다. 즉, RAID 카드가 운영 체제와 관계없이 디스크 데이터를 RAID 수준에 맞게 관리합니다.
OS에 표시되는 형태: 운영 체제는 이 하드웨어 RAID를 단일 디스크처럼 인식하고, 하드웨어 RAID 컨트롤러가 RAID 처리와 관련된 모든 작업을 담당합니다.
성능과 안정성: H/W RAID는 RAID 처리와 관련된 작업을 하드웨어에서 독립적으로 수행하므로, 성능이 좋고 안정성이 높습니다. 또한, RAID 카드의 메모리와 CPU가 RAID 작업을 전담하기 때문에, 운영 체제의 자원에 부담을 주지 않습니다.

 

 

S/W RAID

서버 세팅 후 RAID는 SW RAID. 즉, 설치된 운영체제 안에서 Partition 단위로 RAID를 구성하며, 여러 개의 디스크를 하나의 디스크처럼 보이게 한다. 물론 운영체제는 여러 개의 디스크로 인식한다.
H/W 구성에 비해 가격은 저렴하지만, 성능 향상 폭이 작고 안정성이 떨어진다.

 

Firmware RAID(메인보드 RAID 또는 BIOS RAID)

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

메인보드의 RAID 기능 사용: 펌웨어 RAID는 메인보드 자체의 RAID 기능을 이용하여 RAID를 설정합니다. 메인보드의 펌웨어(즉, BIOS 또는 UEFI)에 RAID 설정이 내장되어 있습니다.
RAID 처리: 이 방식은 운영 체제나 하드웨어 RAID 카드의 도움 없이, 메인보드의 펌웨어가 RAID 작업을 처리합니다. 펌웨어 RAID는 운영 체제가 로드되기 전에 BIOS/UEFI에서 RAID 구성을 설정하며, 이를 통해 OS가 하드웨어 RAID처럼 디스크를 단일 디스크처럼 인식할 수 있도록 합니다.
성능과 제한 사항: 펌웨어 RAID는 하드웨어 RAID에 비해 성능과 안정성에서 다소 제한적일 수 있습니다. 메인보드의 펌웨어는 하드웨어 RAID 카드처럼 강력한 독립적인 프로세서를 갖추지 않기 때문에, RAID 작업에 대한 성능이 상대적으로 떨어질 수 있습니다.
운영 체제와 독립적: 펌웨어 RAID는 운영 체제와 무관하게 작동하지만, 운영 체제가 로드된 후에는 이 RAID 구성을 단일 디스크처럼 인식합니다. 그러나 메인보드를 변경하면 RAID 구성이 유효하지 않게 되므로, 메인보드 교체 시 RAID 구성을 재구성해야 할 수 있습니다.

 

 

 

 

RAID 1

  • 한 디스크에 기록되는 모든 데이터를 다른 디스크에 복사해 놓는 방법
  • 똑같이 복제한다는 것은 디스크를 여러 개 사용해도 디스크 1개의 용량 만큼만 사용할 수 있다는 뜻
  • 복제하는 시간이 추가되어 저장하는 성능이 낮아진다.
  • 하지만 읽는 속도는 모든 디스크에서 데이터를 불러올 수 있어 빠르다.
  • 디스크 4개 중 3개가 고장 나도 문제 없이 작동하고 데이터도 안전하다.
  • 최소 2개의 디스크로 구성할 수 있다 ( 디스크 장애를 대비하여 백업 용으로 다른 하나의 디스크를 동일하게 구성 )
  • 읽을 때는 조금 빠른 속도를 제공하지만 저장할 때는 속도가 약간 느려지기도 한다.
  • 두 개의 디스크에 데이터가 동일하게 기록
  •  물리적으로 하드가 고장이 나는경우는 다른 디스크에 데이터가 있어엇 살릴 수 있지만, 사용자가 지우거나 바이러스가 감염되는 논리적인 문제라면 동시에 두개의 디스크에 적용이 되어 데이터를 잃게 되어서 백업의 의미는 아니다 (물리적인 데이터는 살릴 수 있지만 논리적인 문제는 두 디스크 적용되니 데이터를 잃는다)

 

장점 : 읽기 속도가 빨라지고 가용성이 높다, 두개의 디스크에 데이터가 동일하게 기록되므로 데이터의 복구 능력은 높다

단점 : 전체 용량의 절반이 여분의 데이터를 기록하기 위해 사용되기 때문에 저장 용량 당 단가가 비싸다( 용량 낭비가 심하다 ), 쓰기 속도가 느려진다.

 

 

 

 

RAID 5 ( Parity across disks )

  • RAID 5는 Parity 정보를 모든 디스크에 나눠서 기록한다.
  • RAID 0처럼 데이터를 분할하여 디스크에  패리티(Parity)를 함께 저장한다.
  • 패리티는 하나의 디스크에 저장되는 것은 아니고 매번 다른 디스크에 저장한다.

 Parity ( 패리티 ) :

디스크 장애 시 데이터를 재 구축하는데 사용할 수 있는 사전에 계산된 값으로 디스크 4개 블록 중 3개는 데이터를 저장하는데 사용하고 나머지 한 부분은 Parity 영역으로 둔다.

문제가 발생할 경우, 컨트롤러가 정상적으로 운영되고 있는 다른 디스크로부터 손실 된 데이터를 가져와 복구 및 재생한다.

 

Parity를 담당하는 디스크가 병목 현상을 일으키지 않기 때문에 RAID 5는 Multi 프로세스 시스템과 같이 작은 데이터 기록이 수시로 발생할 경우 속도가 더 빠르다.

하지만 읽기 작업일 경우 각 드라이브에서 Parity 정보를 스킵하기 때문에  느릴 수 있다.

 

ex) 데이터 1,2,3,4 가 있는데  디스크 3번이 고장이 나서 데이터가 사라졌다고 가정하고 좀 전에 패리티 비트를 짝수로 맞춘 것처럼 계산하면 데이터를 복구할 수 있다. 하지만 디스크 2개가 고장나면 계산을 할 수 없기 때문에 복구할 수 없다.
RAID 5는 디스크 1개의 에러까지만 복구가 가능하며, 최소 3개의 디스크가 있어야 구성이 가능하다.

 

 

데이터를 분산 저장하여 읽기 성능은 좋아도 패리티 정보를 매번 다른 디스크에 저장하고 장애 시 분산된 패리티를 읽어야 하기 때문에 성능이 약간 저하될 수 있다. 물론 컨트롤러에 캐시를 달아 속도 저하를 최소화하기는 한다.
용량은 디스크 개수에 따라 67% ~ 94% 까지 사용 가능하며 비교적 용량 낭비가 적다

Disk는 최소 3개, 일반적으로 5개 이상 필요

 

장점 : 가용성 보통, 성능 보통

 

 

 

RAID 6 ( Striping with dual parity across disks ) 

  • 용량은 디스크 개수에 따라 50 ~ 88% 사용가능하여 용량 낭비가 낮은 편에 속한다.
  • 디스크가 최대 2개까지 장애가 나더라도 데이터의 손실이 발생하지 않는다.
  • RAID 5는 1개의 디스크 장애만 복원을 보장하지만 RAID 6은 2개의 디스크 장애까지 복원이 가능하다.
  • RAID 6는 N개의 디스크로 구성할 때 N-2 만큼의 공간을 사용할 수 있다.
  • Parity가 2개이다 보니 장애가 난 디스크와의 동기화가 RAID 5보다는 느리다
  • DISK는 최소 4개가 필요하다.

 

 

중첩 RAID (Nested)
지금까지의 표준 RAID 구성들을 다시 RAID로 묶어서 구현하는 방식을 말한다.

 

RAID 10

 

  • RAID 0의 빠른 속도와 RAID 1의 안정적인 복구 기능을 합쳐 놓은 방식으로 최소 4개의 디스크로 구성된다.
  • 데이터가 입력되면 Striping 방식으로 두 개 이상의 디스크에 나눠서 저장하며 동시에 같은 형태로 다른 하드디스크에도 동일하게 저장된다.
  • Mirroring으로 똑같은 디스크 복사본을 갖고 있기 때문에 장애가 발생했을 때도 완벽한 복구가 가능하다는 장점이 있고 전체 용량의 50%만 사용이 가능하다.
  • 데이터 안전성과 성능을 동시에 확보하는 방법으로 패리티는 사용하지 않는다.

높은 성능을 원한다 RAID 0
가용성을 중요하게 생각한다 RAID 1
성능과 가용성을 적정 수준으로 맞추고 싶다 RAID 5
5보다 가용성을 조금 더 높이고 싶다 RAID 6
비용은 들어도 성능과 가용성 둘 다 잡고자 한다 RAID 중첩방식인 10, 50, 60

 

 

JBOD (Just a Bunch of Drives, Spanning)

물리디스크 두 개 이상을 마치 하나의 디스크처럼 만드는 것, 스패닝(Spanning)이라고 한다

100GB, 100GB, 300GB의 저장장치를 연결하면 총 500GB 이루어진 하나의 저장장치처럼 사용 가능하다.

  • 여러 디스크 용량을 단순 어레이로 사용한다.
  • 모든 디스크는 용량이 같지 않아도 되고, 동시에 엑세스 되지 않는다.
  • 동시에 I/O가 발생하지 않기 때문에 성능에 도움은 되지 않는다.
  • 내결함성이 제공되지 않으며 단순 용량 사용 용도로 이루어진다.

 

 

 

패리티 (Parity)

패리티 데이터는 특정 RAID 레벨 내에서 내결함성을 제공하기 위해 생성되는 중복데이터며, 쉽게 말해 복구정보이다.

 

내결함성 (Fault Tolerance)

하드웨어와 소프트웨어에서 하나 이상의 구성 요소가 오작동, 실패하더라도 시스템이 중단 없이 실패를 허용, 응답하는 방식이다.

 

핫스왑(Hot Swap)

RAID 배열에서 하나 이상의 디스크를 교체할 수 있는 기능을 말한다. 이는 RAID 구성원 중 하나의 디스크가 고장난 경우, 시스템이 가동 중이어도 해당 디스크를 끼워넣고 교체할 수 있는 능력을 제공하며, 시스템의 가동 중지 없이 디스크를 교체할 수 있게 해준다.

 

핫 스페어 (Hot Spare)

핫스페어는 시스템에서 고장난 디스크를 대체하는 데 사용되는 여분의 디스크를 말한다.

주 데이터 디스크가 고장나면 자동으로 대체 디스크(핫 스페어)가 활성화되어 데이터 손실을 방지한다.

따라서 핫스페어는 예비 용량으로 유지되며, 주 디스크가 고장 날 때까지 사용되지 않는다.

요약하자면, 레이드 핫스왑은 디스크 교체 기능 자체를 의미하며, 핫스페어는 이런 디스크 교체 작업에서 사용되는 예비 디스크를 의미한다.

<같은 설명>

전체 구성에 1개 이상의 디스크를 Spare로 지정하여 대기(stand-by) 상태로 두고, 장애 시 리빌딩하여(rebuilding) 원래의 RAID 상태로 복구하는 용도로 사용된다. RAID Group을 여럿 지정하는 중대형 이상의 Storage 환경에서는 Global Spare라 하여 여러 Group이 공용으로 Hot Spare를 두기도 한다.

 

Rebuilding (리빌딩)

어레이를 복구하는 작업

 

I/O 리빌딩

I/O는 입력(Input)/출력(Output)의 약자로, 컴퓨터 및 주변장치에 대하여 데이터를 전송하는 프로그램, 운영 혹은 장치를 일컫는 말이다.

 

Partition (파티션)

하나의 물리적 디스크를 여러 가상 공간으로 나누어, 분할하여 사용하는 말

'RAID' 카테고리의 다른 글

Raid 계산기  (0) 2024.06.11