로그인
Sign in
Metadb & Metadevice 구성 매뉴얼 - 2005.12.17 수정본 [강추]
<설치 소스>
http://www.wowunix.com/down/set/disksuite/
(solaris 9 이상의 운영체제에는 기본으로 Disksuite 가 설치되어 있습니다.)


Disk 및 Disk Slice 구성
; 우선 Disk Partition을 다음과 같이 metadb (s3) 와 metadevice (s4) 두 Slice 부분으로 Partition을 나눈다.
Target 8 Disk : c0t8d0s3, c0t8d0s4
Target 9 Disk : c0t9d0s3, c0t9d0s4
Target 10 Disk : c0t10d0s3, c0t10d0s4
Target 12 Disk : c0t12d0s3, c0t12d0s4


1. metadb
1) 구성
metadb -af c0t8d0s3 c0t9d0s3 c0t10d0s3 c0t12d0s3
; -c 옵션이 있는데 이것은 각 Slice 에 Database Replicas(복사본) 의 Copy 개수이다.
Default = -c1 = 1개 이다.

2) 삭제
metadb -df c0t8d0s3
; c0t8d0s3 라는 Slice를 metadb에서 삭제하는 명령

※ metadb는 Slice당 10M 정도면 충분하고 최소 2개이상의 Database Replicas(복사본)을 구성해 주어야 한다.
※ 혹시 metadb -i 라는 명령으로 현재 구성되어있는 metadb 정보를 확인했을 때 “M" 이라는 Flag 값을 가진 metadb Slice 가 있다면 이것은 해당 복제본의 Master block에 문제가 있는 것으로 반드시 삭제하고 재구성해주어야 한다.


2. RAID-0 (Concatenate/Stripe, 연결/스트라이프)
1) 구성
① Concatenate (연결)
metainit d0 2 1 c0t8d0s4 1 c0t9d0s4
② Stripe (스트라이프)
metainit d3 1 2 c0t10d0s4 c0t12d0s4
; RAID-0 구성은 같지만 서로 조금 다른 차이점을 갖는다.
Concatenate (연결)은 임의의 한 디스크를 쓰고 다음 디스크를 순차적으로 읽고 쓰는 방식이며,
Stripe (스트라이프)는 Random 하게 각각의 디스크를 읽고 쓴다.
장점과 단점이 있는데 Concatenate (연결)은 디스크 스페이스가 부족할 때 기존 데이터를 살리면서 디스크 사이즈를 늘릴수 있지만 Stripe (스트라이프)는 Disk 안의 내용을 모두 초기화 해서 사용한다는 점이 가장 크다.
Concatenate (연결)은 사용중 RAID-0를 풀고 안에있는 데이터를 확인할수도 있다.
속도 (읽기/쓰기) 측면을 Test 해봤는데 Stripe (스트라이프) 구성이 Concatenate (연결)에 비해 훨씬 I/O 속도가 빨랐다.
Test 장비 : Sun Enterprise-250 (Internal I/O)
Internal Disk : Seagage 10k RPM SCA Disk * 4EA (동일한 Disk)
2개씩 RAID-0로 묶었는데 하나는 Concatenate, 하나는 Stripe로 만들어 Test 했다.
(동일 작업시)
1Gbyte Write 속도는 2~3초 정도,
1Gbyte Read 속도는 30초 이상 Stripe (스트라이프) 구성이 빨랐다.

[참고]
몰랐던 부분이 하나 있어 추가합니다.
Concatenate/Stripe, 연결/스트라이프의 차이점이 하나 더 있는데
서로 다른 사이즈의 디스크 (7G, 99G) 를 Concatenate/Stripe 해봤습니다.

1) Concatenate (연결)
[test:/] #   metainit d0 2 1 c0t0d0s4 1 c1t0d0s4
d0: Concat/스트립이 설정됨
[test:/] #   metastat
d0: Concat/Stripe
   크기: 222478320 블록(106 GB)
   스트립 0:
       장치       시작 블록    Dbase   Reloc
       c0t0d0s4          0     아니    예
   스트립 1:
       장치       시작 블록    Dbase   Reloc
       c1t0d0s4          0     아니    예
Device Relocation Information:
Device   Reloc  Device ID
c0t0d0   예     id1,dad@AST3120026A=3JT2TK4C
c1t0d0   예     id1,sd@n5005076103d1006e

2) Stripe (스트라이프)
[test:/] #   metainit d0 1 2 c0t0d0s4 c1t0d0s4
d0: Concat/스트립이 설정됨
[test:/] #   metastat
d0: Concat/Stripe
   크기: 29637120 블록(14 GB)
   스트립 0: (인터레이스: 32 블록)
       장치       시작 블록    Dbase   Reloc
       c0t0d0s4          0     아니    예
       c1t0d0s4          0     아니    예
Device Relocation Information:
Device   Reloc  Device ID
c0t0d0   예     id1,dad@AST3120026A=3JT2TK4C
c1t0d0   예     id1,sd@n5005076103d1006e

결론은 Stripe (스트라이프) 구성시 디스크 사이즈가 작은 쪽을 기준으로 (두배) 사이즈로 구성된다는 점이 달랐습니다.


2) 복구
RAID-0는 특성상 하나의 Disk라도 Fail이 나면 그 Data를 복구하기 힘들다. (가장큰 단점)

3) 삭제
metaclear d0
metaclear d3
; d0 / d3 라는 metadevice를 삭제 (clear) 한다.



3. RAID-1 (Mirror)
root Mirror는 다른 문서를 참고하여 구성해 보고 여기서는 생략한다.

1) 구성
metainit d1 1 1 c0t8d0s4
metainit d2 1 1 c0t9d0s4
metainit d0 -m d1  ;  d1은 d0의 Submirror (One Way Mirror)
metattach d0 d2  ;  d2는 d0의 Submirror (Two Way Mirror)
; d0라는 metadevice를 사용할수 있는데 그 구성에서 보듯이 d0는 d1이 Mirror를 하고 d2가 추가로 붙는 것을 볼수 있다.


2) 복구
metareplace -e d0 c0t8d0s4
; 첫 번째 Mirror Disk 인 c0t8d0s4 Disk Slice 가 불량이라고 가정하고 불량난 Disk를 교체한후 위와같이 metareplace 명령으로 복구해준다.


3) 삭제
metadetach d0 d2  ;  d0에서 d2를 분리(detach) 한다.
metaclear d0
metaclear d2
metaclear d1

※ Mirror가 끝날때까지는 작업중인 Mirror를 풀수가 없다.
metastat 으로 확인하여 끝날때까지 기다려야 한다.
※ Mirror 작업중에도 파일시스템을 구성(newfs) 하여 metadevice (d0) 를 mount 하여 사용할 수는 있다.



4. RAID-5
1-1) RAID-5 구성
metainit d0 -r c0t8d0s4 c0t9d0s4 c0t10d0s4
; -r 옵션이 RAID-5를 구성하는 옵션이다.

1-2) Hot Spare 구성
metahs -a hsp001 c0t12d0s4
; -a 옵션이 Hot Spare를 Add 하는 옵션이고, Disk Slice c0t12d0s4을 hsp001 이라는 이름으로 Hot Spare를 구성한다.
metaparam -h hsp001 d0
; -h 옵션은 hotspare 옵션이다.
d0 라는 metadevice에 hsp001을 (Hot Spare 파라메터 값을) 추가한다.
여기서 d0는 RAID-0 / RAID-1 / RAID-5 어느 구성이어도 상관없다.


2) 복구
① Hot Spare 구성이 되어있을 경우
; 바로 Hot Spare 디스크가 에러난 디스크를 대신해 Resync 작업을 자동으로 수행하고 서비스 함
(나중에 새로운 디스크를 추가하고 그 디스크를 Hot Spare 로 구성해주면 됨)

② Hot Spare 구성이 안되어있을 경우
<가정 1>
Fail 난 Disk 를 제거하고 그자리에 새로운 디스크를 추가하고 복구작업을 한다면
metareplace -e d0 c0t8d0s4
; d0 에 있는 첫 번째 미러 디스크인 c0t8d0s4 를 교체했다고 가정하고 위와같이 replace 한다.

<가정 2>
Fail 난 Disk를 제거하지 않고 다른 자리에 디스크를 추가하고 복구작업을 한다면
metareplace -f d0 c0t8d0s4 c0t11d0s4
; d0 에 있는 첫 번째 미러 디스크인 c0t8d0s4 를 제거하지 않고 다른 자리에 디스크를 꽂아 c0t11d0s4 를 추가로 만들었다면 위와같이 replace 한다.

* 참고로 새로운 디스크를 추가하여 작업할때는 반드시 format 명령으로 디스크 슬라이스를 교체할 디스크 구성과 동일하게 만들어 주고 작업을 해야 한다.
(format 명령으로 슬라이스 구성만 하고 newfs 는 안해도 됨)

3) 삭제
① metadevice 파라메터에서 구성된 Hot Spare 삭제 (d0에 구성된 hsp001을 삭제)
metaparam -h none d0

② Hot Spare 삭제 (분리된 Hot Spare 삭제)
metahs -d hsp001 c0t12d0s4

③ Hot Spare Name 삭제 (Hot Spare 이름 삭제)
metaclear hsp001
조회 수 :
810
추천 수 :
15 / 0
등록일 :
2007.01.22
17:46:45 (*.236.3.241)
엮인글 :
http://bestceok.com/xe/index.php?mid=sun_faq&document_srl=3019&act=trackback&key=7fa
게시글 주소 :
http://bestceok.com/xe/index.php?mid=sun_faq&document_srl=3019
List of Articles
번호 제목 글쓴이 날짜 조회 수
151 솔라리스 10 컴파일 에러 문제 하록 2007-12-18 4927
150 기본 network setup 하록 2007-12-18 694
149 Volume Manager에서 Root Disk Mirroring 하록 2007-12-18 1349
148 ce 인터페이스 속도 설정 하록 2007-12-18 610
147 UNIX System Crash Dump 분석스크립트 (analysis.sh) 하록 2007-12-18 988
146 Process Name별로 Kill하는 Script 하록 2007-11-13 616
145 Solaris 10 보안 적용 스크립트 하록 2007-11-02 1812
144 ps 명령어 Full List 하록 2007-06-20 601
143 솔라리스 부트 매니저를 이용한 부트 디스크 미러링 방법 하록 2007-03-20 948
142 Sun One Webserver 설치 하록 2007-03-19 487
141 새로운 장치를 달고 device file을 만들려면? 하록 2007-03-06 546
140 ufsdump & ufsrestore Manual 하록 2007-01-31 1045
» [SUN Disksuite] Metadb & Metadevice 구성 매뉴얼 하록 2007-01-22 810
138 SOLARIS한글 사용하기 하록 2006-11-30 524
137 솔라리스10 x86 에서의 POP3 서버 구축!! 하록 2006-11-23 779
136 IP Filter 사용법 하록 2006-11-23 974
135 Solaris Security tools 50종 하록 2006-11-23 710
134 fsck에 관한 내용, 갑자기 다운 되었을 경우 하록 2006-11-23 784
133 OBP(Open boot PROM) command 정리 하록 2006-11-23 745
132 솔라리스10 x86 에 sendmail 8.13.3 설치하기 하록 2006-11-23 1291