RAID란

·2025년 4월 7일

just공부

목록 보기
11/41

RAID란 ?

Redundant Array of Independent Disks
드라이브 장애 시 데이터를 보호하기 위해 여러 하드디스크나 SSD의 다른 위치에 동일한 데이터를 저장하는 방법.

  • 여러 드라이브에 데이터를 배치하고, Input/Output 작업이 균형 잡힌 방식으로 겹치게끔 하여 성능을 개선함

  • 여러 드라이브를 사용하면 실패했을 때 간의 평균 시간이 증가하게 되어, 데이터를 중복 저장하면 결함성도 증가

  • RAID의 배열은 OS에 단일 논리 드라이브로 나타남

  • Disk mirroring 이나 Disk Striping 기술을 사용

    • 미러링 : 동일한 데이터를 여러 드라이브에 복사
    • 스트라이핑 파티션 : 여러 드라이브에 데이터를 분산하는 데 도움

RAID 0

  • 스트라이핑
  • 최소 2개의 디스크 사용
  • 데이터 중복성 없음
    • 모든 디스크에 데이터를 분할하여 저장하기 때문
  • 최고 성능을 제공
  • 하나의 디스크에 문제가 생긴다면 전체 RAID가 깨지게 됨

RAID 1

  • 디스크 미러링
  • 데이터 저장소를 복제하는 최소 두 개의 드라이브로 구성
  • 모든 디스크에 데이터를 복제
  • 두 디스크를 동시에 읽을 수 있기 때문에 읽기 성능이 좋음
  • 쓰기 성능은 단일 디스크 저장소와 동일
  • 복구에 효과적임

RAID 2

  • bit 단위로 스트라이핑
  • 일부 드라이브는 error-correction code(ECC) 정보 제공
    • Hamming code parity 사용
  • 최소 3개의 디스크로 구성
  • 1개의 디스크 에러가 났을 때 복구 가능

RAID 3

  • byte 단위 스트라이핑
  • ECC 위해 parity 디스크 1개 사용
  • 최소 3개의 디스크로 구성

RAID 4

  • Block 단위의 스트라이핑
  • ECC를 위해 parity disk 1개 사용
  • 최소 3개 디스크로 구성 가능
  • 1개의 디스크 에러 시 복구 가능
  • 패리티 코드를 같은 디스크에 저장하기 떄문에 사용량이 높아져 디스크 수명이 줄어듬

RAID 5

  • RAID 4의 단점 보완
  • 가장 많이 사용하는 RAID level
  • Block 단위의 스트라이핑
  • ECC를 위해 패리티를 1개의 디스크에 저장
    • 매번 다른 디스크에 저장하게 됨 (고정X)
  • 최소 3개의 디스크로 구성
  • 1개 디스크 에러 시 복구 가능
  • RAID 0에서 안정성을 보완한 RAID level

RAID 6

  • RAID 5에서 성능과 용량을 줄이고, 안정성을 높인 RAID level
  • Block 단위의 스트라이핑
  • ECC를 위해 2개의 디스크에 패리티 저장
  • 매번 다른 디스크에 저장(고정X)
  • 최소 4개의 디스크로 구성
  • 2개의 디스크 에러 시 복구 가능

RAID 10

  • Nested RAID : Standard RAID를 여러 개 중첩하여 사용
  • RAID 1과 RAID 0을 결합한 것
  • 데이터 미러링이 되며, 미러링이 스트라이핑됨

RAID 01

  • stripe set을 만든 후, stripe set을 미러링 함

Software RAID vs Hardware RAID

  • 하드웨어 기반 RAID는 다양한 RAID 구성을 지원

  • 하드웨어 RAID 1 구성은 부팅 및 애플리케이션을 구동하는 디스크를 안정적으로 지원하는데 적합

  • 하드웨어 RAID 5는 대용량 스토리지 배열에 적합

  • 서버에 별도의 RAID controller를 설치해야 하며, 카드의 BIOS 또는 옵션 ROM을 통해 OS 부팅 전이나 후에 구성 가능

  • 소프트웨어 기반 RAID는 여러 OS에서 기본적으로 제공됨

  • 파일 시스템의 구성 요소

  • 여러 디바이스를 하나의 가상 디바이스처럼 추상화하는 계층으로서

  • 파일 시스템 위에 존재하는 추가 계층으로서 구현됨

  • Windows : 소프트웨어 기반 RAID 0, 1, 5 지원

  • macOS : 소프트웨어 기반 RAID 0, 1, 10 지원

RAID의 장점

  • 비용 효율성
    • 저렴한 드라이브를 여러 개 조합해 사용 가능해서, 대규모의 저장 장치를 경제적으로 구성 가능
  • 성능 향상
    • 여러 드라이브를 동시 사용하기 때문에 단일 드라이브보다 나은 읽기/쓰기 성능을 제공
  • 시스템 속도 및 안정성 향상
    • 시스템 충돌 이후 빠르게 복구가 가능하며, 신뢰성을 높일 수 있음
  • 파일 입출력 속도 향상
    • RAID 0의 경우, 파일 시스템이 여러 드라이브에 분산되어 저장되기 때문에 하나의 파일 작업을 여러 드라이브가 동시에 처리하게 되어 입출력 속도가 향상됨
  • 가용성과 복원력 증가
    • RAID 5와 같이 미러링(복제)를 사용하는 경우, 동일 데이터가 두 개의 데이터에 저장되기 때문에 고장이 나도 다른 드라이브로 복원이 가능함

RAID의 단점

  • Nested RAID(중첩 RAID)
    • 전통적인 RAID보다 많은 드라이브가 필요하기 때문에 구축 비용이 많이 듦
  • 기가바이트 당 비용 증가
    • 이중화 용도로 주로 사용되기 때문에 저장 공간 대비 비용 효율이 떨어짐
  • 복구 중 취약성
    • 고장난 드라이브를 교체하고 데이터를 재구성하는 동안 전체 RAID 배열은 위험
  • 복구 시간 증가
    • 오늘날 드라이브 용량이 크기 때문에, RAID rebuild에 걸리는 시간이 길어짐

RAID usecase

  • 대용량 데이터 복원 필요 시
    • 하나의 드라이브에 문제가 생겨도 다른 드라이브에 동일한 데이터가 저장되어 있어 빠르게 복구 가능
  • 업타임과 가용성이 중요한 환경
    • RAID를 통해 장애 발생 시에도 짧은 다운타임으로 데이터를 빠르게 복구 가능
  • 대용량 파일 작업 시
  • 하드웨어 부하 분산 및 성능 향상 필요 시
    • 하드웨어 RAID 카드의 경우, 캐시 메모리를 내장하고 있어 서버 자원을 아끼면서 입출력 성능을 개선 가능
  • 디스크 I/O 병목 문제 발생 시
    • RAID는 여러 드라이브에서 동시에 읽고 쓸 수 있어, I/O 처리량을 크게 늘릴 수 있음
  • 비용 절감이 중요한 경우
    • 과거보다 RAID 구축 비용이 낮아져, 저렴한 드라이브를 여러 개 활용 가능하기 때무에 경제적인 스토리지 솔루션 구성 가능

REFERENCE
https://devocean.sk.com/blog/techBoardDetail.do?ID=163608
https://www.techtarget.com/searchstorage/definition/RAID

profile
Whatever I want | Interested in DFIR, Security, Infra, Cloud

0개의 댓글