로컬 클러스터가 파트너 클러스터와의 하트비트 손실을 감지할 때 실행되는 작업 쉘 스크립트를 작성할 수 있습니다. 루트 권한으로 이 스크립트를 실행합니다. 이 파일에는 루트 소유권 및 실행 권한이 있지만 스크립트에는 쓰기 권한이 없습니다.
Notification_actioncmd 등록 정보를 구성한 경우 작업 명령은 다음 명령줄에서 이벤트에 대한 정보를 제공하는 인수와 함께 실행됩니다.
# customactioncommandpath -c localclustername -r remoteclustername -e 1 \ -n nodename -t time |
사용자가 작성한 조치 명령에 대한 경로를 지정합니다.
로컬 클러스터의 이름을 지정합니다.
원격 파트너 클러스터의 이름을 지정합니다.
하트비트 손실 이벤트가 발생했음을 표시하는 HBLOST=1을 지정합니다. Sun Cluster Geographic Edition 소프트웨어는 하트비트 손실 알림만 지원하기 때문에 -e 1만 작업 쉘 스크립트로 통과될 수 있는 값입니다.
하트비트 손실 이벤트 알림을 송신한 클러스터 노드의 이름을 지정합니다.
하트비트 손실 이벤트의 시간을 1970년 1월 1일, 00:00:00 GMT 이후의 밀리초로 지정합니다.
이 스크립트를 사용하여 보조 클러스터에서 자동 인계를 수행할 수 있습니다. 그러나 그런 자동화 조치는 위험합니다. 하트비트 손실 알림이 기본 및 보조 클러스터 모두의 모든 하트비트 연결의 완전한 손실에 의해 유발되는 경우 위와 같은 자동화 조치는 두 개의 기본 클러스터가 존재하는 상황을 만들 수 있습니다.
이 예에서는 알림 작업 쉘 스크립트에서 구문 분석된 명령줄에 제공되는 이벤트 정보를 표시합니다.
#!/bin/sh set -- `getopt abo: $*` if [ $? != 0] then echo $USAGE exit 2 fi for i in $* do case $i in -p) PARTNER_CLUSTER=$1; shift;; -e) HB_EVENT=$2; shift;; -c) LOCAL_CLUSTER=$3; shift;; -n) EVENT_NODE=$4; shift;; esac done |