AIX에서의 mirrorvg. 디스크 미러링
2011.07.06 19:39
원문 : http://www.ischo.net -- 조인상 // 시스템 엔지니어
Writer : http://www.ischo.net -- ischo // System Engineer in Replubic Of Korea
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
원문 : http://www.ischo.net -- 조인상 //시스템 엔지니어
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
mirrorvg에 대해서
- mirrorvg 명령은 주어진 볼륨그룹에 존재하는 모든 LV를 미러(mklvcopy)해준다.
lv를 정해진 디스크로 copy 해주는 것이기 때문에 RAID 1과는 기능상 구별되며,
mirrorvg 이후에 생성된 lv는 해당되지 않으므로 다시 mirrorvg를 해주거나 syncvg 등으로 lvcopy를 재차 해주어야 한다.
1. non-rootvg 미러링
# mirrorvg -c 2 datavg hdisk2 hdisk3
# mirrorvg -c 3 datavg hdisk2 hdisk3 hdisk4 --> 3개의 pv로 미러링
* roortvg를 mirror할때는 Quorum이 자동으로 disabled로 지정됨.
disabled 상태면 한개의 pv가 깨져도 다른 pv로 서비스가 가능함.
2. rootvg 미러링
# lspv 로 확인
# mirrorvg -S rootvg hdisk0 hdisk1 ( -S : Background sync 수행 )
# lsvg rootvg ( STALE PPs 값이 0이면 동기화가 완료된것임 )
# bosboot -ad /dev/hdisk1 (추가된 disk에 boot image생성)
# bootlist -m normal hdisk0 hdisk1
# lsvg -l rootvg (확인)
* 미러후 lsvg -l rootvg 한 결과에서
LV STATE 항목이 open/syncd 상태면 LV미러가 잘 된 것임
만약 open/staled 처럼 나올 경우 syncvg 명령어로 다시 sync를 걸 필요가 있음.
-- mirrorvg와 rootvg 에 대한 관계 설명 ---------------------------------------------------------------------------------------------
1. rootvg 미러링
- rootvg미러링을 완료하면 bosboot, bootlist, reboot 과정을 거쳐야 한다.
bosboot 명령어는 새로이 미러된 드라이브의 boot레코드를 수정하는데 필요하다.
bootlist 명령어는 부팅될때 미러된 boot 디스크 순서를 정하는데 필요하다.
rootvg 의 Quorum 이 diabled 된것을 시스템에 적용하기 위해서 시스템 리붓이 필요하다.
2. rootvg가 아닌 vg의 미러링
볼륨그룹이 미러되면 Quorum 이 deactivete 된다. 열려있는 모든 lv를 close시키고 varyoffvg -> varyonvg 하면 변경된 quorum이 적용된다.
varyon 을 다시 하지 않아도 미러는 잘 동작하겠지만 변경된 Quorum값은 적용되지 않는다.
3. rootvg와 non-rootvg의 미러링
primary/secondary system dump device는 미러되지 않는다. 일부시스템에서는 paging, dump device가 같은 device로 된 경우도 있다.
하지만 대부분의 유저들은 paging device도 미러되길 원한다.
mirrorvg 명령어가 dump device와 paging deice가 같은 device가 같다는걸 인식하면 lv는 자동으로 미러된다.
mirorvg가 만약 dump/paginge device가 각기 다른 lv에 있는것으로 인식하면 paging device는 미러되지만 dump device는 미러되지 않는다.
dump device는 sysdumpdev 명령어로 조회/수정 가능하다.
-------------------------------------------------------------------------------------------------------------------------------------
3. 미러링된 vg내의 pv교체방법
# unmirrorvg datavg hdisk2
# reducecg datavg hdisk2
# rmdev -dl hdisk2
<교체>
# cfgmgr -v
# extendvg datavg hdisk2
# mirrorvg -m datavg hdisk2 hdisk3 // -m : 자동으로 map파일을 생성
확인
# lsvg -l datavg
백그라운드로 새로 작성된 mirror를 sync하기
# mirrorvg -S -c 2 datavg
4. 미러된 vg에 lv를 추가했을 경우
* mirrorvg 명령어는 mklvcopy 명령어를 존재하는 모든 lv에 걸어주는 명령어이다.
그렇기 때문에 미러링후에 또다른 lv를 추가했을 경우는 새로 추가한 lv를 한번 더 mklvcopy 해줘야 한다.
# lsvg -l rootvg 하면
새로추가한 LV의 PP값만 1로 표시됨.
# mklvcopy 추가LV명 2 hdisk1
# syncvg -l 추가LV명