2025. 6. 22. 18:11ㆍ리눅스
RAID란 여러개의 디스크를 하나의 디스크처럼 사용하는 방식이다.
1. 하드웨어 RAID
하드웨어 RAID 하드웨어 제조업체에서 여러 개의 디스크를 연결해 공금하면 장비이다. 하드웨어 RAID는 조금 더 안정적이고 각 제조업체에서 기술 지원을 받을 수 있기에 많이 선호하는 RAID 방식이다.
2. 소프트웨어 RAID
소프트웨어 RAID는 운영체제에서 지원하는 방식으로 여러 개의 디스크를 RAID로 구성하는 방법을 말한다. 하드웨어 RAID에 비교하면 신뢰성이나 속도 등이 떨어지지만, 아주 저렴한 비용으로 조금 더 안전하게 데이터를 저장할 수 있다는 점에서 고려할 만 하다 .
RAID 방식
1. 단순 볼륨
디스크 하나를 볼륨하나로 사용하는 방법으로 RAID방식에는 포함되지 않는다. 새로운 디스크 하나를 추가하고 통째로 사용한다면 그것이 단순 볼륨이다.
2. Linear RAID 와 RAID 0
두 방식 모두 최소 2개의 디스크가 필요하다. 2개 이상의 디스크를 1개의 볼륨으로 사용한다는 점에서 서로 비슷한 방식으로 보인다. 하지만 가장 큰 차이점은 저장되는 방식에 있다. 즉 앞 디스크에 데이터가 완전히 저장되지 않는다면 다음 디스크를 전혀 사용되지 않는다. 이와 달리 RAID 0은 모든 디스크를 동시에 사용하는 방식이다. 3개의 디스크를 사용하는 경우를 단순화해 Linear RAID와 RAID 0의 저장방식은 아래와 같다.
Linear RAID는 첫 번째 디스크가 모두 채워진 후에 두 번재 디스크를 사용하는 방식이다. 이와 달리 RAID 0은 '안'은 첫번째에, '녕'은 두번째에, '하'는 세번째에 저장하는 방식으로 데이터를 모든 디스크에 동시에 저장한다. 여기서 '동시에'라는 말은 중요한 의미를 갖는다. '안녕하세요?우재남입니다'를 저장하는 시간이 한글자랑 1초라고 가정한다면 Linear RAID의 경우 저장하는데 총 12초의 시간이 소요된다. 하지만 RAID 0의 경우 동시에 디스크3개를 사용하므로 각 디스크에 4글자만 저장하면 된다. 즉 4초면 저장이 완료된다. 이렇게 여러 디스크에 동시에 저장되는 방식을 스트라이핑 방식이라고 한다. 100개의 디스크를 RAID 0 방식으로 구성하면 저장 속도는 거의 100배 빨라지지만 디스크 100개중 하나라도 고장나면 저장된데이터는 모두 없어지는 것과 같다.
RAID 0방식은 100TB 디스크 1개와 1TB 디스크 1개, 총 2개의 디스크로 구성했을때 사용할 수 있는 총 용량은 2TB밖에 되지 않는다. 저장 속도를 높이려고 언제나 데이터를 나눠서 각 디스크에 동시에 저장되도록 설계되었기 때문이다. 즉 작은 1TB 디스크가 꽉 차면 큰 쪽의 나머지 99TB는 사용할 수 없으므로 1TB 짜리 2개로 구성하는 것과 동일하다. 하지만 Linear RAID는 첫번째 디스크부터 순차적으로 데이터를 저장하기 때문에 총 용량이 101TB가 된다.
3. RAID 1
RAID 1의 핵심은 미러링 이라고 할수있다. 즉 똑같은 데이터의 거울을 만들어 놓는것이다.
RAID 1의 장점은 2개의 디스크중 하나가 고장 나더라도 데이터는 손상되지 않는다. 하지만 실제 계획하는 것보다 2배 더 큰 저장 공간이 필요하다. 즉 비용이 2배로 든다. 저장속도는 똑같은 데이터를 2번 저장하므로 2배의 시간이 걸리는 것이 아닌, 똑같은 데이터를 동시에 다른 디스크에 저장하는 것이므로 저장 속도는 빠르지도 느리지도 않다.
4. RAID 5
RAID 5는 최소한 3개 이상의 디스크가 있어야만 구성이 가능하고 대게 5개 이상의 디스크로 구성한다. 디스크에 오류가 발생하면 패리티를 이용해 데이터를 복구할 수 있다. '000 111 010 011' 이라는 12비트 데이터를 4개의 디스크로 구성된 RAID5에 저장한다고 가정하하면 아래와 같다.
짝수 페리티가 된다면 각 행이 짝수가 되도록 숫자를 채워야 하므로
4개의 디스크중에서 1개가 고장 나도 원래의 데이터를 추출할 수 있다.
RAID 1 + 0 저장 방식
RAID 1 + 0 방식을 사용하면 왼쪽 RAID 1과 오른쪽 RAID 1에서 각각 디스크가 1개씩 고장나도 데이터는 안전하므로 신뢰성 가지 얻을 수 있다.
'리눅스' 카테고리의 다른 글
bind /etc/named.conf (0) | 2025.07.06 |
---|---|
사용자별 quota (1) | 2025.06.29 |
디스크 추가 방법 (0) | 2025.06.22 |
Kernel compile (0) | 2025.06.21 |
root 비밀번호를 잃어버렸다면 ? (0) | 2025.06.21 |