이 장에서는 데이터 서비스 개발 라이브러리(DSDL) API 함수를 나열하고 이에 대해 간략하게 설명합니다. 각 DSDL 함수에 대한 전체 설명은 개별 3HA 설명서 페이지에 나와 있습니다. DSDL은 C 인터페이스만 정의하며 스크립팅 가능한 DSDL 인터페이스는 존재하지 않습니다.
다음 세부절에서는 DSDL 함수의 각 범주에 대해 개괄적으로 설명합니다. DSDL 함수에 대한 전체 설명은 개별 3HA 설명서 페이지에서 확인할 수 있습니다.
이 절에 포함된 함수는 광범위한 기능을 제공합니다. 이러한 함수를 사용하여 다음 작업을 수행할 수 있습니다.
DSDL 환경 초기화
자원, 자원 유형 및 자원 그룹 이름과 확장 등록 정보 값 검색
자원 그룹 페일오버와 재시작 및 자원 재시작
오류 문자열을 오류 메시지로 변환
시간 초과 이전에 명령 실행
scds_initialize – 자원을 할당하고 DSDL 환경을 초기화합니다.
scds_close – scds_initialize에서 할당한 자원을 해제합니다.
다음 함수는 자원, 자원 유형, 자원 그룹 및 확장 등록 정보에 대한 정보를 검색합니다.
scds_get_resource_name – 호출 프로그램에 대한 자원 이름을 검색합니다.
scds_get_resource_type_name – 호출 프로그램에 대한 자원 유형의 이름을 검색합니다.
scds_get_resource_group_name – 호출 프로그램에 대한 자원 그룹의 이름을 검색합니다.
scds_get_ext_property – 지정된 확장 등록 정보의 값을 검색합니다.
scds_free_ext_property – scds_get_ext_property에서 할당한 메모리를 해제합니다.
다음 함수는 자원이 사용하는 SUNW.HAStoragePlus 자원에 대한 상태 정보를 검색합니다.
scds_hasp_check – 자원이 사용하는 SUNW.HAStoragePlus 자원에 대한 상태 정보를 검색합니다. 자원에 대해 정의된 Resource_dependencies 또는 Resource_dependencies_weak 시스템 등록 정보를 사용하여 자원이 의존하는 모든 SUNW.HAStoragePlus 자원의 상태(온라인 또는 기타)에서 이 정보를 가져옵니다.
SUNW.HAStoragePlus에 대한 자세한 내용은 SUNW.HAStoragePlus(5)를 참조하십시오.
다음 함수는 자원이나 자원 그룹을 페일오버 또는 재시작합니다.
scds_failover_rg – 자원 그룹을 페일오버합니다.
scds_restart_rg – 자원 그룹을 다시 시작합니다.
scds_restart_resource – 자원을 다시 시작합니다.
다음 두 개의 함수는 시간 초과 이전에 명령을 실행하고 오류 코드를 오류 메시지로 변환합니다.
scds_timerun – 시간 초과값 이전에 명령을 실행합니다.
scds_error_string – 오류 코드를 오류 문자열로 변환합니다.
이러한 함수는 일반적으로 사용되는 일부 확장 등록 정보를 비롯하여 관련 자원, 자원 그룹 및 자원 유형의 특정 등록 정보에 액세스하기 위한 일반 API를 제공합니다. DSDL은 명령줄 인자를 구문 분석하기 위해 scds_initialize 함수를 제공합니다. 그런 다음 DSDL은 관련 자원, 자원 그룹 및 자원 유형의 다양한 등록 정보를 캐싱합니다.
이러한 함수는 scds_property_functions(3HA) 설명서 페이지에 모두 설명되어 있습니다. 이 절에 포함된 함수는 다음과 같습니다.
scds_get_rs_property_name
scds_get_rg_property_name
scds_get_rt_property_name
scds_get_ext_property_name
이 절에 나열된 함수는 자원 및 자원 그룹에 사용되는 네트워크 자원을 검색, 인쇄 및 해제합니다. 이 절의 scds_get_* 함수는 RMAPI 함수를 사용하여 Network_resources_used 및 Port_list와 같은 특정 등록 정보를 쿼리하지 않고 네트워크 자원을 검색하는 편리한 방법을 제공합니다. scds_print_name() 함수는 scds_get_ name() 함수에서 반환된 데이터 구조의 값을 인쇄합니다. scds_free_ name() 함수는 scds_get_name() 함수에서 할당한 메모리를 해제합니다.
scds_get_rg_hostnames – 자원 그룹의 네트워크 자원에 사용되는 호스트 이름 목록을 검색합니다.
scds_get_rs_hostnames – 자원에 사용되는 호스트 이름 목록을 검색합니다.
scds_print_net_list – scds_get_rg_hostnames 또는 scds_get_rs_hostnames에서 반환한 호스트 이름 목록의 내용을 인쇄합니다.
scds_free_net_list – scds_get_rg_hostnames 또는 scds_get_rs_hostnames에서 할당한 메모리를 해제합니다.
다음 함수는 포트 목록과 관련됩니다.
scds_get_port_list – 자원에 사용되는 포트/프로토콜 쌍 목록을 검색합니다.
scds_print_port_list – scds_get_port_list에서 반환한 포트/프로토콜 쌍 목록의 내용을 인쇄합니다.
scds_free_port_list – scds_get_port_list에서 할당한 메모리를 해제합니다.
scds_get_netaddr_list – 자원에서 사용하는 네트워크 주소 목록을 검색합니다.
scds_print_netaddr_list – scds_get_netaddr_list에서 반환한 네트워크 주소 목록의 내용을 인쇄합니다.
scds_free_netaddr_list – scds_get_netaddr_list에서 할당한 메모리를 해제합니다.
이 절의 함수는 TCP 기반 모니터를 사용 가능하게 합니다. 일반적으로 오류 모니터는 이러한 함수를 사용하여 서비스에 대한 간단한 소켓 연결을 설정하고 상태를 확인하기 위해 데이터를 읽어 서비스에 기록한 다음 서비스와의 연결을 끊습니다.
scds_tcp_connect – 프로세스에 대한 TCP 연결을 설정합니다.
scds_tcp_read – TCP 연결을 사용하여 모니터하는 중인 프로세스에서 데이터를 읽습니다.
scds_tcp_write – TCP 연결을 사용하여 모니터하는 중인 프로세스에 데이터를 기록합니다.
scds_simple_probe – 프로세스에 대한 TCP 연결을 설정 및 종료하여 프로세스를 검사합니다.
scds_tcp_disconnect – 모니터하는 중인 프로세스에 대한 연결을 종료합니다.
이러한 함수는 PMF 기능을 캡슐화합니다. PMF를 통해 모니터하기 위한 DSDL 모델은 pmfadm(1M)에 대한 암시적 tag 값을 만들어 사용합니다. 또한 PMF 기능은 Restart_interval, Retry_count 및 action_script (pmfadm에 대한 -t, -n 및 -a 옵션)에 대해 암시적 값을 사용합니다. 더욱 중요한 점은 DSDL이 재시작 또는 페일오버 결정을 계산하기 위해 PMF에서 검색된 프로세스 중지 기록을 오류 모니터에서 감지된 응용 프로그램 실패 기록에 연결한다는 것입니다.
scds_pmf_get_status – 지정된 인스턴스가 PMF 제어 하에서 모니터되고 있는지 확인합니다.
scds_pmf_restart_fm – PMF를 사용하여 오류 모니터를 다시 시작합니다.
scds_pmf_signal – 지정된 신호를 PMF 제어 하에서 실행 중인 프로세스 트리에 보냅니다.
scds_pmf_start – 지정된 프로그램(오류 모니터 포함)을 PMF 제어 하에서 실행합니다.
scds_pmf_stop – PMF 제어 하에서 실행 중인 프로세스를 종료합니다.
scds_stop_monitoring — PMF 제어 하에서 실행 중인 프로세스의 모니터를 중지합니다.
이 절의 함수는 오류 기록을 유지하고 이를 Retry_count 및 Retry_interval 등록 정보와 함께 평가하여 미리 지정된 오류 모니터 모델을 제공합니다.
이 절에 포함된 함수는 다음과 같습니다.
scds_fm_sleep – 오류 모니터 제어 소켓에서 메시지를 대기합니다.
scds_fm_action – 검사가 완료된 후에 작업을 수행합니다.
scds_fm_print_probes – 검사 상태 정보를 시스템 로그에 기록합니다.
이 절의 함수를 사용하면 메시지 및 디버깅 메시지를 시스템 로그에 기록할 수 있습니다. 이 절에는 다음 두 개의 함수가 포함되어 있습니다.
scds_syslog – 메시지를 시스템 로그에 기록합니다.
scds_syslog_debug – 디버깅 메시지를 시스템 로그에 기록합니다.