/var/log/messages
RAID란 본문
Redundant Arrays of Inexpensive Disks 약자입니다.
즉, 디스크들을 묶어준다고 생각하면 되겠습니다.
자주 사용하는 RAID 버전만 적었습니다.
RAID 0 | |
데이터를 여러 개의 디스크에 분산 저장하는 방식으로, 여러 개의 디스크를 묶어서 하나의 큰 디스크처럼 사용하는 방식입니다. 빠른 입출력 속도가 필요한 경우, 예를 들어, 대용량 파일을 자주 읽고 쓰는 작업이 필요한 서버나 워크스테이션에 적합합니다. 하지만, 데이터 손실 발생 시 데이터를 복구할 수 없기 때문에 백업이나 데이터 복제 등을 철저하게 해야 합니다. |
|
장점 데이터를 나누어 저장하기 때문에 전체적인 입출력 성능이 향상됩니다. 용량을 최대한 활용할 수 있습니다. |
|
단점 하나의 디스크가 문제가 생기면 데이터를 전부 잃을 수 있습니다. 내구성이 낮습니다. |
RAID 1 | |
미러링이라는 방식을 사용하여 데이터를 저장합니다. 예를 들어, 데이터 중요도가 높은 서버나 데이터베이스 시스템, 워크스테이션 같은, 안정적인 데이터 저장이 필요한 경우 사용합니다. 2개의 하드 디스크 중 작은 디스크의 용량만 사용합니다. df -h 를 입력 했을 때 작은 디스크의 용량이 표시됩니다. |
|
장점 미러링 기술을 사용하기 때문에 데이터의 안전성이 높습니다. 데이터 복구가 용이합니다 |
|
단점 RAID 0에 비해 용량을 절반만 활용할 수 있습니다. RAID 5, 6, 10에 비해 입출력 성능이 떨어집니다. |
RAID 5 | |
데이터를 다수의 디스크에 나누어 저장하고, 각각의 디스크에 패리티 정보를 추가하여 데이터의 안정성을 높이는 방식입니다. 최소 3개의 디스크가 필요하며, 디스크 하나가 손상되어도 데이터를 복구할 수 있는 장점이 있다. 하나의 하드 디스크는 패리티 데이터를 저장합니다. 파일 서버나 웹 서버 같이 빠른 입출력 속도와 안전성이 모두 필요한 경우에 적합합니다. |
|
장점 하나의 디스크가 문제가 생기더라도 데이터를 복구할 수 있습니다. RAID 1에 비해 용량을 효율적으로 활용할 수 있습니다. |
|
단점 복구 작업 중에는 입출력 성능이 저하됩니다. 여러 디스크에서 데이터를 복구하다가 다른 디스크가 문제가 생길 경우 데이터를 잃을 수 있습니다. |
RAID 6 | |
패리티 정보를 두 개 추가하여 데이터 안정성을 더욱 높인 방식입니다. 최소 4개의 디스크가 필요합니다. 디스크 두 개가 손상되어도 데이터를 복구할 수 있는 장점이 있습니다. 일반적으로 RAID 6은 모든 디스크의 용량이 동일해야 합니다. 패리티 디스크는 디스크 용량 중 일부를 차지하기 때문에, 디스크 크기가 서로 다르면 패리티 디스크가 가장 작은 용량의 디스크에 맞추어지게 됩니다. 이렇게 되면 예비 공간이 부족해지고, RAID 6의 장점인 데이터 보호성이 약화될 수 있습니다. 그러나 디스크 용량이 서로 다른 경우에는 각 디스크들 중 가장 작은 디스크의 용량으로 사용하게 됩니다. 예를 들어, 3TB, 2TB, 2TB 디스크를 RAID 6으로 구성하려는 경우, 모든 디스크에서 2TB 용량을 사용하게 됩니다. 그러나 디스크 용량이 다른 경우에는 RAID 5와 같은 다른 RAID 레벨을 고려할 수도 있습니다. RAID 5보다 안정성이 더 필요한 경우. 대용량 파일을 처리하는 서버나 데이터베이스 시스템, 영상 편집 등에 적합합니다. |
|
장점 두 개의 패리티를 사용하기 때문에 두 개의 디스크에 문제가 생겨도 데이터를 복구할 수 있습니다. RAID 5에 비해 안전성이 높습니다. |
|
단점 복구 작업 중에는 입출력 성능이 저하됩니다. RAID 5에 비해 용량을 효율적으로 활용하지 못합니다. |
RAID 5와 RAID 6에서 패리티 디스크는 동적으로 할당이 됩니다. 그러면, 정적으로 할당할 수는 없는 겁니까? |
일반적으로 RAID 5와 RAID 6에서 패리티 디스크는 동적으로 할당됩니다. 즉, 디스크가 추가되거나 삭제되면 시스템이 자동으로 패리티 디스크를 재할당합니다. 이것은 시스템의 유연성을 높이고, 디스크의 고장이나 교체 등 상황에서도 안정적인 데이터 보호를 유지하기 위함입니다. 그러나 일부 RAID 컨트롤러는 패리티 디스크를 수동으로 할당하는 기능을 제공할 수도 있습니다. 이 경우, 시스템 관리자는 패리티 디스크를 직접 선택하고 구성할 수 있습니다. 그러나 이러한 방법은 유연성이 떨어지고, 디스크 구성이 변경되는 경우에도 수동으로 재구성해야 하는 등의 단점이 있을 수 있습니다. |
RAID 10 | |
RAID 1과 RAID 0을 결합한 방식으로, 데이터를 미러링하면서도 스트라이핑을 사용하여 높은 성능을 제공하는 방식입니다. 단, 디스크의 절반 이상이 손상되면 데이터를 복구할 수 없습니다 대용량 파일을 처리 하는 서버나 데이터베이스 시스템, 웹 서버 같이 빠른 입출력 속도와 안정성이 모두 필요한 경우에 적합합니다. 하드디스크가 두 개씩 묶여서 미러링되므로 안정성이 높고 입출력 속도도 빠릅니다. |
|
장점 RAID 1과 RAID 0을 결합한 구조로 안전성과 입출력 성능이 뛰어납니다. 디스크의 절반만 사용하지만 안전성이 높아 데이터를 손실하지 않을 가능성이 높습니다. |
|
단점 디스크를 많이 사용하기 때문에 비용이 높아집니다. RAID 5, 6에 비해 용량을 효율적으로 활용하지 못합니다. |
여기까지 읽어보면
RAID 0, 1은 디스크 2개
RAID 5는 디스크가 3개
RAID 6, 10은 디스크가 4개
이때 부터 사용할 수 있다는 걸 알 수 있습니다. 0과 1, 그리고 5는 확실한 특징이 있어서 선택을 쉽게 할 수 있지만,
6과 10을 선택하는데는 더 많은 정보가 필요합니다.
RAID 디스크 용량 산출 공식
RAID 0: 모든 HDD 크기 합계
RAID 1: 최소 HDD 크기, 디스크가 2개 일 때
RAID 5: N-1 * 최소 HDD 크기, 디스크가 3개 일 때
RAID 6: N-2 * 최소 HDD 크기, 디스크가 4개 일 때
RAID 10: (최소 디스크 용량 x (디스크 그룹 수 / 2)) x 2, 디스크가 4개 이상부터 짝수
(4, 6, 8, 10개의 디스크가 있을때 사용 가능)
RAID 보호 영역 계산하는 공식
RAID 1: 보호 영역은 가장 작은 드라이브 용량과 같습니다.
RAID 5: 보호 영역은 가장 작은 드라이브 용량과 같습니다.
RAID 6: 보호 영역은 가장 작은 드라이브 용량의 2배와 같습니다.
RAID 10은 2가지의 경우로 나뉘어진다.
모든 디스크의 용량이 똑같을 때 | ( 디스크의 개수 / 2 ) * 디스크 용량 |
그러지 않을 때 | 1. 가장 작은 디스크 용량을 기준으로 RAID 1 세트를 만듭니다. 2. 나머지 디스크 용량 중 가장 작은 용량을 선택합니다. 이 용량이 n이라고 가정합니다. 3. RAID 1 세트의 수를 m이라고 합니다. m = 총 디스크 수 / 2 (소수점 이하 절삭) 4. 보호 영역 크기는 n x (m-1) 입니다 |
RAID 사용하지 않은 공간( 예비 공간 ) 권장 정도
RAID 0: 사용하지 않은 공간이 필요하지 않습니다.
RAID 1: 최소 50%의 사용하지 않은 공간이 필요합니다.
RAID 5: 최소 1개의 디스크 용량이 사용하지 않은 공간으로 예약되어야 합니다.
RAID 6: 최소 2개의 디스크 용량이 사용하지 않은 공간으로 예약되어야 합니다.
RAID 10: 최소 50%의 사용하지 않은 공간이 필요합니다.
예시로 확인해보 합니다.
예시는 이 링크에서 만들었습니다. https://www.synology.com/ko-kr/support/RAID_calculator?hdds=2%20TB |2%20TB|2%20TB|2%20TB
디스크가 4개일 때 | |
용량이 똑같을 때 | |
용량이 다를 때 | |
설명 | 딱히 RAID 용량 산출, 보호 영역 공식의 차이를 체감하기에는 어려운 상황입니다. 그러나 용량이 똑같으면 예비공간이 없으니, 이런 상황에서는 다른 구조를 제시해 봐야 합니다. 두번째 경우는 RAID 10에서 예비 용량이 과하다. 권장량이 최소 50%인데, 250%를 줬으니 말입니다. |
디스크가 6개일 때 | |
용량이 똑같을 때 | |
용량이 다를 때 | |
설명 | 이제 용량의 차이를 확인할 수 있습니다. 그러나 마찬가지로 용량이 똑같을 때 예비공간이 없으니 이런 경우도 실제에서는 사용하면 안 되는 상황입다. |
용량의 측면에서 봤을 때는 둘의 차이가 있다는 것을 알 수 있을 것입니다.
그럼 이제 기능적인 측면에서 확인해보자 합니다.
디스크 용량이 같을 때 | |
데이터 보호 | RAID 6가 더 안전합니다. RAID 6는 2개의 패리티 디스크를 사용하기 때문에 2개의 디스크 동시 고장이 발생해도 데이터가 유지됩니다. 반면, RAID 10은 1개의 디스크 동시 고장만을 허용하므로 RAID 6보다 데이터 보호 수준이 낮습니다. |
공간 효율성 | RAID 6가 더 효율적입니다. RAID 6는 2개의 패리티 디스크를 사용하므로 공간 활용도가 더 높습니다. 반면, RAID 10은 미러링 구조를 사용하기 때문에 2배의 디스크 용량이 필요합니다. 예를 들면, 디스크가 8개인 상태면 RAID 6의 백업 디스크는 2개이고 RAID 10이면 백업 디스크는 4개이다. |
사용 용도 | RAID 6은 대용량 데이터의 저장이 필요한 서버나 스토리지 시스템에서 더 적합합니다. RAID 10은 빠른 입출력 성능이 필요한 서버나 데이터베이스와 같은 응용 프로그램에 적합합니다. ========================================================================================== 1GB 크기를 쓰기 작업을 할 때 RAID 10 구조에서 저장이 되는 과정을 설명해보자 합니다. 4개의 디스크가 있고 RAID 10이라면 1GB 데이터는 4개의 256MB 데이터 블록으로 분할되어 저장됩니다. 복제된 데이터 블록은 미러링 그룹에서 서로 다른 디스크에 저장됩니다. 이는 데이터의 안정성을 높이기 위한 것입니다. 이때 데이터 블록은 순서대로 저장되는 것이 아니라, 블록 내의 각각의 바이트를 번갈아가며 저장됩니다. 이를 '인터리브(interleave)'라고 합니다. 예를 들어 1GB 데이터를 4개의 256MB 블록으로 나눌 경우, 첫번째 블록의 첫 번째 바이트는 첫 번째 디스크에, 두 번째 바이트는 두 번째 디스크에, 세 번째 바이트는 세번째 디스크에, 네 번째 바이트는 네 번째 디스크에 저장됩니다. 이후 두 번째 블록의 첫 번째 바이트는 다시 첫번째 디스크에,두 번째 바이트는 두 번째 디스크에, 세 번째 바이트는 세 번째 디스크에, 네번째 바이트는 네번째 디스크에 저장되는 식으로 데이터가 저장됩니다. *********************************************************************************************************** 인터리브를 사용하여 4바이트 크기의 데이터를 저장할 때, 16바이트 블록이 있다면 이를 4개의 4바이트 데이터로 분할하여 차례대로 저장합니다. 그러면 첫 번째 데이터는 0, 4, 8, 12번지에 저장되고, 두번째 데이터는 1, 5, 9, 13번지에 저장되는 식입니다. 이렇게 나누어 저장하면 데이터에 더 빠르게 접근할 수 있으며, 인터리브된 데이터를 가져올 때에도 더 빠른 속도로 읽을 수 있습니다. *********************************************************************************************************** 이렇게 스트라이핑 되는 과정에서 I/O 작업이 병렬적으로 처리되어 더 빠른 속도로 데이터가 저장됩니다. 따라서 RAID 10은 다른 RAID 구성에 비해 더 높은 I/O 처리 속도를 보장할 수 있습니다. RAID 6은 2개의 패리티 디스크를 사용하므로, 모든 디스크에 대한 작업이 직렬로 수행됩니다. 이는 불필요한 I/O 지연을 발생시키고, 전체 시스템 성능에 영향을 미칠 수 있습니다. ========================================================================================== |
디스크 용량이 다를 때 | |
데이터 보호 | RAID 6가 더 안전합니다. 디스크 용량이 다르면 RAID 10은 남는 디스크 공간이 생기는데, 이 때문에 디스크 용량이 작은 디스크가 고장나면 미러링 구조에서 사용할 수 없는 공간이 생깁니다. 하지만 RAID 6는 모든 디스크를 동등하게 사용하기 때문에 고장 난 디스크와 관계없이 모든 데이터를 보호 할 수 있습니다. |
공간 효율성 | RAID 6가 더 효율적입니다. 디스크 용량이 다르면 RAID 10에서도 미러링 구조를 사용하기 때문에 RAID 6과 마찬가지로 남는 디스크 공간이 생깁니다. 반면, RAID 6는 모든 디스크를 동등하게 사용하기 때문에 공간 활용도가 더 높습니다. |
사용 용도 | RAID 6은 대용량 데이터의 저장이 필요한 서버나 스토리지 시스템에서 더 적합합니다. RAID 10은 빠른 입출력 성능이 필요한 서버나 데이터베이스와 같은 응용 프로그램에 적합합니다. |
'SUSE' 카테고리의 다른 글
SUSE Linux로 DNS 서버 구축하기 (0) | 2023.07.07 |
---|---|
서버의 재부팅 후 점검하기 (0) | 2023.05.28 |
os를 설치 후, yast로 LVM 적용하기 (0) | 2023.04.01 |
yast로 본딩 하기 (0) | 2023.03.24 |
X.509란? (0) | 2023.03.13 |