3.2. SAP HANA srConnectionChanged() 후크 활성화
SAP의 HA/DR 공급자 구현에 설명된 대로 SAP HANA의 최신 버전은 SAP HANA가 특정 이벤트에 대한 알림을 보낼 수 있는 "hooks"를 제공합니다. srConnectionChanged()
후크를 사용하면 HA 클러스터의 상태가 변경될 때 이를 감지하기 위해 HA 클러스터의 기능이 개선되어 작업을 수행해야 할 때와 데이터 손실/데이터 손상이 발생하지 않도록 할 수 있습니다.
SAP HANA 2.0 SPS0 이상 및 srConnectionChanged()
후크를 지원하기 위한 구성 요소를 제공하는 resource-agents-sap-hana
패키지 버전을 사용하는 경우 HA 클러스터 설정을 진행하기 전에 후크를 활성화해야 합니다.
3.2.1. resource-agents-sap-hana
패키지 버전 확인
RHEL 9 버전에 대해 srConnectionChanged()
후크를 활성화하는 데 필요한 구성 요소를 제공하는 resource-agents-sap-hana
패키지의 올바른 버전이 설치되어 있는지 확인하십시오. 자세한 내용은 How can the srConnectionChanged() hook to improve the detection of situations where a takeover is required, in a Red Hat Pacemaker cluster managing HANA scale-up or scale-out System Replication? ?
3.2.2. 모든 SAP HANA 인스턴스에서 srConnectionChanged()
후크 활성화
srConnectionChanged()
후크를 활성화하는 단계는 모든 HA 클러스터 노드의 각 SAP HANA 인스턴스에 대해 수행해야 합니다.
두 노드에서 HA 클러스터를 중지합니다. 이 명령은 하나의 HA 클러스터 노드에서만 실행해야 합니다.
[root]# pcs cluster stop --all
모든 SAP HANA 인스턴스가 완전히 중지되었는지 확인합니다.
각 노드에서 SAP HANA
global.ini
파일을 업데이트하여 두 SAP HANA 인스턴스에서 후크 스크립트를 사용할 수 있도록 합니다(예:/hana/shared/RH1/global/hdb/custom/config/global.ini
).[ha_dr_provider_SAPHanaSR] provider = SAPHanaSR path = /usr/share/SAPHanaSR/srHook execution_order = 1 [trace] ha_dr_saphanasr = info
각 HA 클러스터 노드에서 다음 명령을 실행하고 아래 내용을 추가하여
/etc/sudoers.d/20-saphana
파일을 생성하여 후크 스크립트에서srConnectionChanged()
후크가 호출될 때 노드 속성을 업데이트할 수 있도록 합니다.[root]# visudo -f /etc/sudoers.d/20-saphana Cmnd_Alias DC1_SOK = /usr/sbin/crm_attribute -n hana_rh1_site_srHook_DC1 -v SOK -t crm_config -s SAPHanaSR Cmnd_Alias DC1_SFAIL = /usr/sbin/crm_attribute -n hana_rh1_site_srHook_DC1 -v SFAIL -t crm_config -s SAPHanaSR Cmnd_Alias DC2_SOK = /usr/sbin/crm_attribute -n hana_rh1_site_srHook_DC2 -v SOK -t crm_config -s SAPHanaSR Cmnd_Alias DC2_SFAIL = /usr/sbin/crm_attribute -n hana_rh1_site_srHook_DC2 -v SFAIL -t crm_config -s SAPHanaSR rh1adm ALL=(ALL) NOPASSWD: DC1_SOK, DC1_SFAIL, DC2_SOK, DC2_SFAIL Defaults!DC1_SOK, DC1_SFAIL, DC2_SOK, DC2_SFAIL !requiretty
rh1
을 SAP HANA 설치의 소문자 SID로 바꾸고DC1
및DC2
를 SAP HANA 사이트 이름으로 교체합니다.Defaults
설정이 필요한 이유에 대한 자세한 내용은 복제가 정상 상태인 경우에도 SAP HANA 시스템 복제를 관리하는 Pacemaker 클러스터에서 The srHook 특성을 SFAIL로 설정합니다.HA 클러스터를 시작하지 않고 두 HA 클러스터 노드에서 SAP HANA 인스턴스를 수동으로 시작합니다.
[rh1adm]$ HDB start
후크 스크립트가 예상대로 작동하는지 확인합니다. SAP HANA 인스턴스 중지와 같은 후크를 트리거하려면 몇 가지 작업을 수행합니다. 그런 다음 후크가 아래 방법과 같은 방법을 사용하여 아무것도 기록했는지 확인합니다.
[rh1adm]$ cdtrace [rh1adm]$ awk '/ha_dr_SAPHanaSR.*crm_attribute/ { printf "%s %s %s %s\n",$2,$3,$5,$16 }' nameserver_* 2018-05-04 12:34:04.476445 ha_dr_SAPHanaSR SFAIL 2018-05-04 12:53:06.316973 ha_dr_SAPHanaSR SOK [rh1adm]# grep ha_dr_ *
참고SAP HANA 후크가 올바르게 작동하는지 확인하는 방법에 대한 자세한 내용은 SAP 문서 설치 및 HA/DR 공급자 스크립트를 참조하십시오.
후크의 기능을 확인하면 HA 클러스터를 다시 시작할 수 있습니다.
[root]# pcs cluster start --all