Hög tillgänglighet för SAP NetWeaver på virtuella Azure-datorer i Red Hat Enterprise Linux för SAP-program med flera SID

Den här artikeln beskriver hur du distribuerar flera SAP NetWeaver-system med hög tillgänglighet (multi-SID) i ett kluster med två noder på virtuella Azure-datorer med Red Hat Enterprise Linux för SAP-program.

I exempelkonfigurationerna distribueras tre SAP NetWeaver 7.50-system i ett enda kluster med hög tillgänglighet med två noder. SAP-system-SID:erna är:

  • NW1: ASCS-instansnummer 00 och virtuellt värdnamn msnw1ascs. ERS-instansnummer 02 och virtuellt värdnamn msnw1ers.
  • NW2: ASCS-instansnummer 10 och virtuellt värdnamn msnw2ascs. ERS-instans nummer 12 och virtuellt värdnamn msnw2ers.
  • NW3: ASCS-instansnummer 20 och virtuellt värdnamn msnw3ascs. ERS-instans nummer 22 och virtuellt värdnamn msnw3ers.

Artikeln beskriver inte databaslagret och distributionen av SAP NFS-resurser.

Exemplen i den här artikeln använder Azure NetApp Files-volymen sapMSID för NFS-resurserna, förutsatt att volymen redan har distribuerats. Exemplen förutsätter att Azure NetApp Files-volymen distribueras med NFSv3-protokollet. De använder följande filsökvägar för klusterresurserna för ASCS- och ERS-instanserna av SAP-system NW1, NW2och NW3:

  • volume sapMSID (nfs://10.42.0.4/sapmntNW1)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW1ascs)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW1sys)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW1ers)
  • volume sapMSID (nfs://10.42.0.4/sapmntNW2)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW2ascs)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW2sys)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW2ers)
  • volym sapMSID (nfs://10.42.0.4/sapmntNW3)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW3ascs)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW3sys)
  • volume sapMSID (nfs://10.42.0.4/usrsapNW3ers)

Innan du börjar kan du läsa följande SAP-anteckningar och dokument:

Översikt

De virtuella datorer som deltar i klustret måste vara stora för att kunna köra alla resurser om redundansväxling inträffar. Varje SAP SID kan redundansväxla oberoende av varandra i klustret med hög tillgänglighet för flera SID.

För att uppnå hög tillgänglighet kräver SAP NetWeaver resurser med hög tillgänglighet. Den här artikeln visar exempel med SAP-resurser som distribuerats på Azure NetApp Files NFS-volymer. Du kan i stället vara värd för resurserna på GlusterFS-kluster med hög tillgänglighet, som kan användas av flera SAP-system.

Diagram shows S A P NetWeaver High Availability overview with Pacemaker cluster and SAP NFS shares.

Viktigt!

Stödet för multi-SID-klustring av SAP ASCS/ERS med Red Hat Linux som gästoperativsystem på virtuella Azure-datorer är begränsat till fem SAP-SID:er i samma kluster. Varje nytt SID ökar komplexiteten. En blandning av SAP Enqueue Replication Server 1 och Enqueue Replication Server 2 i samma kluster stöds inte. Multi-SID-klustring beskriver installationen av flera SAP ASCS/ERS-instanser med olika SID:er i ett Pacemaker-kluster. För närvarande stöds klustring med flera SID endast för ASCS/ERS.

Dricks

Multi-SID-klustring av SAP ASCS/ERS är en lösning med högre komplexitet. Det är mer komplext att implementera. Det innebär också högre administrativt arbete vid körning av underhållsaktiviteter, till exempel uppdatering av operativsystem. Innan du påbörjar den faktiska implementeringen tar du dig tid att noggrant planera distributionen och alla inblandade komponenter som virtuella datorer, NFS-monteringar, VIP:er, lastbalanseringskonfigurationer och så vidare.

SAP NetWeaver ASCS, SAP NetWeaver SCS och SAP NetWeaver ERS använder virtuellt värdnamn och virtuella IP-adresser. I Azure krävs en lastbalanserare för att använda en virtuell IP-adress. Vi rekommenderar att du använder standardlastbalanserare.

  • Klientdels-IP-adresser för ASCS: 10.3.1.50 (NW1), 10.3.1.52 (NW2) och 10.3.1.54 (NW3)
  • Klientdels-IP-adresser för ERS: 10.3.1.51 (NW1), 10.3.1.53 (NW2) och 10.3.1.55 (NW3)
  • Avsökningsport 62000 för NW1 ASCS, 62010 för NW2 ASCS och 62020 för NW3 ASCS
  • Avsökningsport 62102 för NW1 ASCS, 62112 för NW2 ASCS och 62122 för NW3 ASCS

Viktigt!

Flytande IP stöds inte på en sekundär IP-konfiguration för nätverkskort i belastningsutjämningsscenarier. Mer information finns i Begränsningar för Azure Load balancer. Om du behöver ytterligare IP-adress för den virtuella datorn distribuerar du ett andra nätverkskort.

Kommentar

När virtuella datorer utan offentliga IP-adresser placeras i serverdelspoolen för intern (ingen offentlig IP-adress) Standard Azure-lastbalanserare finns det ingen utgående Internetanslutning, såvida inte ytterligare konfiguration utförs för att tillåta routning till offentliga slutpunkter. Mer information om hur du uppnår utgående anslutning finns i Offentlig slutpunktsanslutning för virtuella datorer med Azure Standard Load Balancer i SAP-scenarier med hög tillgänglighet.

Viktigt!

Aktivera inte TCP-tidsstämplar på virtuella Azure-datorer som placeras bakom Azure Load Balancer. Om du aktiverar TCP-tidsstämplar misslyckas hälsoavsökningarna. Ange parametern net.ipv4.tcp_timestamps till 0. Mer information finns i Load Balancer-hälsoavsökningar.

SAP-resurser

SAP NetWeaver kräver delad lagring för transport, profilkatalog och så vidare. För SAP-system med hög tillgänglighet är det viktigt att ha resurser med hög tillgänglighet. Du måste bestämma arkitekturen för dina SAP-resurser. Ett alternativ är att distribuera resurserna på Azure NetApp Files NFS-volymer. Med Azure NetApp Files får du inbyggd hög tillgänglighet för SAP NFS-resurser.

Ett annat alternativ är att skapa GlusterFS på virtuella Azure-datorer på Red Hat Enterprise Linux för SAP NetWeaver, som kan delas mellan flera SAP-system.

Distribuera det första SAP-systemet i klustret

När du har bestämt dig för arkitekturen för SAP-resurserna distribuerar du det första SAP-systemet i klustret enligt motsvarande dokumentation.

De här artiklarna vägleder dig genom stegen för att förbereda den nödvändiga infrastrukturen, skapa klustret, förbereda operativsystemet för att köra SAP-programmet.

Dricks

Testa alltid redundansfunktionen i klustret när det första systemet har distribuerats innan du lägger till ytterligare SAP-SID:er i klustret. På så sätt vet du att klusterfunktionerna fungerar innan du lägger till komplexiteten i ytterligare SAP-system i klustret.

Distribuera fler SAP-system i klustret

Det här exemplet förutsätter att systemet NW1 redan har distribuerats i klustret. Det här exemplet visar hur du distribuerar SAP-system NW2 och NW3 i klustret.

Följande objekt är prefix med:

  • [A] Gäller för alla noder
  • [1] Gäller endast för nod 1
  • [2] Gäller endast för nod 2

Förutsättningar

Viktigt!

Innan du följer anvisningarna för att distribuera ytterligare SAP-system i klustret distribuerar du det första SAP-systemet i klustret. Det finns steg som endast behövs under den första systemdistributionen.

Den här artikeln förutsätter att:

  • Pacemaker-klustret är redan konfigurerat och körs.
  • Minst ett SAP-system (ASCS/ERS-instans) har redan distribuerats och körs i klustret.
  • Redundansfunktionen för klustret har testats.
  • NFS-resurserna för alla SAP-system distribueras.

Förbereda för SAP NetWeaver-installation

  1. Lägg till konfiguration för det nyligen distribuerade systemet (d.v.s NW2 . och NW3) i den befintliga Azure Load Balancer genom att följa anvisningarna Distribuera Azure Load Balancer manuellt via Azure-portalen. Justera IP-adresser, hälsoavsökningsportar och belastningsutjämningsregler för din konfiguration.

  2. [A] Konfigurera namnmatchning för fler SAP-system. Du kan antingen använda DNS-servern eller ändra /etc/hosts på alla noder. Det här exemplet visar hur du använder filen /etc/hosts . Anpassa IP-adresserna och värdnamnen till din miljö.

    sudo vi /etc/hosts
    # IP address of the load balancer frontend configuration for NW2 ASCS
    10.3.1.52 msnw2ascs
    # IP address of the load balancer frontend configuration for NW3 ASCS
    10.3.1.54 msnw3ascs
    # IP address of the load balancer frontend configuration for NW2 ERS
    10.3.1.53 msnw2ers
    # IP address of the load balancer frontend configuration for NW3 ERS
    10.3.1.55 msnw3ers
    
  3. [A] Skapa de delade katalogerna för SAP-systemen NW2 och NW3 som ska distribueras till klustret.

    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] Lägg till monteringsposterna för filsystemen /sapmnt/SID och /usr/sap/SID/SYS för de andra SAP-system som du distribuerar till klustret. I det här exemplet är NW2 det och NW3.

    Uppdatera filen /etc/fstab med filsystemen för de andra SAP-system som du distribuerar till klustret.

Installera ASCS/ERS

  1. Skapa de virtuella IP- och hälsoavsökningsklusterresurserna för ASCS-instanserna av de andra SAP-system som du distribuerar till klustret. Det här exemplet använder NW2 och NW3 ASCS, med hjälp av NFS på Azure NetApp Files-volymer med NFSv3-protokoll.

    sudo pcs resource create fs_NW2_ASCS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW2ascs' \
    directory='/usr/sap/NW2/ASCS10' fstype='nfs' force_unmount=safe \
    op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
     --group g-NW2_ASCS
    
    sudo pcs resource create vip_NW2_ASCS IPaddr2 \
    ip=10.3.1.52 \
     --group g-NW2_ASCS
    
    sudo pcs resource create nc_NW2_ASCS azure-lb port=62010 \
     --group g-NW2_ASCS
    
    sudo pcs resource create fs_NW3_ASCS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW3ascs' \
    directory='/usr/sap/NW3/ASCS20' fstype='nfs' force_unmount=safe \
    op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
    --group g-NW3_ASCS
    
    sudo pcs resource create vip_NW3_ASCS IPaddr2 \
    ip=10.3.1.54 \
    --group g-NW3_ASCS
    
    sudo pcs resource create nc_NW3_ASCS azure-lb port=62020 \
    --group g-NW3_ASCS
    

    Kontrollera att klusterstatusen är ok och att alla resurser har startats. Det är inte viktigt på vilken nod resurserna körs.

  2. [1] Installera SAP NetWeaver ASCS.

    Installera SAP NetWeaver ASCS som rot med hjälp av ett virtuellt värdnamn som mappar till IP-adressen för lastbalanserarens klientdelskonfiguration för ASCS. För system NW2är msnw2ascstill exempel det virtuella värdnamnet , 10.3.1.52och det instansnummer som du använde för avsökningen av lastbalanseraren, till exempel 10. För systemet NW3är msnw3ascsdet virtuella värdnamnet , 10.3.1.54och det instansnummer som du använde för avsökningen av lastbalanseraren, till exempel 20. Anteckna vilken klusternod du har installerat ASCS för varje SAP SID.

    Du kan använda parametern sapinstSAPINST_REMOTE_ACCESS_USER för att tillåta att en icke-rotanvändare ansluter till sapinst. Du kan använda parametern SAPINST_USE_HOSTNAME för att installera SAP med hjälp av virtuellt värdnamn.

    # Allow access to SWPM. This rule is not permanent. If you reboot the machine, you have to run the command again
    sudo firewall-cmd --zone=public --add-port=4237/tcp
    sudo swpm/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
    

    Om installationen inte kan skapa en undermapp i /usr/sap/<SID>/ASCS<Instance#>, kan du prova att ställa in ägaren på <sid>adm och gruppera till sapsys för ASCS-instansen<#> och försöka igen.

  3. [1] Skapa en virtuell IP- och hälsoavsökningsklusterresurser för ERS-instansen av det andra SAP-systemet som du distribuerar till klustret. Det här exemplet är för NW2 och NW3 ERS, med NFS på Azure NetApp Files-volymer med NFSv3-protokoll.

    sudo pcs resource create fs_NW2_AERS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW2ers' \
    directory='/usr/sap/NW2/ERS12' fstype='nfs' force_unmount=safe \
    op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
     --group g-NW2_AERS
    
    sudo pcs resource create vip_NW2_AERS IPaddr2 \
    ip=10.3.1.53 \
     --group g-NW2_AERS
    
    sudo pcs resource create nc_NW2_AERS azure-lb port=62112 \
     --group g-NW2_AERS
    
    sudo pcs resource create fs_NW3_AERS Filesystem device='10.42.0.4:/sapMSIDR/usrsapNW3ers' \
    directory='/usr/sap/NW3/ERS22' fstype='nfs' force_unmount=safe \
    op start interval=0 timeout=60 op stop interval=0 timeout=120 op monitor interval=200 timeout=40 \
     --group g-NW3_AERS
    
    sudo pcs resource create vip_NW3_AERS IPaddr2 \
    ip=10.3.1.55 \
     --group g-NW3_AERS
    
    sudo pcs resource create nc_NW3_AERS azure-lb port=62122 \
     --group g-NW3_AERS
    

    Kontrollera att klusterstatusen är ok och att alla resurser har startats.

    Kontrollera sedan att resurserna i den nyligen skapade ERS-gruppen körs på klusternoden, mittemot klusternoden där ASCS-instansen för samma SAP-system installerades. Om NW2 ASCS till exempel installerades på rhelmsscl1kontrollerar du att NW2 ERS-gruppen körs på rhelmsscl2. Du kan migrera NW2 ERS-gruppen till genom att rhelmsscl2 köra följande kommando för en av klusterresurserna i gruppen:

    pcs resource move fs_NW2_AERS rhelmsscl2
    
  4. [2] Installera SAP NetWeaver ERS.

    Installera SAP NetWeaver ERS som rot på den andra noden med hjälp av ett virtuellt värdnamn som mappar till IP-adressen för lastbalanserarens klientdelskonfiguration för ERS. För systemet NW2är msnw2erstill exempel det virtuella värdnamnet , 10.3.1.53och det instansnummer som du använde för avsökningen av lastbalanseraren, till exempel 12. För system NW3, det virtuella värdnamnet msnw3ers, 10.3.1.55och det instansnummer som du använde för avsökningen av lastbalanseraren, till exempel 22.

    Du kan använda parametern sapinstSAPINST_REMOTE_ACCESS_USER för att tillåta att en icke-rotanvändare ansluter till sapinst. Du kan använda parametern SAPINST_USE_HOSTNAME för att installera SAP med hjälp av virtuellt värdnamn.

    # Allow access to SWPM. This rule is not permanent. If you reboot the machine, you have to run the command again
    sudo firewall-cmd --zone=public --add-port=4237/tcp
    sudo swpm/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
    

    Kommentar

    Använd SWPM SP 20 PL 05 eller senare. Lägre versioner anger inte behörigheterna korrekt och installationen misslyckas.

    Om installationen inte kan skapa en undermapp i /usr/sap/<NW2>/ERS<Instance#>, kan du prova att ange ägaren till <sid>adm och gruppen till sapsys för mappen ERS<Instance#> och försöka igen.

    Om det var nödvändigt för dig att migrera ERS-gruppen i det nyligen distribuerade SAP-systemet till en annan klusternod ska du inte glömma att ta bort platsbegränsningen för ERS-gruppen. Du kan ta bort begränsningen genom att köra följande kommando. Det här exemplet ges för SAP-system NW2 och NW3. Se till att ta bort de tillfälliga begränsningarna för samma resurs som du använde i kommandot för att flytta ERS-klustergruppen.

    pcs resource clear fs_NW2_AERS
    pcs resource clear fs_NW3_AERS
    
  5. [1] Anpassa ASCS/SCS- och ERS-instansprofilerna för de nyligen installerade SAP-systemen. Exemplet nedan är för NW2. Du måste anpassa ASCS/SCS- och ERS-profilerna för alla SAP-instanser som läggs till i klustret.

    • ASCS/SCS-profil

      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 keep alive parameter, if using ENSA1
      enque/encni/set_so_keepalive = true
      

      För både ENSA1 och ENSA2 kontrollerar du att OS-parametrarna anges enligt beskrivningen keepalive i SAP-1410736.

    • ERS-profil

      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)
      
      # remove Autostart from ERS profile
      # Autostart = 1
      
  6. [A] Uppdatera filen /usr/sap/sapservices .

    För att förhindra att instanserna startas av sapinit-startskriptet måste alla instanser som hanteras av Pacemaker kommenteras ut från filen /usr/sap/sapservices . Exemplet nedan är för SAP-system NW2 och NW3.

    # Depending on whether the SAP Startup framework is integrated with systemd, you may observe below entries on the node for ASCS instances. You should comment out the line(s). 
    # LD_LIBRARY_PATH=/usr/sap/NW2/ASCS10/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW2/ASCS10/exe/sapstartsrv pf=/usr/sap/NW2/SYS/profile/NW2_ASCS10_msnw2ascs -D -u nw2adm
    # LD_LIBRARY_PATH=/usr/sap/NW3/ASCS20/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW3/ASCS20/exe/sapstartsrv pf=/usr/sap/NW3/SYS/profile/NW3_ASCS20_msnw3ascs -D -u nw3adm
    # systemctl --no-ask-password start SAPNW2_10 # sapstartsrv pf=/usr/sap/NW2/SYS/profile/NW2_ASCS10_msnw2ascs
    # systemctl --no-ask-password start SAPNW3_20 # sapstartsrv pf=/usr/sap/NW3/SYS/profile/NW3_ASCS20_msnw3ascs
    
    # Depending on whether the SAP Startup framework is integrated with systemd, you may observe below entries on the node for ERS instances. You should comment out the line(s). 
    #LD_LIBRARY_PATH=/usr/sap/NW2/ERS12/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW2/ERS12/exe/sapstartsrv pf=/usr/sap/NW2/ERS12/profile/NW2_ERS12_msnw2ers -D -u nw2adm
    #LD_LIBRARY_PATH=/usr/sap/NW3/ERS22/exe:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; /usr/sap/NW3/ERS22/exe/sapstartsrv pf=/usr/sap/NW3/ERS22/profile/NW3_ERS22_msnw3ers -D -u nw3adm
    # systemctl --no-ask-password start SAPNW2_12 # sapstartsrv pf=/usr/sap/NW2/ERS12/profile/NW2_ERS12_msnw2ers
    # systemctl --no-ask-password start SAPNW3_22 # sapstartsrv pf=/usr/sap/NW3/ERS22/profile/NW3_ERS22_msnw3ers
    

    Viktigt!

    Med det systembaserade SAP Startup Framework kan SAP-instanser nu hanteras av systemd. Den lägsta nödvändiga Versionen av Red Hat Enterprise Linux (RHEL) är RHEL 8 för SAP. Som beskrivs i SAP Note 3115048 resulterar en ny installation av en SAP-kernel med integrerat systembaserat SAP Startup Framework-stöd alltid i en systemkontrollerad SAP-instans. Efter en SAP-kerneluppgradering av en befintlig SAP-installation till en kernel som har systembaserat STÖD för SAP Startup Framework måste dock vissa manuella steg utföras enligt beskrivningen i SAP Note 3115048 för att konvertera den befintliga SAP-startmiljön till en som är systemkontrollerad.

    När du använder Red Hat HA-tjänster för SAP (klusterkonfiguration) för att hantera SAP-programserverinstanser som SAP ASCS och SAP ERS, krävs ytterligare ändringar för att säkerställa kompatibilitet mellan SAPInstance-resursagenten och det nya systembaserade SAP-startramverket. Så när SAP-programserverinstanserna har installerats eller växlats till en systemaktiverad SAP-kernel enligt SAP Note 3115048 måste stegen som anges i Red Hat KBA 6884531 slutföras korrekt på alla klusternoder.

  7. [1] Skapa SAP-klusterresurserna för det nyligen installerade SAP-systemet.

    Beroende på om du kör ett ENSA1- eller ENSA2-system väljer du respektive flik för att definiera resurserna för SAP-system NW2 och NW3 enligt följande. SAP introducerade stöd för ENSA2, inklusive replikering, i SAP NetWeaver 7.52. Från och med ABAP Platform 1809 installeras ENSA2 som standard. Stöd för ENSA2 finns i SAP Note 2630416 för stöd för enqueue server 2.

    Om du använder enqueue server 2-arkitektur (ENSA2) installerar du resource agent resource-agents-sap-4.1.1-12.el7.x86_64 eller senare och definierar resurserna för SAP-system NW2 och NW3 på följande sätt:

    sudo pcs property set maintenance-mode=true
    
    sudo pcs resource create rsc_sap_NW2_ASCS10 SAPInstance \
    InstanceName=NW2_ASCS10_msnw2ascs START_PROFILE="/sapmnt/NW2/profile/NW2_ASCS10_msnw2ascs" \
    AUTOMATIC_RECOVER=false \
    meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \
    op monitor interval=20 on-fail=restart timeout=60 \
    op start interval=0 timeout=600 op stop interval=0 timeout=600 \
    --group g-NW2_ASCS
    
    sudo pcs resource meta g-NW2_ASCS resource-stickiness=3000
    
    sudo pcs resource create rsc_sap_NW2_ERS12 SAPInstance \
    InstanceName=NW2_ERS12_msnw2ers START_PROFILE="/sapmnt/NW2/profile/NW2_ERS12_msnw2ers" \
    AUTOMATIC_RECOVER=false IS_ERS=true \
    op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
    --group g-NW2_AERS
    
    sudo pcs constraint colocation add g-NW2_AERS with g-NW2_ASCS -5000
    sudo pcs constraint location rsc_sap_NW2_ASCS10 rule score=2000 runs_ers_NW2 eq 1
    sudo pcs constraint order start g-NW2_ASCS then stop g-NW2_AERS kind=Optional symmetrical=false
    
    sudo pcs resource create rsc_sap_NW3_ASCS20 SAPInstance \
    InstanceName=NW3_ASCS20_msnw3ascs START_PROFILE="/sapmnt/NW3/profile/NW3_ASCS20_msnw3ascs" \
    AUTOMATIC_RECOVER=false \
    meta resource-stickiness=5000 migration-threshold=1 failure-timeout=60 \
    op monitor interval=20 on-fail=restart timeout=60 \
    op start interval=0 timeout=600 op stop interval=0 timeout=600 \
    --group g-NW3_ASCS
    
    sudo pcs resource meta g-NW3_ASCS resource-stickiness=3000
    
    sudo pcs resource create rsc_sap_NW3_ERS22 SAPInstance \
    InstanceName=NW3_ERS22_msnw3ers START_PROFILE="/sapmnt/NW3/profile/NW2_ERS22_msnw3ers" \
    AUTOMATIC_RECOVER=false IS_ERS=true \
    op monitor interval=20 on-fail=restart timeout=60 op start interval=0 timeout=600 op stop interval=0 timeout=600 \
    --group g-NW3_AERS
    
    sudo pcs constraint colocation add g-NW3_AERS with g-NW3_ASCS -5000
    sudo pcs constraint location rsc_sap_NW3_ASCS20 rule score=2000 runs_ers_NW3 eq 1
    sudo pcs constraint order start g-NW3_ASCS then stop g-NW3_AERS kind=Optional symmetrical=false
    
    sudo pcs property set maintenance-mode=false
    

    Om du uppgraderar från en äldre version och växlar till enqueue server 2 läser du SAP-2641019.

    Kommentar

    Tidsgränserna i ovanstående konfiguration är bara exempel och kan behöva anpassas till den specifika SAP-konfigurationen.

    Kontrollera att klusterstatusen är ok och att alla resurser har startats. Det är inte viktigt på vilken nod resurserna körs. I följande exempel visas status för klusterresurser efter SAP-system NW2 och NW3 lades till i klustret.

    sudo pcs status
    
    # Online: [ rhelmsscl1 rhelmsscl2 ]
    
    # Full list of resources:
    
    # rsc_st_azure   (stonith:fence_azure_arm):      Started rhelmsscl1
    # Resource Group: g-NW1_ASCS
    #   fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
    #   vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
    #   nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
    #   rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    # Resource Group: g-NW1_AERS
    #   fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
    #   vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
    #   nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
    #   rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    # Resource Group: g-NW2_ASCS
    #   fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
    #   vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
    #   nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
    #   rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    # Resource Group: g-NW2_AERS
    #   fs_NW2_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
    #   vip_NW2_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
    #   nc_NW2_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
    #   rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    # Resource Group: g-NW3_ASCS
    #   fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
    #   vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
    #   nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
    #   rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    # Resource Group: g-NW3_AERS
    #   fs_NW3_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
    #   vip_NW3_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
    #   nc_NW3_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
    #  rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    
  8. [A] Lägg till brandväggsregler för ASCS och ERS på båda noderna. Exemplet nedan visar brandväggsreglerna för både SAP-system NW2 och NW3.

    # NW1 - ASCS
    sudo firewall-cmd --zone=public --add-port={62010,3210,3610,3910,8110,51013,51014,51016}/tcp --permanent
    sudo firewall-cmd --zone=public --add-port={62010,3210,3610,3910,8110,51013,51014,51016}/tcp
    # NW2 - ERS
    sudo firewall-cmd --zone=public --add-port={62112,3212,3312,51213,51214,51216}/tcp --permanent
    sudo firewall-cmd --zone=public --add-port={62112,3212,3312,51213,51214,51216}/tcp
    # NW3 - ASCS
    sudo firewall-cmd --zone=public --add-port={62020,3220,3620,3920,8120,52013,52014,52016}/tcp --permanent
    sudo firewall-cmd --zone=public --add-port={62020,3220,3620,3920,8120,52013,52014,52016}/tcp
    # NW3 - ERS
    sudo firewall-cmd --zone=public --add-port={62122,3222,3322,52213,52214,52216}/tcp --permanent
    sudo firewall-cmd --zone=public --add-port={62122,3222,3322,52213,52214,52216}/tcp
    

Fortsätt med SAP-installationen

Slutför SAP-installationen genom att:

Testa konfigurationen av flera SID-kluster

Följande tester är en delmängd av testfallen i guiderna för bästa praxis i Red Hat. De ingår för din bekvämlighet. Den fullständiga listan över klustertester finns i följande dokumentation:

Läs alltid guiderna för Red Hat-metodtips och utför alla andra tester som kan ha lagts till. Testerna som presenteras finns i ett kluster med två noder och flera SID med tre SAP-system installerade.

  1. Migrera ASCS-instansen manuellt. Exemplet visar migrering av ASCS-instansen för SAP-systemet NW3.

    Resurstillstånd innan testet startas:

    Online: [ rhelmsscl1 rhelmsscl2 ]
    
    Full list of resources:
    
    rsc_st_azure   (stonith:fence_azure_arm):      Started rhelmsscl1
    Resource Group: g-NW1_ASCS
        fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW1_AERS
        fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW2_ASCS
        fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW2_AERS
        fs_NW2_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW2_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW2_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW3_ASCS
        fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW3_AERS
        fs_NW3_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW3_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW3_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    

    Kör följande kommandon som rot för att migrera NW3 ASCS-instansen.

    pcs resource move rsc_sap_NW3_ASCS200
    # Clear temporary migration constraints
    pcs resource clear rsc_sap_NW3_ASCS20
    
    # Remove failed actions for the ERS that occurred as part of the migration
    pcs resource cleanup rsc_sap_NW3_ERS22
    

    Resurstillstånd efter testet:

    Online: [ rhelmsscl1 rhelmsscl2 ]
    
    Full list of resources:
    
    rsc_st_azure   (stonith:fence_azure_arm):      Started rhelmsscl1
    Resource Group: g-NW1_ASCS
        fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW1_AERS
        fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW2_ASCS
        fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW2_AERS
        fs_NW2_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW2_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW2_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW3_ASCS
        fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW3_AERS
        fs_NW3_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW3_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW3_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    
  2. Simulera nodkrasch.

    Resurstillstånd innan testet startas:

    Online: [ rhelmsscl1 rhelmsscl2 ]
    
    Full list of resources:
    
    rsc_st_azure   (stonith:fence_azure_arm):      Started rhelmsscl1
    Resource Group: g-NW1_ASCS
        fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW1_AERS
        fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW2_ASCS
        fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW2_AERS
        fs_NW2_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW2_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW2_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW3_ASCS
        fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW3_AERS
        fs_NW3_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW3_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW3_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    

    Kör följande kommando som rot på en nod där minst en ASCS-instans körs. Det här exemplet kör kommandot på rhelmsscl1, där ASCS-instanserna för NW1, NW2och NW3 körs.

    echo c > /proc/sysrq-trigger
    

    Statusen efter testet och efter att noden som kraschade har startats igen bör se ut så här:

    Full list of resources:
    
    rsc_st_azure    (stonith:fence_azure_arm):      Started rhelmsscl2
    Resource Group: g-NW1_ASCS
        fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW1_AERS
        fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW1_ERS02  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW2_ASCS
        fs_NW2_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW2_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW2_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW2_ASCS10 (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW2_AERS
        fs_NW2_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW2_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW2_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW2_ERS12  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    Resource Group: g-NW3_ASCS
        fs_NW3_ASCS        (ocf::heartbeat:Filesystem):    Started rhelmsscl2
        vip_NW3_ASCS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl2
        nc_NW3_ASCS        (ocf::heartbeat:azure-lb):      Started rhelmsscl2
        rsc_sap_NW3_ASCS20 (ocf::heartbeat:SAPInstance):   Started rhelmsscl2
    Resource Group: g-NW3_AERS
        fs_NW3_AERS        (ocf::heartbeat:Filesystem):    Started rhelmsscl1
        vip_NW3_AERS       (ocf::heartbeat:IPaddr2):       Started rhelmsscl1
        nc_NW3_AERS        (ocf::heartbeat:azure-lb):      Started rhelmsscl1
        rsc_sap_NW3_ERS22  (ocf::heartbeat:SAPInstance):   Started rhelmsscl1
    

    Om det finns meddelanden för misslyckade resurser rensar du statusen för de misslyckade resurserna. Till exempel:

    pcs resource cleanup rsc_sap_NW1_ERS02
    

Nästa steg

Mer information om hur du etablerar hög tillgänglighet och planerar för haveriberedskap för SAP HANA på virtuella Azure-datorer finns i Hög tillgänglighet för SAP HANA på virtuella Azure-datorer (VM).