리눅스에서 RAID 구성(RHEL4)

1. RAID 소개
  가. RAID : Redundant Array of Independent Disk의 약자, 여러 개의 하드 디스크에
                   데이터를 나눠서 저장하는 기술, 복수 배열 독립 디스크라고도 불린다.
  나. RAID 레벨
      1) RAID 0 : 스트라이핑(Stripping) 방식,  여러 개의 하드 디스크에 동시에
          저장되는 방식으로 구성 디스크 중 1개에 에러가 발생하면 데이터가 손실됨,
          단, 속도는 빠르다
사용자 삽입 이미지
      2) RAID 1 : 미러링(Mirroring) 방식, 데이터의 안전성을 최우선으로 하여,
          같은 데이터를 중복보관한다. 최소 2개의 디스크 필요, 고비용, 저속도
사용자 삽입 이미지
      3) RAID 5 : level 0과  level 1의 장점을 보완한 방식, 최소 3개 이상의 디스크 필요,
           전체 디스크 용량의 75%정도만 사용가능하다. 에러 교정을 위한 패리티 정보를
           각각의 디스크에 나눠 보관. 에러 발생 시 패리티 정보로 복구가 가능하다
사용자 삽입 이미지
      4) RAID 0+1 : 먼저 디스크를 스트리핑(RAID 0) 하고, 다시 미러링(RAID 1) 하는 방식.
           최소 4개 이상의 디스크 필요
사용자 삽입 이미지
      5) RAID 10(RAID 1+0) :  먼저 디스크를 미러링(RAID 1) 하고 ,
           다시 스트리핑(RAID 0)하는 방식, 최소 4개의 디스크 필요

사용자 삽입 이미지
  다. RAID 0+1 과 RAID 1+0 비교
      1) 공통점 : 가용량이 같다. 속도가 같다.
       2) 차이점 : 볼륨이 깨지는 조건, 볼륨을 재구성하는 방법

사용자 삽입 이미지       3) 볼륨이 깨지는 조건
            RAID 0+1  : 1번과 5번 디스크가 동시에 나갈 경우
            RAID 1+0  : 1번과 2번 디스크가 동시에 나갈 경우
           단, 확률적으로 1+0 보다 0+1 의 볼륨이 깨질 확률이 높아 1+0 방식의 안정성이 높음

       4) 볼륨을 재구성 하는 방법
           RAID 0+1 : 1번 디스크가 깨졌을 경우 2번 레이드의 내용을 1번 레이드에 통째로 복사
                               4개의 디스크 복사가 필요
           RAID 1+0 :  1번 디스크가 깨졌을 경우 2번 디스크의 내용을 1번 디스크로 복사
                               1개의 디스크 복사가 필요
           볼륨의 복구 시간을 고려했을 경우 RAID 1+0 방식이 더 유리

2. RAID 구성(RHEL 4, 소프트웨어 RAID구성)

  가. RAID 0 구성

       디스크 파티션 생성 -> 레이드 구성 -> 마운트 순으로 진행

      1) 디스크 파티션 생성
          2개 이상의 디스크 장착 후 파티션 생성(여기서는 2개로 구성)
         # fdisk /dev/sdb
         command 순서 : n -> p -> 1-> 엔터 -> 엔터 -> t -> fd -> w
         디스크의 개수 만큼 위 작업을 반복함

      2) 레이드 구성
         /dev/md0 등의 md 장치가 구성 되어 있지 않을 경우 아래 명령을 실행
          # ls -l /dev/md?
          # mknod /dev/md0 b 9 0
     
          # mdadm –create /dev/md0 –level=0 –raid-devices=2 /dev/sdb1 /dev/sdc1
          –create /dev/md0  : 레이드 구성을 md0 으로 한다
          –level :  레이드 레벨은 0 (스트리핑)으로 한다.
          –raid-devices=2 /dev/sdb1 /dev/sdc1 : 2개의 디스크로 구성, 그 뒤는 장치명


          # mdadm –detail –scan
           방금 구성한 레이드의 구성정보를 확인
 
      3) 마운트

         구성한 레이드 md0 을 포멧한 후 마운트 한다.

          # mkfs.ext3 /dev/md0
          # mount /dev/md0 /raid0

  나. RAID 1  구성
    
       디스크 파티션 생성 -> 레이드 구성 -> 마운트 순으로 진행
       RAID 0 구성과 과정은 동일하며 레이드 구성 시 옵션의 차이는 다음과 같다

       # mdadm –create /dev/md1 –level=1 –raid-devices=2 /dev/sdb1 /dev/sdc1
       # mdadm –detail –scan

        /dev/md1 에서 숫자 1은 레이드 레벨과는 아무 상관이 없으며, 아무 숫자나 사용가능
        다만, 파악을 쉽게하기 위해 레이드 레벨과 같은 숫자로 지정한 경우이다.

  다. RAID 5  구성    

       디스크 파티션 생성 -> 레이드 구성 -> 마운트 순으로 진행
      RAID 0 구성과 과정은 동일하며 레이드 구성 시 옵션의 차이는 다음과 같다

       # mdadm –create /dev/md5 –level=5 –raid-devices=2 /dev/sdb1 /dev/sdc1
      # mdadm –detail –scan

        /dev/md1 에서 숫자 5는 레이드 레벨과는 아무 상관이 없으며, 아무 숫자나 사용가능
       다만, 파악을 쉽게하기 위해 레이드 레벨과 같은 숫자로 지정한 경우이다.

  라. RAID 복구

      고장난 디스크를 새 디스크로 교체 -> 파티션 생성 -> 레이드 구성순으로 진행
      파티션 생성 부분은 레이드 구성 시와 동일하며, mdadm 옵션은 아래와 같음

       # mdadm /dev/md1 –add /dev/sdb1
          미러링 디스크 중 sdb1 디스크를 교체한 뒤 레이드를 재구성 하는 방법이다.

       # mdadm –query –detail /dev/md1
          위 명령어로 state 가 active sync 인지 확인 한다.

  마. RAID 관련 명령어

        # mdadm –stop /dev/md0
           레이드 장치인 /dev/md0 을 중지

        # mdadm –query –detail /dev/md0
           /dev/md0 장치의 상세한 내역 출력

You may also like...

2 Responses

  1. 에몽이 말해보세요:

    깔끔한 정리 감사합니다

  2. 숭이와알라 말해보세요:

    해당 내용좀 퍼갈게요~

    http://blog.naver.com/onlyoll

    문제 있으시 댓글이나 쪽지 남겨주세요

    정보 감사합니다

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다