Wysoka dostępność oprogramowania SAP NetWeaver na maszynach wirtualnych Azure w systemie SUSE Linux Enterprise Server dla aplikacji SAP z wieloma identyfikatorami SID

W tym artykule opisano sposób wdrażania wielu systemów SAP NetWeaver lub S/4HANA o wysokiej dostępności (multi-SID) w klastrze dwuwęzłowym na maszynach wirtualnych Azure z systemem SUSE Linux Enterprise Server for SAP Applications. Klastrowanie z wieloma identyfikatorami SID umożliwia uruchamianie wielu wystąpień SAP z różnymi identyfikatorami systemu w tym samym klastrze Pacemaker, optymalizowanie wykorzystania zasobów przy zachowaniu wysokiej dostępności.

W przykładowych konfiguracjach, poleceniach instalacji itd. trzy systemy SAP NetWeaver 7.50 są wdrażane w jednym klastrze o wysokiej dostępności z dwoma węzłami. Identyfikatory SID systemów SAP to:

  • NW1: numer wystąpienia ASCS 00 i nazwa hosta wirtualnego msnw1ascs; numer wystąpienia ERS 02 i nazwa hosta wirtualnego msnw1ers.

  • NW2: numer wystąpienia ASCS 10 i nazwa hosta wirtualnego msnw2ascs; numer wystąpienia ERS 12 i nazwa hosta wirtualnego msnw2ers.

  • NW3: numer wystąpienia usługi ASCS 20 i nazwa hosta wirtualnego msnw3ascs; Liczba wystąpień ERS 22 i nazwa hosta wirtualnego msnw3ers.

Artykuł nie obejmuje warstwy bazy danych i udostępnienia udziałów SAP NFS. W przykładach w tym artykule używamy nazw wirtualnych nw2-nfs dla udziałówNW2 NFS i nw3-nfs dla udziałów NW3 NFS, zakładając, że wdrożono klaster NFS.

Przed rozpoczęciem najpierw zapoznaj się z następującymi uwagami i dokumentami SAP:

Overview

Maszyny wirtualne, które uczestniczą w klastrze, muszą być odpowiednio dobrane rozmiarowo, aby w razie wystąpienia awarii mogły uruchomić wszystkie zasoby. Każdy identyfikator SID SAP może przełączać się niezależnie od pozostałych w klastrze wysokiej dostępności z wieloma identyfikatorami SID. W przypadku używania ogrodzenia SBD urządzenia SBD mogą być współużytkowane między wieloma klastrami.

Aby zapewnić wysoką dostępność, oprogramowanie SAP NetWeaver wymaga udziałów NFS o wysokiej dostępności. W tym przykładzie zakładamy, że udziały SAP NFS są hostowane na serwerze plików NFS, który charakteryzuje się wysoką dostępnością i którego może używać wiele systemów SAP. Lub udziały są wdrażane na woluminach Azure NetApp Files NFS.

Diagram klastra Pacemaker ze szczegółowymi informacjami na temat dwóch klastrów z wieloma identyfikatorami SID.

Ważne

Obsługa klastrowania wielu identyfikatorów SID SAP ASCS/ERS z systemem SUSE Linux jako systemem operacyjnym gościa na maszynach wirtualnych Azure jest ograniczona do pięciu (5) identyfikatorów SID SAP w tym samym klastrze. Każdy nowy identyfikator SID zwiększa złożoność. Połączenie serwera Enqueue Replication Server 1 i Enqueue Replication Server 2 w tym samym klastrze nie jest obsługiwane. Klastrowanie Multi-SID opisuje instalację wielu instancji SAP ASCS/ERS z różnymi identyfikatorami SID w jednym klastrze Pacemaker. Obecnie klastrowanie z wieloma identyfikatorami SID jest obsługiwane tylko w przypadku usługi ASCS/ERS.

Wskazówka

Klastrowanie wielu identyfikatorów SID usługi SAP ASCS/ERS jest rozwiązaniem o większej złożoności. Implementacja jest bardziej skomplikowana. Wiąże się to również z większym nakładem pracy administracyjnej podczas wykonywania działań konserwacyjnych (takich jak stosowanie poprawek systemu operacyjnego). Przed rozpoczęciem rzeczywistej implementacji należy dokładnie zaplanować wdrożenie oraz wszystkie zaangażowane komponenty, takie jak maszyny wirtualne, montowanie NFS, adresy IP VIP, konfiguracje modułu równoważenia obciążenia, i tak dalej.

Serwer NFS, SAP NetWeaver ASCS, SAP NetWeaver SCS, SAP NetWeaver ERS i baza danych SAP HANA używają wirtualnej nazwy hosta i wirtualnych adresów IP. W Azure moduł równoważenia obciążenia jest wymagany do korzystania z wirtualnego adresu IP. Zalecamy użycie Standardowego równoważnika obciążenia.

Przedstawiona konfiguracja przykładowego klastra z wieloma identyfikatorami SID, zawierającego trzy systemy SAP, pokazuje równoważnik obciążenia z:

  • Adresy IP frontonu dla usługi ASCS: 10.3.1.14 (NW1), 10.3.1.16 (NW2) i 10.3.1.13 (NW3)
  • Adresy IP frontonu dla ERS: 10.3.1.15 (NW1), 10.3.1.17 (NW2) i 10.3.1.19 (NW3)
  • Port sondy 62000 dla NW1 ASCS, 62010 dla NW2 ASCS i 62020 dla NW3 ASCS
  • Port sondy 62102 dla NW1 ASCS, 62112 dla NW2 ASCS i 62122 dla NW3 ASCS

Uwaga

Gdy maszyny wirtualne bez publicznych adresów IP są dodawane do puli zaplecza wewnętrznego Standardowego Azure Load Balancer, nie mają wychodzącej łączności z Internetem. Wymagana jest dalsza konfiguracja umożliwiająca routing do publicznych punktów końcowych. Aby uzyskać szczegółowe informacje na temat uzyskiwania łączności wychodzącej, zobacz łączność z publicznym punktem końcowym dla maszyn wirtualnych korzystających z Azure usługa Load Balancer w warstwie Standardowa w scenariuszach wysokiej dostępności SAP.

Ważne

  • Nie włączaj sygnatur czasowych PROTOKOŁU TCP na maszynach wirtualnych Azure umieszczonych za Azure Load Balancer. Włączenie znaczników czasowych protokołu TCP powoduje niepowodzenie testów kondycji. net.ipv4.tcp_timestamps Ustaw parametr na 0. Aby uzyskać szczegółowe informacje, zobacz Load Balancer sondy kondycji.
  • Aby zapobiec saptune zmianie ręcznie ustawionej net.ipv4.tcp_timestamps wartości z 0 powrotem na 1, należy zaktualizować saptune wersję do wersji 3.1.1 lub nowszej. Aby uzyskać więcej informacji, zobacz Saptune 3.1.1 — Czy muszę zaktualizować?

Zasoby SAP NFS

Oprogramowanie SAP NetWeaver wymaga współdzielonej pamięci masowej dla transportu, katalogu profilu itd. W przypadku systemu SAP o wysokiej dostępności ważne jest posiadanie udziałów NFS o wysokiej dostępności. Należy zdecydować o architekturze udziałów SAP NFS. Jedną z opcji jest utworzenie wysokodostępnego klastra NFS na maszynach wirtualnych Azure z systemem SUSE Linux Enterprise Server, który można udostępniać między wieloma systemami SAP.

Inną opcją jest wdrożenie udziałów na woluminach Azure NetApp Files NFS. Dzięki Azure NetApp Files można zyskać wbudowaną wysoką dostępność dla udziałów NFS SAP.

Wdrażanie pierwszego systemu SAP w klastrze

Na podstawie architektury udostępnień SAP NFS, wdrażaj pierwszy system SAP w klastrze, zgodnie z odpowiednią dokumentacją.

W opisanych artykułach przedstawiono procedurę przygotowywania niezbędnych infrastruktury, kompilowania klastra i przygotowywania systemu operacyjnego do uruchamiania aplikacji SAP.

Wskazówka

Przetestuj zawsze funkcjonalność przełączania awaryjnego klastra po wdrożeniu pierwszego systemu i przed dodaniem kolejnych identyfikatorów SID SAP do klastra. Testowanie ma kluczowe znaczenie, aby wiedzieć, że funkcja klastra działa przed dodaniem złożoności dodatkowych systemów SAP do klastra.

Wdrażanie wielu systemów SAP w klastrze

W tym przykładzie przyjęto założenie, że system NW1 został już wdrożony w klastrze. Demonstrujemy również sposób wdrażania systemów SAP NW2 i NW3 w klastrze.

Następujące elementy są poprzedzone prefiksem:

  • [A] — dotyczy wszystkich węzłów
  • [1] — dotyczy tylko węzła 1
  • [2] — dotyczy tylko węzła 2

Prerequisites

Ważne

Przed wykonaniem instrukcji wdrażania więcej niż jednego systemu SAP w klastrze postępuj zgodnie z instrukcjami, aby wdrożyć pierwszy system SAP w klastrze, ponieważ istnieją kroki niezbędne tylko podczas pierwszego wdrożenia systemu.

W tej dokumentacji przyjęto założenie, że:

  • Klaster Pacemaker jest już skonfigurowany i uruchomiony.
  • Co najmniej jeden system SAP (wystąpienie ASCS/ERS) jest już wdrożony i działa w klastrze.
  • Funkcja failover klastra jest testowana.
  • Udziały NFS dla wszystkich systemów SAP zostały wdrożone.

Przygotowanie do instalacji oprogramowania SAP NetWeaver

  1. Dodaj konfigurację nowo wdrożonego systemu (NW2 i NW3 do istniejącej Azure Load Balancer, postępując zgodnie z instrukcjami konfiguruj Azure Load Balancer ręcznie za pośrednictwem portalu Azure. Dostosuj adresy IP, porty sondy kondycji oraz reguły równoważenia obciążenia dla twojej konfiguracji.

  2. [A] Skonfiguruj rozpoznawanie nazw dla innych systemów SAP. Można użyć serwera DNS lub zmodyfikować /etc/hosts na wszystkich węzłach. Ten przykład pokazuje, jak używać pliku /etc/hosts. Dostosuj adresy IP i nazwy hostów do środowiska.

    sudo vi /etc/hosts
    
    # IP address of the load balancer frontend configuration for NW2 ASCS
    10.3.1.16 msnw2ascs
    
    # IP address of the load balancer frontend configuration for NW3 ASCS
    10.3.1.13 msnw3ascs
    
    # IP address of the load balancer frontend configuration for NW2 ERS
    10.3.1.17 msnw2ers
    
    # IP address of the load balancer frontend configuration for NW3 ERS
    10.3.1.19 msnw3ers
    
    # IP address for virtual host name for the NFS server for NW2
    10.3.1.31 nw2-nfs
    
    # IP address for virtual host name for the NFS server for NW3
    10.3.1.32 nw3-nfs
    
  3. [A] Utwórz katalogi udostępnione dla systemów SAP NW2 i NW3 wdrażanych w klastrze.

    sudo mkdir -p /sapmnt/NW2
    sudo mkdir -p /usr/sap/NW2/SYS
    sudo mkdir -p /usr/sap/NW2/ASCS10
    sudo mkdir -p /usr/sap/NW2/ERS12
    sudo mkdir -p /sapmnt/NW3
    sudo mkdir -p /usr/sap/NW3/SYS
    sudo mkdir -p /usr/sap/NW3/ASCS20
    sudo mkdir -p /usr/sap/NW3/ERS22
    
    sudo chattr +i /sapmnt/NW2
    sudo chattr +i /usr/sap/NW2/SYS
    sudo chattr +i /usr/sap/NW2/ASCS10
    sudo chattr +i /usr/sap/NW2/ERS12
    sudo chattr +i /sapmnt/NW3
    sudo chattr +i /usr/sap/NW3/SYS
    sudo chattr +i /usr/sap/NW3/ASCS20
    sudo chattr +i /usr/sap/NW3/ERS22
    
  4. [A] Skonfiguruj autofs, aby zamontować /sapmnt/SID i /usr/sap/SID/SYS systemy plików dla innych systemów SAP wdrażanych w klastrze. W tym przykładzie NW2 i NW3.

    Zaktualizuj plik /etc/auto.direct przy użyciu systemów plików dla innych systemów SAP wdrażanych w klastrze.

    Aby zainstalować nowo dodane udziały, należy ponownie uruchomić usługę autofs .

Instalowanie usługi ASCS/ERS

  1. Utwórz zasoby klastra dla wirtualnego adresu IP i sondy kondycji dla instancji ASCS drugiego systemu SAP, którą wdrażasz w klastrze. Pokazany przykład dotyczy serwerów NW2 i NW3 ASCS przy użyciu serwera NFS o wysokiej dostępności.

    Ważne

    Ostatnie testy wykazały sytuacje, w których netcat przestaje odpowiadać na żądania z powodu zaległości i ograniczenia obsługi tylko jednego połączenia. Zasób netcat przestaje nasłuchiwać żądań modułu równoważenia obciążenia Azure, a pływający adres IP staje się niedostępny. W przypadku istniejących klastrów Pacemaker zalecaliśmy w przeszłości zastąpienie netcat przez socat. Obecnie zalecamy używanie azure-lb agenta zasobów, który jest częścią agentów zasobów pakietu z następującymi wymaganiami dotyczącymi wersji pakietu:

    • W przypadku systemu SLES 12 SP4/SP5 wymagana jest wersja co najmniej resource-agents-4.3.018.a7fb5035-3.30.1.
    • W przypadku systemu SLES 15/15 SP1 wersja musi być przynajmniej resource-agents-4.3.0184.6ee15eb2-4.13.1.

    Zmiana wymaga krótkiego przestoju. W przypadku istniejących klastrów Pacemaker, jeśli konfiguracja została już zmieniona tak, aby korzystała z socat, zgodnie z opisem w Utwardzanie wykrywania w Azure Load-Balancer, nie trzeba przełączać się natychmiast na agenta zasobów azure-lb.

    sudo crm configure primitive fs_NW2_ASCS Filesystem device='nw2-nfs:/NW2/ASCS' directory='/usr/sap/NW2/ASCS10' fstype='nfs4' \
       op start timeout=60s interval=0 \
       op stop timeout=60s interval=0 \
       op monitor interval=20s timeout=40s
    
    sudo crm configure primitive vip_NW2_ASCS IPaddr2 \
        params ip=10.3.1.16 \
        op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW2_ASCS azure-lb port=62010 \
        op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW2_ASCS fs_NW2_ASCS nc_NW2_ASCS vip_NW2_ASCS \
         meta resource-stickiness=3000
    
    sudo crm configure primitive fs_NW3_ASCS Filesystem device='nw3-nfs:/NW3/ASCS' directory='/usr/sap/NW3/ASCS20' fstype='nfs4' \
        op start timeout=60s interval=0 \
        op stop timeout=60s interval=0 \
        op monitor interval=20s timeout=40s
    
    sudo crm configure primitive vip_NW3_ASCS IPaddr2 \
       params ip=10.3.1.13 \
       op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW3_ASCS azure-lb port=62020 \
       op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW3_ASCS fs_NW3_ASCS nc_NW3_ASCS vip_NW3_ASCS \
        meta resource-stickiness=3000
    

    Podczas tworzenia zasobów mogą one być przypisywane do różnych zasobów klastra. Gdy je zgrupujesz, zostaną przeniesione na jeden z węzłów klastra. Upewnij się, że stan klastra jest prawidłowy i że wszystkie zasoby są uruchomione. Nie jest ważne, na którym węźle działają zasoby.

  2. [1] Instalowanie oprogramowania SAP NetWeaver ASCS

    Zainstaluj program SAP NetWeaver ASCS jako użytkownik root, przy użyciu wirtualnej nazwy hosta odwzorowującej adres IP konfiguracji frontendu modułu równoważenia obciążenia dla usługi ASCS. Na przykład w przypadku systemu NW2 wirtualna nazwa hosta to msnw2ascs, 10.3.1.16 i numer wystąpienia użyty do sondowania modułu równoważenia obciążenia, na przykład 10. dla systemu NW3 wirtualna nazwa hosta to msnw3ascs, 10.3.1.13 i numer wystąpienia użyty do sondy modułu równoważenia obciążenia, na przykład 20.

    Możesz użyć SAPINST_REMOTE_ACCESS_USER parametru sapinst, aby zezwolić użytkownikowi innego niż główny na nawiązywanie połączenia z oprogramowaniem sapinst. Aby zainstalować oprogramowanie SAP przy użyciu nazwy hosta wirtualnego, można użyć SAPINST_USE_HOSTNAME parametru.

    sudo swpm/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
    

    Jeśli instalacja nie może utworzyć podfolderu w katalogu /usr/sap/SID/ASCSInstance#, spróbuj ustawić właściciela na sidadm i grupę na sapsys dla ASCSInstance# i ponów próbę.

  3. [1] Utwórz zasoby klastra wirtualnego adresu IP i sondy kondycji dla wystąpienia usługi ERS innego systemu SAP wdrażanego w klastrze. Pokazany przykład dotyczy NW2 i NW3 ERS, które używają serwera NFS o wysokiej dostępności.

    sudo crm configure primitive fs_NW2_ERS Filesystem device='nw2-nfs:/NW2/ASCSERS' directory='/usr/sap/NW2/ERS12' fstype='nfs4' \
     op start timeout=60s interval=0 \
     op stop timeout=60s interval=0 \
     op monitor interval=20s timeout=40s
    
    sudo crm configure primitive vip_NW2_ERS IPaddr2 \
     params ip=10.3.1.17 \
     op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW2_ERS azure-lb port=62112 \
     op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW2_ERS fs_NW2_ERS nc_NW2_ERS vip_NW2_ERS
    
    sudo crm configure primitive fs_NW3_ERS Filesystem device='nw3-nfs:/NW3/ASCSERS' directory='/usr/sap/NW3/ERS22' fstype='nfs4' \
     op start timeout=60s interval=0 \
     op stop timeout=60s interval=0 \
     op monitor interval=20s timeout=40s
    
    sudo crm configure primitive vip_NW3_ERS IPaddr2 \
     params ip=10.3.1.19 \
     op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW3_ERS azure-lb port=62122 \
     op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW3_ERS fs_NW3_ERS nc_NW3_ERS vip_NW3_ERS
    

    Podczas tworzenia zasobów mogą one być przypisywane do różnych węzłów klastra. Gdy je zgrupujesz, zostaną przeniesione na jeden z węzłów klastra. Upewnij się, że stan klastra jest prawidłowy i że wszystkie zasoby są uruchomione.

    Następnie upewnij się, że zasoby nowo utworzonej grupy ERS są uruchomione na przeciwnym węźle klastra do tego, na którym zainstalowano wystąpienie ASCS dla tego samego systemu SAP. Jeśli na przykład zainstalowano usługę ASCS NW2 w systemie slesmsscl1, upewnij się, że grupa NW2 ERS jest uruchomiona w systemie slesmsscl2. Grupę NW2 ERS można migrować, uruchamiając następujące polecenie: slesmsscl2

    crm resource migrate g-NW2_ERS slesmsscl2 force
    
  4. [2] Instalowanie oprogramowania SAP NetWeaver ERS

    Zainstaluj program SAP NetWeaver ERS jako użytkownik root na innym węźle, używając wirtualnej nazwy hosta, która mapuje się na adres IP konfiguracji frontendowej równoważenia obciążenia dla systemu ERS. Na przykład dla systemu NW2 nazwa hosta wirtualnego to msnw2ers, 10.3.1.17 i numer wystąpienia użyty do sondy modułu równoważenia obciążenia, na przykład 12. W przypadku systemu NW3, nazwę hosta wirtualnego msnw3ers, 10.3.1.19 oraz numer wystąpienia, którego użyto do sondowania mechanizmu równoważenia obciążenia, na przykład 22.

    Możesz użyć SAPINST_REMOTE_ACCESS_USER parametru sapinst, aby zezwolić użytkownikowi innego niż główny na nawiązywanie połączenia z oprogramowaniem sapinst. Aby zainstalować oprogramowanie SAP przy użyciu nazwy hosta wirtualnego, można użyć SAPINST_USE_HOSTNAME parametru.

    sudo swpm/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
    

    Uwaga

    Użyj SWPM SP 20 PL 05 lub nowszego. Niższe wersje nie ustawiają poprawnie uprawnień powodujących niepowodzenie instalacji.

    Jeśli instalacja nie może utworzyć podfolderu w folderze /usr/sap/NW2/ERSInstance#, następnie ustaw właściciela na sidadm i grupę na sapsys dla folderu ERSInstance# i ponów próbę.

    Jeśli konieczne było przeprowadzenie migracji grupy ERS nowo wdrożonego systemu SAP do innego węzła klastra, nie zapomnij usunąć ograniczenia lokalizacji dla grupy ERS. Ograniczenie można usunąć, uruchamiając następujące polecenie (przykład jest podany dla systemów SAP NW2 i NW3).

    crm resource unmigrate g-NW2_ERS
    crm resource unmigrate g-NW3_ERS
    
  5. [1] Dostosowanie profilów wystąpień ASCS/SCS i ERS dla co najmniej jednego nowo zainstalowanego systemu SAP. Pokazany przykład dotyczy NW2. Należy zmodyfikować profile ASCS/SCS i ERS dla wszystkich instancji SAP dodanych do klastra.

    • Profil ASCS/SCS
    sudo vi /sapmnt/NW2/profile/NW2_ASCS10_msnw2ascs
    
    # Change the restart command to a start command
    #Restart_Program_01 = local $(_EN) pf=$(_PF)
    Start_Program_01 = local $(_EN) pf=$(_PF)
    
    # Add the following lines
    service/halib = $(DIR_EXECUTABLE)/saphascriptco.so
    service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector
    
    # Add the keep alive parameter, if using ENSA1
    enque/encni/set_so_keepalive = TRUE
    

    W przypadku obu systemów ENSA1 i ENSA2 upewnij się, że keepalive parametry systemu operacyjnego zostały ustawione zgodnie z opisem w uwagach sap 1410736.

    • Profil ERS
    sudo vi /sapmnt/NW2/profile/NW2_ERS12_msnw2ers
    
    # Change the restart command to a start command
    #Restart_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID)
    Start_Program_00 = local $(_ER) pf=$(_PFL) NR=$(SCSID)
    
    # Add the following lines
    service/halib = $(DIR_EXECUTABLE)/saphascriptco.so
    service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector
    
    # remove Autostart from ERS profile
    # Autostart = 1
    
  6. [A] Skonfiguruj użytkowników systemu SAP dla nowo wdrożonego systemu SAP, w tym przykładzie NW2 i NW3.

    # Add sidadm to the haclient group
    sudo usermod -aG haclient nw2adm
    sudo usermod -aG haclient nw3adm
    
  7. Dodaj usługi SAP ASCS i ERS dla nowo zainstalowanego sapservice systemu SAP do pliku. Pokazany przykład dotyczy systemów SAP NW2 i NW3.

    Dodaj wpis usługi ASCS do drugiego węzła i skopiuj wpis usługi ERS do pierwszego węzła. Wykonaj polecenia dla każdego systemu SAP na węźle, gdzie zainstalowano instancję ASCS dla systemu SAP.

    # Execute the following commands on slesmsscl1,assuming the NW2 ASCS instance was installed on slesmsscl1
    cat /usr/sap/sapservices | grep ASCS10 | sudo ssh slesmsscl2 "cat >>/usr/sap/sapservices"
    sudo ssh slesmsscl2 "cat /usr/sap/sapservices" | grep ERS12 | sudo tee -a /usr/sap/sapservices
    
    # Execute the following commands on slesmsscl2, assuming the NW3 ASCS instance was installed on slesmsscl2
    cat /usr/sap/sapservices | grep ASCS20 | sudo ssh slesmsscl1 "cat >>/usr/sap/sapservices"
    sudo ssh slesmsscl1 "cat /usr/sap/sapservices" | grep ERS22 | sudo tee -a /usr/sap/sapservices
    
  8. [A] Wyłączanie usług instancji SAP ASCS i ERS. Ten krok ma zastosowanie tylko wtedy, gdy systemd zarządza strukturą uruchamiania SAP zgodnie z SAP Note 3115048.

    Uwaga

    Podczas zarządzania wystąpieniami SAP, takimi jak SAP ASCS i SAP ERS przy użyciu konfiguracji klastra SLES, należy wprowadzić inne modyfikacje w celu zintegrowania klastra z natywną systemową strukturą startową SAP, aby zapewnić, że procedury konserwacji nie zagrażają stabilności klastra. Po zainstalowaniu lub przełączeniu struktury uruchamiania SAP na konfigurację z obsługą systemd zgodnie z SAP Note 3115048, należy wyłączyć usługi dla wystąpień SAP ASCS i ERS.

    # Stop all ASCS and ERS instances using <sid>adm
    sapcontrol -nr 10 -function Stop
    sapcontrol -nr 10 -function StopService
    
    sapcontrol -nr 12 -function Stop
    sapcontrol -nr 12 -function StopService
    
    # Execute below command on VM where you have performed ASCS instance installation for each SAP system (e.g. slesmsscl1)
    sudo systemctl disable SAPNW2_10
    sudo systemctl disable SAPNW3_20
    # Execute below command on VM where you have performed ERS instance installation for each SAP system (e.g. slesmsscl2)
    sudo systemctl disable SAPNW2_12
    sudo systemctl disable SAPNW2_22
    
  9. [1] Utwórz zasoby klastra SAP dla nowo zainstalowanego systemu SAP.

    W zależności od tego, czy korzystasz z systemu ENSA1, czy ENSA2, wybierz odpowiednią kartę, aby zdefiniować zasoby dla systemów NW2 i NW3 . SAP wprowadził obsługę ENSA2, w tym replikacji, w SAP NetWeaver 7.52. Począwszy od platformy ABAP 1809, system ENSA2 jest instalowany domyślnie. Aby uzyskać wsparcie ENSA2, zobacz SAP Note 2630416.

    sudo crm configure property maintenance-mode="true"
    
    sudo crm configure primitive rsc_sap_NW2_ASCS10 SAPInstance \
      operations \$id=rsc_sap_NW2_ASCS10-operations \
      op monitor interval=11 timeout=60 on-fail=restart \
      params InstanceName=NW2_ASCS10_msnw2ascs START_PROFILE="/sapmnt/NW2/profile/NW2_ASCS10_msnw2ascs" \
      AUTOMATIC_RECOVER=false \
      meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10
    
    sudo crm configure primitive rsc_sap_NW2_ERS12 SAPInstance \
      operations \$id=rsc_sap_NW2_ERS12-operations \
      op monitor interval=11 timeout=60 on-fail=restart \
      params InstanceName=NW2_ERS12_msnw2ers START_PROFILE="/sapmnt/NW2/profile/NW2_ERS12_msnw2ers" AUTOMATIC_RECOVER=false IS_ERS=true \
      meta priority=1000
    
    sudo crm configure modgroup g-NW2_ASCS add rsc_sap_NW2_ASCS10
    sudo crm configure modgroup g-NW2_ERS add rsc_sap_NW2_ERS12
    
    sudo crm configure colocation col_sap_NW2_no_both -5000: g-NW2_ERS g-NW2_ASCS
    sudo crm configure location loc_sap_NW2_failover_to_ers rsc_sap_NW2_ASCS10 rule 2000: runs_ers_NW2 eq 1
    sudo crm configure order ord_sap_NW2_first_start_ascs Optional: rsc_sap_NW2_ASCS10:start rsc_sap_NW2_ERS12:stop symmetrical=false
    
    sudo crm configure primitive rsc_sap_NW3_ASCS20 SAPInstance \
      operations \$id=rsc_sap_NW3_ASCS20-operations \
      op monitor interval=11 timeout=60 on-fail=restart \
      params InstanceName=NW3_ASCS10_msnw3ascs START_PROFILE="/sapmnt/NW3/profile/NW3_ASCS20_msnw3ascs" \
      AUTOMATIC_RECOVER=false \
      meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10
    
    sudo crm configure primitive rsc_sap_NW3_ERS22 SAPInstance \
      operations \$id=rsc_sap_NW3_ERS22-operations \
      op monitor interval=11 timeout=60 on-fail=restart \
      params InstanceName=NW3_ERS22_msnw3ers START_PROFILE="/sapmnt/NW3/profile/NW3_ERS22_msnw2ers" AUTOMATIC_RECOVER=false IS_ERS=true \
      meta priority=1000
    
    sudo crm configure modgroup g-NW3_ASCS add rsc_sap_NW3_ASCS20
    sudo crm configure modgroup g-NW3_ERS add rsc_sap_NW3_ERS22
    
    sudo crm configure colocation col_sap_NW3_no_both -5000: g-NW3_ERS g-NW3_ASCS
    sudo crm configure location loc_sap_NW3_failover_to_ers rsc_sap_NW3_ASCS10 rule 2000: runs_ers_NW3 eq 1
    sudo crm configure order ord_sap_NW3_first_start_ascs Optional: rsc_sap_NW3_ASCS20:start rsc_sap_NW3_ERS22:stop symmetrical=false
    sudo crm configure property maintenance-mode="false"
    

Jeśli uaktualniasz starszą wersję i przełączasz się na serwer blokad 2, zobacz SAP Note 2641019.

Upewnij się, że stan klastra ma wartość OK i że wszystkie zasoby są uruchomione. Nie jest ważne, na którym węźle działają zasoby.

W poniższym przykładzie pokazano stan zasobów klastra po dodaniu systemów SAP NW2 i NW3 do klastra.

sudo crm_mon -r

# Online: [ slesmsscl1 slesmsscl2 ]

#Full list of resources:

#stonith-sbd     (stonith:external/sbd): Started slesmsscl1
# Resource Group: g-NW1_ASCS
#     fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
#     nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
#     vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
#     rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
# Resource Group: g-NW1_ERS
#     fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
#     nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
#     vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
#     rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
# Resource Group: g-NW2_ASCS
#     fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
#     nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
#     vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
#     rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
# Resource Group: g-NW2_ERS
#     fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
#     nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
#     vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
#     rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
# Resource Group: g-NW3_ASCS
#     fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
#     nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
#     vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
#     rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
# Resource Group: g-NW3_ERS
#     fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
#     nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
#     vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
#     rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl2

Na poniższej ilustracji pokazano, jak zasoby będą wyglądać w konsoli sieci Web o wysokiej dostępności (HAWK) z zasobami systemu SAP NW2 rozwiniętymi.

Zrzut ekranu ekranu stanu klastra SUSE HAWK SAP NetWeaver.

Uwaga

Klaster SAP ASCS/ERS można rozszerzyć z klastra 2-węzłowego do 3-węzłowego z trzecim węzłem jako węzłem zapasowym na potrzeby trybu failover usług ASCS lub ERS.

  • Konfiguracja 3-węzłowa może być używana tylko dla systemów SAP korzystających z SAP Enqueue Replication Server 2 (ENSA2).
  • Właściwość priority-fencing-delay klastra nie powinna być używana w klastrze 3-węzłowym.

Kontynuuj instalację SAP

Ukończ instalację oprogramowania SAP, wykonując:

Testowanie konfiguracji klastra z wieloma identyfikatorami SID

Poniższe testy są podzbiorem przypadków testowych w przewodnikach najlepszych rozwiązań dotyczących systemu SUSE. Są one dostępne dla Twojej wygody. Aby uzyskać pełną listę testów klastra, zapoznaj się z następującą dokumentacją:

Zawsze przeczytaj przewodniki dotyczące najlepszych rozwiązań SUSE i wykonaj wszystkie testy zgodnie z potrzebami. Testy przedstawione są w klastrze dwuwęzłowym, wielo-SID-owym z zainstalowanymi trzema systemami SAP.

  1. Testowanie HAGetFailoverConfig i HACheckFailoverConfig

    Uruchom następujące polecenia jako <sapsid>adm na węźle, gdzie obecnie działa instancja ASCS. Jeśli w nazwie hosta występują kreski, polecenia mogą zakończyć się niepowodzeniem z błędem FAIL: Niewystarczająca pamięć (znany problem). SUSE ma poprawić to w pakiecie sap-suse-cluster-connector.

     slesmsscl1:nw1adm 57> sapcontrol -nr 00 -function HAGetFailoverConfig
    
    # 10.12.2019 21:33:08
    # HAGetFailoverConfig
    # OK
    # HAActive: TRUE
    # HAProductVersion: SUSE Linux Enterprise Server for SAP Applications 12 SP4
    # HASAPInterfaceVersion: SUSE Linux Enterprise Server for SAP Applications 12 SP4 (sap_suse_cluster_connector 3.1.0)
    # HADocumentation: https://www.suse.com/products/sles-for-sap/resource-library/sap-best-practices/
    # HAActiveNode: slesmsscl1
    # HANodes: slesmsscl1, slesmsscl2
    
    slesmsscl1:nw1adm 53> sapcontrol -nr 00 -function HACheckFailoverConfig
    
    # 19.12.2019 21:19:58
    # HACheckFailoverConfig
    # OK
    # state, category, description, comment
    # SUCCESS, SAP CONFIGURATION, SAPInstance RA sufficient version, SAPInstance includes is-ers patch
    
    slesmsscl2:nw2adm 35> sapcontrol -nr 10 -function HAGetFailoverConfig
    
    # 10.12.2019 21:37:09
    # HAGetFailoverConfig
    # OK
    # HAActive: TRUE
    # HAProductVersion: SUSE Linux Enterprise Server for SAP Applications 12 SP4
    # HASAPInterfaceVersion: SUSE Linux Enterprise Server for SAP Applications 12 SP4 (sap_suse_cluster_connector 3.1.0)
    # HADocumentation: https://www.suse.com/products/sles-for-sap/resource-library/sap-best-practices/
    # HAActiveNode: slesmsscl2
    # HANodes: slesmsscl2, slesmsscl1
    
    slesmsscl2:nw2adm 52> sapcontrol -nr 10 -function HACheckFailoverConfig
    
    # 19.12.2019 21:17:39
    # HACheckFailoverConfig
    # OK
    # state, category, description, comment
    # SUCCESS, SAP CONFIGURATION, SAPInstance RA sufficient version, SAPInstance includes is-ers patch
    
    slesmsscl1:nw3adm 49> sapcontrol -nr 20 -function HAGetFailoverConfig
    
    # 10.12.2019 23:35:36
    # HAGetFailoverConfig
    # OK
    # HAActive: TRUE
    # HAProductVersion: SUSE Linux Enterprise Server for SAP Applications 12 SP4
    # HASAPInterfaceVersion: SUSE Linux Enterprise Server for SAP Applications 12 SP4 (sap_suse_cluster_connector 3.1.0)
    # HADocumentation: https://www.suse.com/products/sles-for-sap/resource-library/sap-best-practices/
    # HAActiveNode: slesmsscl1
    # HANodes: slesmsscl1, slesmsscl2
    
    slesmsscl1:nw3adm 52> sapcontrol -nr 20 -function HACheckFailoverConfig
    
    # 19.12.2019 21:10:42
    # HACheckFailoverConfig
    # OK
    # state, category, description, comment
    # SUCCESS, SAP CONFIGURATION, SAPInstance RA sufficient version, SAPInstance includes is-ers patch
    
  2. Ręczna migracja instancji ASCS. W przykładzie pokazano migrację instancji ASCS dla systemu SAP NW2.

    Stan zasobu przed rozpoczęciem testu:

     Full list of resources:
     stonith-sbd     (stonith:external/sbd): Started slesmsscl1
      Resource Group: g-NW1_ASCS
          fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW1_ERS
          fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ASCS
          fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW2_ERS
          fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ASCS
          fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ERS
          fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
    

    Uruchom następujące polecenia jako root, aby przeprowadzić migrację instancji ASCS NW2.

     crm resource migrate rsc_sap_NW2_ASCS10 force
     # INFO: Move constraint created for rsc_sap_NW2_ASCS10
    
     crm resource unmigrate rsc_sap_NW2_ASCS10
     # INFO: Removed migration constraints for rsc_sap_NW2_ASCS10
    
     # Remove failed actions for the ERS that occurred as part of the migration
     crm resource cleanup rsc_sap_NW2_ERS12
    

    Stan zasobu po teście:

     Full list of resources:
     stonith-sbd     (stonith:external/sbd): Started slesmsscl1
      Resource Group: g-NW1_ASCS
          fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW1_ERS
          fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ASCS
          fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ERS
          fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW3_ASCS
          fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ERS
          fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
    
  3. Przetestuj haFailoverToNode. Przedstawiony tutaj test pokazuje migrację wystąpienia ASCS dla systemu SAP NW2.

    Stan zasobu przed rozpoczęciem testu:

     Full list of resources:
     stonith-sbd     (stonith:external/sbd): Started slesmsscl1
      Resource Group: g-NW1_ASCS
          fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW1_ERS
          fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ASCS
          fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ERS
          fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW3_ASCS
          fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ERS
          fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
    

    Uruchom następujące polecenia jako nw2adm, aby przeprowadzić migrację wystąpienia usługi ASCS NW2.

    slesmsscl2:nw2adm 53> sapcontrol -nr 10 -host msnw2ascs -user nw2adm password -function HAFailoverToNode ""
    
    # run as root
    # Remove failed actions for the ERS that occurred as part of the migration
    crm resource cleanup rsc_sap_NW2_ERS12
    
    # Remove migration constraints
    crm resource clear rsc_sap_NW2_ASCS10
    
    #INFO: Removed migration constraints for rsc_sap_NW2_ASCS10
    

    Stan zasobu po teście:

     Full list of resources:
     stonith-sbd     (stonith:external/sbd): Started slesmsscl1
      Resource Group: g-NW1_ASCS
          fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW1_ERS
          fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ASCS
          fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW2_ERS
          fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ASCS
          fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ERS
          fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
    
  4. Symulowanie awarii węzła

    Stan zasobu przed rozpoczęciem testu:

     Full list of resources:
     stonith-sbd     (stonith:external/sbd): Started slesmsscl1
      Resource Group: g-NW1_ASCS
          fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW1_ERS
          fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW2_ASCS
          fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ERS
          fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW3_ASCS
          fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ERS
          fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
    

    Uruchom następujące polecenie jako root na węźle, gdzie działa co najmniej jedno wystąpienie ASCS. W tym przykładzie wykonaliśmy polecenie w systemie slesmsscl2, w którym działają wystąpienia usługi ASCS dla NW1 i NW3.

    slesmsscl2:~ # echo b > /proc/sysrq-trigger
    

    Jeśli używasz SBD, program Pacemaker nie powinien automatycznie uruchamiać się na wyłączonym węźle. Stan po ponownym uruchomieniu węzła powinien wyglądać następująco.

     Online: [ slesmsscl1 ]
     OFFLINE: [ slesmsscl2 ]
     Full list of resources:
    
     stonith-sbd     (stonith:external/sbd): Started slesmsscl1
      Resource Group: g-NW1_ASCS
          fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW1_ERS
          fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW2_ASCS
          fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW2_ERS
          fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW3_ASCS
          fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW3_ERS
          fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl1
    
     Failed Resource Actions:
     * rsc_sap_NW1_ERS02_monitor_11000 on slesmsscl1 'not running' (7): call=125, status=complete, exitreason='',
         last-rc-change='Fri Dec 13 19:32:10 2019', queued=0ms, exec=0ms
     * rsc_sap_NW2_ERS12_monitor_11000 on slesmsscl1 'not running' (7): call=126, status=complete, exitreason='',
         last-rc-change='Fri Dec 13 19:32:10 2019', queued=0ms, exec=0ms
     * rsc_sap_NW3_ERS22_monitor_11000 on slesmsscl1 'not running' (7): call=127, status=complete, exitreason='',
         last-rc-change='Fri Dec 13 19:32:10 2019', queued=0ms, exec=0ms
    

    Użyj następujących poleceń, aby uruchomić program Pacemaker w węźle zabitym, wyczyścić komunikaty SBD i wyczyścić zasoby, które zakończyły się niepowodzeniem.

    # run as root
    # list the SBD device(s)
    cat /etc/sysconfig/sbd | grep SBD_DEVICE=
    
    # output is like:
    # SBD_DEVICE="/dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116;/dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1;/dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3"
    
    sbd -d /dev/disk/by-id/scsi-36001405772fe8401e6240c985857e116 -d /dev/disk/by-id/scsi-36001405034a84428af24ddd8c3a3e9e1 -d /dev/disk/by-id/scsi-36001405cdd5ac8d40e548449318510c3 message slesmsscl2 clear
    
    systemctl start pacemaker
    crm resource cleanup rsc_sap_NW1_ERS02
    crm resource cleanup rsc_sap_NW2_ERS12
    crm resource cleanup rsc_sap_NW3_ERS22
    

    Stan zasobu po teście:

     Full list of resources:
     stonith-sbd     (stonith:external/sbd): Started slesmsscl1
      Resource Group: g-NW1_ASCS
          fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW1_ERS
          fs_NW1_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW2_ASCS
          fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW2_ERS
          fs_NW2_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW2_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW2_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
      Resource Group: g-NW3_ASCS
          fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started slesmsscl1
          nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started slesmsscl1
          vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started slesmsscl1
          rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started slesmsscl1
      Resource Group: g-NW3_ERS
          fs_NW3_ERS (ocf::heartbeat:Filesystem):    Started slesmsscl2
          nc_NW3_ERS (ocf::heartbeat:azure-lb):      Started slesmsscl2
          vip_NW3_ERS        (ocf::heartbeat:IPaddr2):       Started slesmsscl2
          rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started slesmsscl2
    

Dalsze kroki