Solaris OS용 Sun Cluster 데이터 서비스 개발 안내서

제어 및 초기화 콜백 메소드

기본 제어 및 초기화 콜백 메소드에서 자원을 시작 및 중지합니다. 다른 메소드는 자원에서 초기화 및 종료 코드를 실행합니다.

Start

자원을 포함하는 자원 그룹이 해당 노드에서 온라인 상태가 되면 클러스터 노드에서 이 필수 메소드가 호출됩니다. 이 메소드는 해당 노드에서 자원을 활성화합니다.

활성화한 자원이 시작되고 로컬 노드에서 사용할 수 있을 때까지 Start 메소드를 종료하면 안 됩니다. 따라서 종료하기 전에 Start 메소드에서 자원을 폴링하여 자원을 시작했는지 확인해야 합니다. 그리고 이 메소드에 충분한 시간 초과값을 설정해야 합니다. 예를 들어, 데이터베이스 데몬 같은 특정 자원은 시작하는 데 시간이 더 걸리므로, 메소드에 더 긴 시간 초과값이 있어야 합니다.

RGM에서 Start 메소드의 실패에 응답하는 방법은 Failover_mode 등록 정보의 설정에 따라 다릅니다.

자원 유형 등록 파일의 START_TIMEOUT 등록 정보에서 자원의 Start 메소드에 대한 시간 초과값을 설정합니다.

Stop

자원을 포함하는 자원 그룹이 해당 노드에서 오프라인이 될 경우 클러스터 노드에서 이 필수 메소드가 호출됩니다. 이 메소드는 자원이 활성화된 경우 자원을 비활성화합니다.

메소드에서 제어하는 자원이 로컬 노드에서 모든 활동을 완전히 중지하고 모든 파일 설명자를 닫을 때까지 Stop 메소드는 종료되지 않아야 합니다. 그렇지 않으면 RGM에서 자원이 중지된 것으로 가정하기 때문에 실제 활성화되어 있으면 데이터 손상이 발생할 수 있습니다. 데이터 손상을 방지할 수 있는 가장 안전한 방법은 자원에 관련된 로컬 노드에서 모든 프로세스를 종료하는 것입니다.

종료하기 전에 Stop 메소드에서 자원을 폴링하여 중지되었는지 확인해야 합니다. 그리고 이 메소드에 충분한 시간 초과값을 설정해야 합니다. 예를 들어, 데이터베이스 데몬 같은 특정 자원은 중지하는 데 시간이 더 걸리므로, 메소드에 더 긴 시간 초과값이 있어야 합니다.

RGM에서 Stop 메소드의 실패에 응답하는 방법은 Failover_mode 등록 정보의 설정에 따라 다릅니다(표 A–2 참조).

자원 유형 등록 파일의 STOP_TIMEOUT 등록 정보에서 자원의 Stop 메소드에 대한 시간 초과값을 설정합니다.

Init

자원이 관리 상태가 될 경우, 즉 자원이 속해 있는 자원 그룹이 관리 해제 상태에서 관리 상태로 전환되거나 이미 관리 상태인 자원 그룹에 자원이 만들어진 경우 자원의 일회성 초기화를 위해 이 선택적인 메소드가 호출됩니다. Init_nodes 자원 등록 정보에서 결정한 노드에서 메소드가 호출됩니다.

Fini

자원이 관리 해제 상태가 될 경우, 즉 자원이 속하는 자원 그룹이 관리 해제 상태로 전환되거나 관리 상태인 자원 그룹에서 자원이 삭제될 경우 정리를 위해 이 선택적인 메소드가 호출됩니다. Init_nodes 자원 등록 정보에서 결정한 노드에서 메소드가 호출됩니다.

Boot

자원을 포함하는 자원 그룹을 RGM이 관리하는 경우 Init와 유사한 이 선택적인 메소드를 호출하여 노드에서 자원을 초기화합니다. Init_nodes 자원 등록 정보에서 결정한 노드에서 메소드가 호출됩니다. 부트 또는 재부트 결과 노드가 클러스터에 결합되거나 재결합될 경우 Boot 메소드가 호출됩니다.


주 –

Init, Fini 또는 Boot 메소드의 실패로 syslog() 함수에서 오류 메시지를 생성하지만 자원의 RGM 관리에는 영향을 미치지 않습니다.