레이드의 구성
레이드 0 - stripe 방식으로 데이터가 저장된다.
입력되는 데이터를 배열로 연결된 여러 디스크에 나누어서 동시에 저장되기 때문에 속도가 빠르다.
그러나 데이터를 나누어서 저장하는 방식 때문에 하나의 디스크만 망가져도 모든 데이터가 망실된다.
가용 용량: (디스크 용량 X 디스크 개수)
레이드 1 - 미러링 방식으로 데이터가 저장된다.
하나의 디스크에 데이터가 저장되면 다른 디스크에 동일한 데이터를 복사하여 데이터가 중복되게 한다.
하나의 디스크가 고장나더라도 미러링된 디스크를 통해 복구가 가능하다.
가용 용량 : 전체 디스크 용량의 절반
레이드 5 - 패리티 비트를 저장하여 데이터 복구가 가능한 구성.
디스크의 배열을 하나의 디스크로 보이도록 구성되며, 각 디스크에 패리티 비트가 저장된다.
하나의 디스크가 고장나더라도 나머지 데이터와 패리티 비트를 이용하여 데이터를 복구할 수 있으며,
2개 이상의 디스크가 고장날 경우 데이터가 망실된다.
가용 용량 : (디스크 개수 - 1) X 디스크 용량
레이드 6 - 레이드 5에서 페리티 비트 저장 공간을 추가한 구성이다.
페리티 비트 저장 공간이 추가되었기 때문에 2개의 디스크가 고장나더라도 복구가 가능하다.
가용 용량 : (디스크 개수 -2 ) X 디스크 용량
레이드 10 - 레이드 1로 구성된 그룹을 레이드 0으로 묶은 구성이다.
미러링을 이용한 데이터 백업과 stripe 방식을 통한 데이터 입출력 속도 향상으로 인해
많이 사용되는 구성이다. 레이드 01과 비교할 때 데이터 복구 시 더 유리하기 때문에 레이드 10이
주로 사용된다.
가용 용량 : 전체 디스크 용량의 절반
web bios에서 레이드 설정
레이드 카드가 장착되어있을 경우 웹바이오스 화면에서 레이드를 설정할 수 있다.
부팅 화면에서 <Ctrl + H > 입력 시 진입이 가능하다.
웹바이오스 진입 후 나오는 홈 화면이다. Scan Devices를 클릭하여 디스크 연결 상태를 최신화 하여 확인할 수 있다.
320GB HDD 6개가 장착된 화면이다. 디스크당 사용 가능 용량은 297.091 GB이며 정상적으로 인식되고있는 모습이다.
레이드 0 설정
홈 화면에서 Configureation Wizard 클릭하여 새로운 레이드 설정을 만들 수 있다.
아무것도 설정이 되지않은 상태이기 때문에 New Configureation을 선택 후 Next로 넘어간다.
레이드 설정을 진행할지 묻는 화면이다. Yes를 클릭하여 넘어간다.
수동으로 설정하기 위해 Manual Configureration을 선택 후 Next로 넘어간다.
여섯개의 모든 디스크를 레이드 0으로 묶기위해 모든 디스크를 선택 후 Add To Array를 클릭한다.
오른쪽 그룹 목록에 추가한 디스크 목록이 확인된다. 이상이 없을 경우 Accept DG를 클릭하여 적용한 후 Next로 이동한다.
Array With Free Space 목록에 방금 생성한 그룹의 목록이 출력된다. 설정할 그룹을 선택한 후 Add to SPAN을 클릭한 후 Span 목록에 그룹이 추가된게 확인된다. 확인 후 Next로 넘어간다.
레이드 레벨을 설정하는 화면이다. RAID Level 항목에서 설정할 수 있는 레이드 목록이 확인된다.
RAID 0을 선택한 후 Update Size를 클릭하면 Select Size에 사용되는 디스크들의 총 용량이 확인된다.
Update Size가 동작하지 않거나 해당 버튼이 없는 경우에는 수동으로 디스크 용량을 기입해야 한다.
용량 확인 후 Accept를 클릭한다.
설정을 진행할지 묻는 화면이다. Yes를 클릭하여 넘어간다.
Virtual Drvies에 그룹이 추가된게 확인된다. Next를 클릭하여 넘어간다.
실제로 연결된 디스크 상태와 추가된 그룹을 확인할 수 있다. Accept를 클릭한다.
설정을 저장할지 묻는 화면이다. Yes를 클릭한다.
ssd 캐싱을 사용할지 묻는 화면이다. Cancel을 클릭한다.
디스크를 초기화 하기전 진행할지 묻는 화면이다. Yes를 클릭하여 진행한다.
Fast Initialize 선택 후 Go를 클릭한다.
진행 여부를 묻는 화면이다. Yes를 클릭하여 넘어간다.
설정 완료 후 Home 화면으로 이동했을 때 생성된 RAID 0 그룹과 묶여있는 디스크들이 확인된다.
OS 부팅 후 디스크 확인 시 레이드 0으로 설정된 디스크의 용량이 확인된다.
레이드 1 설정
여섯개의 디스크를 사용하여 레이드 1을 설정 할 경우 설정 방법이 레이드 0과 크게 다르지 않다.
그룹 설정은 동일하며 아래 메뉴에서 RAID 1로 변경한다. 레이드 1설정으로 인해 세개의 디스크 용량만 사용할 수 있는 점이 확인된다.
레이드 1+0 설정
본 문서에서는 여섯개의 디스크로 레이드 10을 설정하였으며, 레이드 1을 세 그룹 추가하고 레이드 0으로 묶었다.
그룹 생성 부분에서 레이드 1을 세 그룹 추가한다.
Add to SPAN으로 생성한 세 그룹을 모두 추가한다.
RAID Level을 10으로 선택한다. 레이드 1 그룹이 세개 있으므로 320GB x 3 용량이 확인된다.
설정 완료 후 홈 화면이다. RAID 10 레벨이 확인되며 두개의 디스크가 세 그룹으로 묶여있는게 확인된다.
web bios에서 디스크 리빌딩 및 장애 처리
디스크에 문제가 발생할 경우 디스크 교체 후 남아있는 기존 디스크의 데이터를 이용하여 리빌딩 작업을 진행해야 한다.
아래 예시에서는 1번 슬롯의 디스크가 인식되고있지 않은 상태이다. 디스크 탈착 후 3초 정도 뒤에 다시 장착하거나 새 디스크를 장착해야 한다.
디스크 재장착 및 새 디스크 장착 후 Virtual Drvies 메뉴로 이동한다.
1번 슬롯 디스크가 인식은 되고 있으나 unconfiguration(bad)로 확인된다. bad 부분을 good으로 변경해야 리빌딩 작업을 진행할 수 있다. Properties 선택 및 Go 버튼을 클릭한다.
교체한 디스크의 그룹을 선택하고 Make Unconf Good 선택 후 Go 버튼을 클릭한다.
Make good 진행 후 Home 화면 확인 시 Unconfigured Good 으로 디스크가 인식된게 확인된다.
이제 리빌딩을 진행하기 위해 다시 Virtual Drives로 이동한다.
Unconfigured Good 상태인 디스크를 선택하고 Rebuild 선택 및 Go 버튼을 클릭한다.
디스크의 상태가 (FOREIGN )상태로 표시가 된다. 해당 설정을 변경하기 위해 Properties로 이동한다.
(FOREIGN) 상태가된 디스크의 그룹을 선택한 후 Replace Missing PD 를 진행한다.
변경 후 Rebuild Drive 선택 및 Go 번튼을 클릭하여 리빌딩을 진행한다.
리빌딩이 진행중인 화면이다. 100%가 되면 리부팅을 진행한 후 정상적으로 사용할 수 있다.
리눅스 터미널에서 레이드 설정 및 확인
MegaRaid tool 설치
zip 파일을 다운받는다.
#wget http://mirror.nforce.com/pub/software/raidtools/Megaraid/8-07-14_MegaCLI.zip
다운받은 파일의 압축을 해제한다.
# unzip 8-07-14_MegaCLI.zip
#cd Linux (운영체제에 맞게 선택한다.) #rpm -ivh MegaCli-8.07.14-1.noarch.rpm
명령어를 편하게 사용하기 위해 링크를 만들어 사용한다. #ln -s /opt/MegaRAID/MegaCli/MegaCli64 /usr/bin/Megacli
MegaCLI를 이용한 레이드 설정
웹바이오스 화면이 아닌, 터미널 상에서 Megacli 명령어를 통한 레이드 설정도 가능하다.
# Megacli -pdList -aALL |grep Frim
위 명령어를 통해 6개 디스크 상태를 확인할 수 있다. 아무런 레이드 설정이 되지 않은 상태가 확인된다.
#Megacli cfgspanadd -r10 -Array0[252:0,252:1] -Array0[252:2,252:3] -a0
웹바이오스에서 0,1번 슬롯과 2,3번 슬롯을 각각 레이드 1로 묶은 후 두 그룹을 레이드 0으로 설정하는 과정을
해당 명령어를 통해서 설정할 수 있다.
4,5번 디스크를 제외하고 0,1,2,3 번 디스크가 레이드로 설정된 상태가 Online으로 변경된다.
실제 사용가능한 용량을 확인 해보았을 때 (320GB X 2) 정도의 가용 용량이 확인된다.
#Megacli ShowSummary -aALL 명령어로 디스크 상태 및 레이드 설정을 간단하게 요약된 정보로
확인할 수 있다. 가장 밑 부분에 RAID Level : 10이 표시된다.
디스크 6개를 레이드 5로 설정
새 레이드 설정을 구성하기 위해 기존 설정을 삭제해야 한다.
#Megacli cfglddel -l0 -a0 명령어로 레이드 설정을 삭제할 수 있다.
-l 옵션은 만들어진 레이드 설정 목록을 의미하며 0번째 레이드 설정을 삭제하는 예시이다.
기존 레이드 설정 삭제 후 디스크 확인 시 정상적으로 초기화 된 상태가 확인된다.
# Megacli cfgldadd -r5 [252:0,252:1,252:2,252:3,252:4,252:5] -a0
디스크 6개를 레이드 5로 설정한다. 설정 후 모든 디스크의 상태가 Online으로 변경된다.
실제 사용 가능한 용량을 확인했을 때 각 디스크의 패리티 비트 저장 공간을 제외한 결과인 (전체 디스크 수 -1) X (320 GB) 정도의 용량이 확인된다.
# Megfacli ShowSummary -aALL
레이드 5 설정 후 상태 요약 화면에서 RAID Level : 5가 확인된다.
MegaCLI를 이용한 디스크 리빌딩
디스크에 문제가 발생하여 교체할 경우 웹바이오스가 아닌 쉘 화면에서도 리빌딩 작업을 진행할 수 있다.
먼저, 디스크 교체 시 자동으로 리빌딩이 진행될 수 있도록 설정이 되어있는지 확인한다.
# Megacli -AdpAutoRbld -Dsply -a0
위 명령어를 통해 현재 오토 리빌딩의 활성화 여부를 확인할 수 있다.
#Megacli -AdpAutoRbld -enbl -a0
만약 활성화되어 있지 않을 경우 활성화 시킨 다음 다시 디스크를 재 장착 하여 자동으로 리빌딩이 되는지
시도한다.
디스크 장착 시 자동으로 리빌딩이 진행되지 않을 경우 수동으로 리빌딩 작업을 진행해야 한다.
디스크 상태 확인시 0번 슬롯 디스크가 인식이 되고있으며 (bad) 상태로 출력되고 있다.
# Megacli -pdmakegood -physdrv [252:0] -a0
(bad) 상태를 (good)으로 변경해야 레이드 설정이 가능하다.
디스크의 상태가 (good)으로 변경되었지만, 변경해야 하는 부분이 하나 더 있다.
0번 슬롯 디스크는 새 디스크가 아닌, 기존에 레이드로 구성되어있던 디스크이다.
이 전 레이드 구성을 통한 데이터가 남아있기 때문에 해당 디스크는 Foreign 상태로 출력된다.
데이터가 남아있는 디스크의 경우 리빌딩 작업을 진행하면 데이터가 초기화되기 때문에 경고하기 위한
기능이며 Foreign 상태를 제거해야 리빌딩 작업이 가능하다.
#Megacli -cfgforeign -clear -a0
0번 슬롯 디스크의 상태값이 Foreign에 None으로 변경된다.
# Megacli -pdhsp -set physdrv [252:0] -a0
0번 슬롯 디스크를 리빌딩한다. 디스크 상태 확인 시 Rebuild로 출력되며 리빌딩이 진행중으로 확인된다.
# Megacli -pdrbld -showprog -phydrv[252:0] -a0
리빌딩 작업이 진행중인 디스크의 퍼센트지를 확인할 수 있다. 리빌딩 작업이 완료되면 정상적으로
사용이 가능하다.
windows - MegaRAID Storage Manager를 이용한 레이드 설정 및 리빌딩
설치 usr : https://idchowto.com/?p=17140
윈도우의 레이드 설정은 MegaRAID Storage Manger를 이용해 간단하게 설정할 수 있다.
예시로 레이드 10을 설정하였으며, 사용가능한 디스크는 총 6개이지만 레이드 10 설정을 위해선 4의 배수의 디스크 개수가 필요하기 때문에 두 개의 디스크는 제외하고 네 개의 디스크만 설정하였다.
MegaRAID Storage Manager 실행 후 새 레이드 설정을 만들기 위해 Create virtual drive를 클릭한다.
Advanced를 선택하고 Next를 클릭한다.
RAID level를 10으로 선택한 후 Select unconfigured drives 목록에서 두 디스크 선택 후 'Add >>' 버튼을 클릭하여 Drive groups로 추가한다. 그룹을 추가한 후 'Create Span'을 클릭한다.
다른 두 디스크도 추가한 후 'Create Drive Group'을 클릭한 후 Next를 클릭하여 넘어간다.
디스크 용량 및 그룹 확인 후 'Create Virtual Drive'를 클릭한다.
Virtual Drive가 생성된 모습이다.
'Finish'를 클릭한다.
정상적으로 레이드가 설정되었으며, 디스크 관리 페이지에서 사용할 수 있는 디스크가 인식된다.
MegaRAID Storage Manager를 이용한 리빌딩
디스크 고장 상황을 연출하기 위해 0번슬롯 디스크를 제거 후 다시 연결하였다.
제 장착 후 인식은 정상적으로 되나, Unconfigured(bad)상태로 확인된다.
마우스 우클릭 후 'Change to Unconfigured Good'을 클릭하여 상태를 변경한다.
Make Good 실행 후 다시 우클릭하여 'Replace Missing Drive'를 클릭한다.
디스크가 원래 연결돼있던 그룹을 확인 후 'OK'를 클릭한다.
디스크가 비어있던 0번 슬롯에 추가되었으며, 우클릭 후 'Start Rebuild'를 클릭하여 리빌딩을 진행한다.
정상적으로 리빌딩이 진행되는 모습이다.
Dashboard에서 More Details를 클릭하면 진행중인 리빌딩 프로그레스 바를 확인할 수 있다.