========== MC Service Guard ==========
1. CLUSTER의 상태가 Down이면 클러스터를 구동해야한다.
cmviewcl 명령으로 확인한다. 만약 정상적으로 보이지 않는다면 inetd 대몬을 재기동해본다.
cmruncl 명령으로 클러스터를 기동해야한다.
단순히 Cluster가 기동되어있지 않은 상태라면 자동으로 Node와 Pkg가 기동된다.
2. 노드실행하기 (cmrunnode)
cmrunnode 노드명
3. 패키지 올리기(cmrunpkg)
[rpdb2:/etc/cmcluster/pkg1]#cmrunpkg -n rpdb2 pkg1
cmrunpkg : Completed successfully on all packages specified.
: 원격으로도 패키지를 올릴 수 있음.
: 패키지를 기동하면 클러스터링 된 볼륨그룹이 해당 노드에 마운트됨.
4. 노드명 및 패키지명 확인하기(실행상태 확인)
[rpdb2:/etc/cmcluster/pkg1]#cmviewcl
CLUSTER STATUS
rpdb up
NODE STATUS STATE
rpdb1 up running
rpdb2 up running
PACKAGE STATUS STATE AUTO_RUN NODE
pkg1 up running disabled rpdb2
5. 한 노드에서 패키지 다운시키고 볼륨그룹 umount하기
cmhaltpkg 패키지명
6. 로그파일위치(절체 및 명령 수행과정이 모두 로깅됨.)
/etc/cmcluster/패키지명 디렉토리에 로그파일 생성됨.
*********** 일반 시나리오 ************
일반적으로 오라클과 같은 소프트웨어를 어레이에 설치하고 MC Service Guard와
같은 클러스터링 소프트웨어를 이용하여 A Node와 B Node를 장애발생시 자동으로
절체하도록 구성한다.
만약 A Node에서 서비스가 구동중이다가 Heart Bit이 체크되지 않거나 서비스에
장애가 발생하면 A Node에서 서비스 프로그램이 종료되고 데이터베이스를 종료
시키고 해당 파일시스템과 볼륨그룹을 UMOUNT한다. 그리고 네트워크 설정을
변경한다.
네트워크 설정이 완료되면 B Node에서 볼륨그룹과 파일시스템을 MOUNT하고 데이터
베이스를 기동한 뒤 서비스를 실행시킴으로서 HA의 절체가 완료된다.
만약 오라클 프로세스가 정상적으로 종료 (sqlplus에서 immediatly옵션)되지 않거나
UMOUNT할 볼륨에 사용자가 있으면 fuser 명령으로 해당 사용자를 강제종료 시킨다.
이때 레드캐슬이나 eTrust와 같은 서버보안솔루션이 있을 경우 kill -9 명령은 자동으로
거부될 수 있기 때문에 클러스터링 S/W가 정상적으로 실행되지 않을 수 있다.
주의해야할 부분이다.