- 레이드란? 여러개의 하드디스크를 이용하여 속도, 용량증설, 전성, 효율성 가용성을 증대하는 기술
1-1. 레이드 구성하기전 필요한 것은? (사전 준비)
1) RAID 하드디스크
레이드 구성을 위해선 두개 이상의 하드디스크가 필요하다.
서버 내부에 장착한 모습
( 레이드 0, 1 구성을 위한 디스크 최소 2개, 레이드 5 구성을 위한 디스크 최소 3개 )
2) 레이드 케이블
3) 레이드 카드
레이드 카드란 카드 자체에 레이드 디스크를 컨트롤하기 위한 별도의 작은 CPU/메모리가 붙어있는 카드를 말한다 (레이드 카드 모델명 : LSI 9261-8i )
4) PCI 슬롯
PCI 슬롯에 레이드 카드를 장착한 모습이다
5) 별 것 아니라는 강한 자신감!
레이드 서버가 입고 완료된 모습이다.
이제 본격적으로 레이드를 구성 해보자 !
- 레이드 구성
2-1. RAID 0
부팅 화면이다.
RAID 컨트롤러 펌웨어 버전을 확인할 수 있다. ( LSI 9261 RAID 컨트롤러 )
하드 인식결과를 확인 할 수 있다.
[Ctrl + H]를 클릭하여 MegaRAID 설정 화면으로 들어가보자.
Adapter 를 선택하는 창이다. [Start] 클릭
레이드 구성 유틸리티인 WebBIOS에 들어온 상태이며 RAID구성을 확인할 수 있다.
[Configuration Wizard] 클릭
[New Configuration](새로운 설정) 클릭 후 [Next] 클릭
(Clear Configuration : 설정값 초기화, Add Confiuration : 추가 설정)
당신은 정말 기존에 설정값들을 지우길 원하십니까?
[Yes] 클릭
Manual Configuration (수동 RAID 설정) 클릭 후 [Next] 클릭
(Automatic Configuration : 자동으로 RAID 설정)
RAID 구성을 위해 Drive GROUP을 생성하는 화면이다.
모두 RAID 0 으로 묶어 보겠다.
하드디스크를 전부 선택 후 [Add To Array] 클릭
묶은 하드디스크가 Drive Group으로 들어간 상태
[Accept DG] 클릭 후 [Next] 클릭
[Add to SPAN] 클릭
(Drive Group으로 묶은 HDD 정의하는 곳)
[Next] 클릭
레이드 구성 화면이다.
RAID Level : RAID0, RAID1, RAID5, RAID6 구성.
Select Size : RAID 구성 별 용량을 지정합니다.
(노란색 박스에 레이드 종류 별로 용량이 나와있다.)
Access Pliccy : 접근 정책
Read Policy : 읽기 정책
Write Policy : 쓰기 정책
위와 같이 레이드 구성 완료 후 [Accept]를 선택하여 가상드라이브 생성 후 [Next]
[Yes] 클릭
가상 드라이버가 생성된것을 확인할 수 있다.
[Next] 클릭
물리적 하드디스크상태 와 가상드라이버를 확인할 수있다.
[Accept] 클릭
설정을 저장하시겠습니까?
[YES] 클릭
SSD 캐싱을 활성화 할것 인지 묻는화면이다.
[Cancel] 클릭
데이터 손실 방지를 위해 Initialize(초기값 설정)를 실행
[YES] 클릭
가상드라이버가생성이되었다.
[Fast Initialize] 지정후 [Go] 클릭
좌측에 가상드라이버 초기화과정을 확인 할 수있다.
Exit 클 릭 후 시스템을 리부팅한다.
다시 바이오스에서 레이드 설정화면으로 들어가보면 RAID0으로잡혀있는것 을확인 할수있다.
OS 로 들어가서 fdisk 명령어로 용량을 확인해보면 /dev/sda 용량이 3992.0GB 인것을 확인할 수 있다.
STripe의 경우 디스크 하나가 고장이 났을 시 복구가 어렵지만
위 와 같이 용량증설과 쓰기 속도가 향상되는장점을 가지고 있다.
그렇기때문에 디스크8개를 RAID0으로 잡으면 효율성이떨어진다.
2-2. RAID 1
앞 서 설명한 레이드0 과 동일한방법으로 디스크를 잡은 후 설정한다.
레이드1의 구성화면 이다.
레이드1의 경우 실제 사용할 수 있는 용량은1/2 로 Select Size 는1.815TB 로 설정한다.
[Next] 클릭후 레이드0과 동일한 방법으로 초기화를 진행한다.
초기화 작업 중
레이드1 구성 확인
OS 로 들어가서 fdisk 명령어로 용량을 확인해보면 /dev/sda 용량이 1996.0GB 인것을 확인할 수 있다.
Mirroring의 경우 용량이 반으로 줄어드는 단점과 쓰기 속도가 느리다는 단점을 가지고있다.
하지만 하나의 디스크가 고장이나도 읽기속도가 빠르고 복원이 비교적 간단하여 가용성이 높다.
그러나 디스크8개를 RAID1로 잡는경우는 드물며 보통 2개 를 사용하고 극한 환경에서는3개이상의 멤버디스크를 사용한다.
2-3. RAID 5
레이드5의 구성화면 이다.레이드5의 경우 실제 사용할 수 있는 용량은 패리티비트가 있어 레이드0 보다 적은걸 확인 할 수 있다. Select Size 는3.176TB 로 설정한다.
[Next] 클릭후 레이드0과 동일한 방법으로 초기화를 진행한다.
초기화 작업 진행중
레이드5 구성 확인
RAID 0보단 안전하다는 인식과 달리 오히려 많은 량(보통 8개 이상)의 디스크를 스토리지로 묶으면, 패리티 연산오류 발생 확률이 높아져서 인해 RAID 0으로 묶은것보다 깨질 확률이 높아진다
그러므로 대단위로 스토리지를 만드려는 사람이 있다면 RAID 6 또는 RAID 10을 권한다
2-5. RAID 1 0
Slot 0,1 을 잡고 [Add to Array] 클릭
Drive Group에 그룹이 생성된 것을 확인 할 수 있다.
위와 동일한 방법으로slot2,3 slot4,5 slot6,7을 묶어서 Add To Array 클릭 후 Next 클릭
NEXT를 클릭한다.
앞 서 설정 해둔 Drive Group 들을 확인 할 수 있다.
하나 씩 선택 후[Add to SPAN] 클릭
[Next] 클릭
레이드10의 구성화면이다. RAID10과 RAID 00 을 선택하여 구성 할 수 있다.
Select Size 에1.815 TB 를 입력 후 [Next]를 클릭한다.
위와 같이 Drive Group에 가각 Virtual Drive가 생성되어 있는것을 확인할 수 있다.
[Accept]클릭
Fast Initialize -> [Go] 클릭하여 빠른 초기화 작업진행 .
재부팅 후 바이오스에서 레이드 구성으로 들어가보면 RAID10으로 구성되어 있는 것을 확인할 수 있다.
서버에 접속하여 fdisk 명령어로 용량 확인
자사(스마일서브)의 레이드서버의 경우 안정성과 고가용성을 고려하여 레이드10으로 구성된다.
그러므로 레이드10으로 구성하여 설정을 진행해보겠다!
- 레이드서버 설정
3-1. RAID Tool 설정
클라이언트에서 웹으로 레이드 구성을 간단하게 확인할 수 있도록 툴을 설치해보자.
1) URL : http://www.avagotech.com/support/download-search
해당 URL로 접근하여 자신이 사용하는 레이드카드를 선택한 후 Downloads를 선택하고 Search클릭한다.
2) 현재사용하는 레이드서버에 OS는 Linux이기 때문에 Letest MegaRAID Storage Manager (MSM) Linux 64-bit를 확인하고 다운로드 합니다.
3) Ftp로 서버에 접속하여 해당파일을 전송하거나 서버에접속하여 wget으로 파일을 다운로드 한다.- wget http://docs.avagotech.com/docs-and-downloads/https:/avagodocs.s3.amazonaws.com:443/docs-and-downloads/raid-controllers/raid-controllers-common-files/MSM_linux_x64_installer-15.08.01-02.tar.gz
4) 다운로드받은 파일을 압축해제한다 : tar zxvf MSM_linux_x64_installer-15.08.01-02.tar.gz
5) 압축해제를 하면 disk디렉터리가 생성된다. disk 디렉터리로 이동 : cd disk
6) RunRPM.sh 스크립트 실행 : sh RunRPM.sh
7) 확인 : netstat 명령어로 3071포트가 정상적으로 열려있는지 확인
8) 서버에 설치가 완료되었다면 클라이언트에서 접근이 가능하게 클라이언트에서도 설치를 해야 한다.
– 클라이언트 PC가 윈도우일 경우
윈도우 서버에도 메가레이드 펌웨어를 설치하면 레이드서버에 접근이 가능하다.
– MegaRAID 접속 후Configure Host 클릭
– Display the systems from the following favorite list 부분에 레이드서버 IP입력 후 Add 클 릭 후Save Settings 클 릭
– IP Address 부분 에 레이드서버IP입력 후 Discover Host클 릭
Remote서버부분에 해당 레이드서버 아이피가 뜨는것을 확인할 수 있다.
– Remote Servers 에 해당아이피클릭 시 위와 같은 창이 뜬다.
– 레이드서버의 접속정보 입력 후 Login 클 릭
– 접속에 성공하면 위 와 같은화면이 실행된다.
– Logical 확인 시 RAID 구성 을 확인할 수 있다.
– 클라이언트 PC가 우분투일 경우
– wget을 이용하여 MegaRAID Storage Manager (MSM) Linux 64-bit 를 다운
– 해당 파일을 압축해제하면 disk 디렉터리가 생성된다.
: tar zxvf MSM_linux_x64_installer-15.08.01-02.tar.gz
– disk디렉터리로 이동 후 ls 명령어로 확인해보면 rpm패키지들을 확인할수있다.
우분투의 경우 데비안 계열이기 때문에 rpm->deb 으로 변경해주어야한다.
– 변경해주기 위해선 alien을 설치해주어야 한다. : apt-get install alien
– alien다운 완료 후 해당명령어로 rpm->deb로 변경
: alien -c ***.rpm
– ls -l 명령어로 확인해보면 rpm 파일들이 deb로 변경된 것을 확인할 수 있다.
– 해당명령어로 setuptype을 변경해준다 & touch 명령어로 /etc/redhat-release 파일생성
– dpkg 명령어로 deb로 변경된 패키지 설치
: dpkg -i lib-utils2_1.00-8_all.deb & dpkg -i megaraid-storage-manager_15.08.01-3_all.deb
– 해당 명령어로 서비스 시작
: update-rc.d vivaldiframeworkd defaults & /etc/init.d/vivaldiframeworkd start
– megaraid가 설치된 경로에서 startupui.sh를 실행하면 아래와 같이 레이드서버를 접속할 수 있는 화면이 뜬다
3-2. RAID 01 과 RAID 10 차이점
[안정성의 차이]
RAID0의 경우 RAID10보다 효율성이 떨어진다.
지금부터 그 이유를 설명 하겠다.
스마일서브 업체의 서버는 디스크 1,2,3,4 를 RAID10으로 잡았고, BABO라는 업체의서버는 디스 크1,2.3.4를 RAID 01로 잡았다고 가정해보자.
DISK 1,2(혹은 3,4)에 장애 발생의 경우
BABO 스마일서브
사용 가능 O 사용 불가 X
DISK 1,3(혹은 2,4)에 장애 발생의 경우
BABO 스마일서브
사용 불가 X 사용 가능 O
DISK 1,4(혹은 2,3)에 장애 발생의 경우
BABO 스마일서브
사용 불가 X 사용 가능 O
이로 인해 BABO 의 RAID 0+1은 가용성이 33.3%이지만 스마일서브의 RAID 1+0은 66.6%로 두배의 고가용성을 확보할 수 있는 장점이 있다.