Distribuera SAP-dialoginstanser med virtuella SAP ASCS/SCS-datorer med hög tillgänglighet på RHEL

Den här artikeln beskriver hur du installerar och konfigurerar instanser av primär programserver (PAS) och ytterligare programserver (AAS) på samma ASCS-kluster (ABAP SAP Central Services)/SAP Central Services (SCS) med hög tillgänglighet som körs på Red Hat Enterprise Linux (RHEL).

Referenser

Översikt

Den här artikeln beskriver scenariot för kostnadsoptimering där du distribuerar PAS- och AAS-dialoginstanser med SAP ASCS/SCS- och Enqueue Replication Server-instanser (ERS) i en konfiguration med hög tillgänglighet. För att minimera antalet virtuella datorer för ett enda SAP-system vill du installera PAS och AAS på samma värd där SAP ASCS/SCS och SAP ERS körs. När SAP ASCS/SCS konfigureras i en klusterkonfiguration med hög tillgänglighet vill du att PAS och AAS också ska hanteras av kluster. Konfigurationen är i princip ett tillägg till en redan konfigurerad SAP ASCS/SCS-klusterkonfiguration. I den här konfigurationen installeras PAS och AAS på ett virtuellt värdnamn och dess instanskatalog hanteras av klustret.

För den här konfigurationen kräver PAS och AAS en instanskatalog med hög tillgänglighet (/usr/sap/<SID>/D<nr>). Du kan placera instanskatalogfilsystemet på samma högtillgängliga lagring som du använde för ASCS- och ERS-instanskonfiguration. Den presenterade arkitekturen visar NFS på Azure Files eller Azure NetApp Files för en instanskatalog med hög tillgänglighet för installationen.

Exemplet som visas i den här artikeln för att beskriva distributionen använder följande systeminformation:

Instansnamn Instansnummer Virtuellt värdnamn Virtuell IP-adress (avsökningsport)
ABAP SAP Central Services (ASCS) 00 sapascs 10.90.90.10 (62000)
Enqueue Replication Server (ERS) 01 sapers 10.90.90.9 (62001)
Primär programserver (PAS) 02 sappas 10.90.90.30 (62002)
Ytterligare programserver (AAS) 03 sapers 10.90.90.31 (62003)
SAP-systemidentifierare NW1 --- ---

Kommentar

Installera fler SAP-programinstanser på separata virtuella datorer om du vill skala ut.

Diagram that shows the architecture of dialog instance installation with an SAP ASCS/SCS cluster.

Viktiga överväganden för kostnadsoptimeringslösningen

  • Endast två dialoginstanser, PAS och en AAS, kan distribueras med en SAP ASCS/SCS-klusterkonfiguration.
  • Om du vill skala ut DITT SAP-system med fler programservrar (till exempel sapa03 och sapa04) kan du installera dem på separata virtuella datorer. När PAS och AAS installeras på virtuella värdnamn kan du installera fler programservrar med hjälp av antingen ett fysiskt eller virtuellt värdnamn på separata virtuella datorer. Mer information om hur du tilldelar ett virtuellt värdnamn till en virtuell dator finns i bloggen Använda virtuella SAP-värdnamn med Linux i Azure.
  • Med en PAS- och AAS-distribution med en SAP ASCS/SCS-klusterkonfiguration måste instansnumren för ASCS, ERS, PAS och AAS vara olika.
  • Överväg att ändra storlek på dina vm-SKU:er på rätt sätt baserat på storleksriktlinjerna. Du måste ta hänsyn till klustrets beteende där flera SAP-instanser (ASCS, ERS, PAS och AAS) kan köras på en enda virtuell dator när en annan virtuell dator i klustret inte är tillgänglig.
  • Dialoginstanserna (PAS och AAS) som körs med en SAP ASCS/SCS-klusterkonfiguration måste installeras med hjälp av ett virtuellt värdnamn.
  • Du måste också använda samma lagringslösning för SAP ASCS/SCS-klusterkonfigurationen för att distribuera PAS- och AAS-instanser. Om du till exempel har konfigurerat ett SAP ASCS/SCS-kluster med hjälp av NFS i Azure Files måste samma lagringslösning användas för att distribuera PAS och AAS.
  • Instanskatalogen /usr/sap/<SID>/D<nr> för PAS och AAS måste monteras på ett NFS-filsystem och hanteras som en resurs av klustret.

    Kommentar

    För SAP J2EE-system stöds det inte att placera /usr/sap/<SID>/J<nr> på NFS på Azure Files.

  • Om du vill installera fler programservrar på separata virtuella datorer kan du antingen använda NFS-resurser eller en lokal hanterad disk för ett instanskatalogfilsystem. Om du installerar fler programservrar för ett SAP J2EE-system /usr/sap/<SID>/J<nr> stöds inte NFS på Azure Files.
  • I en traditionell SAP ASCS/SCS-konfiguration med hög tillgänglighet påverkas inte programserverinstanser som körs på separata virtuella datorer när det finns någon effekt på SAP ASCS- och ERS-klusternoder. Men med kostnadsoptimeringskonfigurationen startar antingen PAS- eller AAS-instansen om det finns en effekt på en av noderna i klustret.
  • Se NFS om överväganden för Azure Files och överväganden för Azure NetApp Files eftersom samma överväganden gäller för den här konfigurationen.

Förutsättningar

Konfigurationen som beskrivs i den här artikeln är ett tillägg till din redan konfigurerade SAP ASCS/SCS-klusterkonfiguration. I den här konfigurationen installeras PAS och AAS på ett virtuellt värdnamn och dess instanskatalog hanteras av klustret. Baserat på din lagring använder du stegen som beskrivs i följande artiklar för att konfigurera resursen SAPInstance för SAP ASCS- och SAP ERS-instansen i klustret.

När du har installerat ASCS-, ERS- och databasinstansen med hjälp av Software Provisioning Manager (SWPM) följer du nästa steg för att installera PAS- och AAS-instanserna.

Konfigurera Azure Load Balancer för PAS och AAS

Den här artikeln förutsätter att du redan har konfigurerat lastbalanseraren för konfigurationen av SAP ASCS/SCS-klustret enligt beskrivningen i Konfigurera Azure Load Balancer. I samma Azure Load Balancer-instans följer du dessa steg för att skapa fler ip-adresser på klientsidan och belastningsutjämningsregler för PAS och AAS.

  1. Öppna den interna lastbalanseraren som skapades för SAP ASCS/SCS-klusterkonfigurationen.
  2. Ip-konfiguration för klientdelen: Skapa två klientdels-IP-adresser, en för PAS och en annan för AAS (till exempel 10.90.90.30 och 10.90.90.31).
  3. Serverdelspool: Den här poolen förblir densamma eftersom vi distribuerar PAS och AAS i samma serverdelspool.
  4. Regler för inkommande trafik: Skapa två belastningsutjämningsregler, en för PAS och en annan för AAS. Följ samma steg för båda belastningsutjämningsreglerna.
  5. Klientdels-IP-adress: Välj klientdelens IP-adress.
    1. Serverdelspool: Välj serverdelspoolen.
    2. Portar med hög tillgänglighet: Välj det här alternativet.
    3. Protokoll: Välj TCP.
    4. Hälsoavsökning: Skapa en hälsoavsökning med följande information (gäller för både PAS och AAS):
      1. Protokoll: Välj TCP.
      2. Port: Till exempel 620<Instans-nej.> för PAS och 620<Instans-nej.> för AAS.
      3. Intervall: Ange 5.
      4. Tröskelvärde för avsökning: Ange 2.
    5. Tidsgräns för inaktivitet (minuter): Ange 30.
    6. Aktivera flytande IP: Välj det här alternativet.

Konfigurationsegenskapen numberOfProbesför hälsoavsökning , även kallad tröskelvärde för ej felfri i Azure-portalen, respekteras inte. Om du vill kontrollera antalet lyckade eller misslyckade efterföljande avsökningar anger du egenskapen probeThreshold till 2. Det går för närvarande inte att ange den här egenskapen med hjälp av Azure-portalen. Använd antingen Azure CLI eller PowerShell-kommandot .

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 fler IP-adresser för de virtuella datorerna distribuerar du ett andra nätverkskort.

När virtuella datorer utan offentliga IP-adresser placeras i serverdelspoolen för en intern (ingen offentlig IP-adress) Standard Azure Load Balancer-instans finns det ingen utgående Internetanslutning om inte mer konfiguration utförs för att tillåta routning till offentliga slutpunkter. Anvisningar om hur du uppnår utgående anslutning finns i Offentlig slutpunktsanslutning för virtuella datorer som använder 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.

Förbereda servrar för PAS- och AAS-installation

När stegen i det här dokumentet markeras med följande prefix betyder de:

  • [A]: Gäller för alla noder.
  • [1]: Gäller endast för nod 1.
  • [2]: Gäller endast för nod 2.
  1. [A] Konfigurera värdnamnsmatchning.

    Du kan antingen använda en DNS-server eller ändra /etc/hosts på alla noder. Det här exemplet visar hur du /etc/hosts använder filen. Ersätt IP-adressen och värdnamnet i följande kommandon:

    sudo vi /etc/hosts
    
    # IP address of cluster node 1
    10.90.90.7    sap-cl1
    # IP address of cluster node 2
    10.90.90.8     sap-cl2
    # IP address of the load balancer frontend configuration for SAP Netweaver ASCS
    10.90.90.10   sapascs
    # IP address of the load balancer frontend configuration for SAP Netweaver ERS
    10.90.90.9    sapers
    # IP address of the load balancer frontend configuration for SAP Netweaver PAS
    10.90.90.30   sappas
    # IP address of the load balancer frontend configuration for SAP Netweaver AAS
    10.90.90.31   sapaas
    
  2. [1] Skapa SAP-katalogerna på NFS-resursen. Montera NFS-resursen sapnw1 tillfälligt på en av de virtuella datorerna och skapa SAP-katalogerna som ska användas som kapslade monteringspunkter.

    1. Om du använder NFS i Azure Files:

      # mount temporarily the volume
      sudo mkdir -p /saptmp
      sudo mount -t nfs sapnfs.file.core.windows.net:/sapnfsafs/sapnw1 /saptmp -o noresvport,vers=4,minorversion=1,sec=sys
      
      # create the SAP directories
      sudo cd /saptmp
      sudo mkdir -p usrsapNW1D02
      sudo mkdir -p usrsapNW1D03
      
      # unmount the volume and delete the temporary directory
      cd ..
      sudo umount /saptmp
      sudo rmdir /saptmp
      
    2. Om du använder Azure NetApp Files:

      # mount temporarily the volume
      sudo mkdir -p /saptmp
      
      # If using NFSv3
      sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=3,tcp 10.90.91.5:/sapnw1 /saptmp
      # If using NFSv4.1
      sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,vers=4.1,sec=sys,tcp 10.90.91.5:/sapnw1 /saptmp
      
      # create the SAP directories
      sudo cd /saptmp
      sudo mkdir -p usrsapNW1D02
      sudo mkdir -p usrsapNW1D03
      
      # unmount the volume and delete the temporary directory
      sudo cd ..
      sudo umount /saptmp
      sudo rmdir /saptmp
      
  3. [A] Skapa de delade katalogerna.

    sudo mkdir -p /usr/sap/NW1/D02
    sudo mkdir -p /usr/sap/NW1/D03
    
    sudo chattr +i /usr/sap/NW1/D02
    sudo chattr +i /usr/sap/NW1/D03
    
  4. [A] Konfigurera växlingsutrymme. När du installerar en dialoginstans med centrala tjänster måste du konfigurera mer växlingsutrymme.

    sudo vi /etc/waagent.conf
    
    # Check if property ResourceDisk.Format is already set to y and if not, set it
    ResourceDisk.Format=y
    
    # Set the property ResourceDisk.EnableSwap to y
    # Create and use swapfile on resource disk.
    ResourceDisk.EnableSwap=y
    
    # Set the size of the SWAP file with property ResourceDisk.SwapSizeMB
    # The free space of resource disk varies by virtual machine size. Make sure that you do not set a value that is too big. You can check the SWAP space with command swapon
    # Size of the swapfile.
    #ResourceDisk.SwapSizeMB=2000
    ResourceDisk.SwapSizeMB=10480
    

    Starta om agenten för att aktivera ändringen.

    sudo service waagent restart
    
  5. [A] Lägg till brandväggsregler för PAS och AAS.

    # Probe and gateway port for PAS and AAS
    sudo firewall-cmd --zone=public --add-port={62002,62003,3302,3303}/tcp --permanent
    sudo firewall-cmd --zone=public --add-port={62002,62003,3303,3303}/tcp
    

Installera en SAP Netweaver PAS-instans

  1. [1] Kontrollera status för klustret. Innan du konfigurerar en PAS-resurs för installation kontrollerar du att ASCS- och ERS-resurserna har konfigurerats och startats.

    sudo pcs status
    
    # Online: [ sap-cl1 sap-cl2 ]
    #
    # Full list of resources:
    #
    # rsc_st_azure    (stonith:fence_azure_arm):      Started sap-cl1
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_AERS
    #      fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started sap-cl2
    #      nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl2
    
  2. [1] Skapa resurser för filsystem, virtuell IP och hälsoavsökning för PAS-instansen.

    sudo pcs node standby sap-cl2
    sudo pcs resource create vip_NW1_PAS IPaddr2 ip=10.90.90.30 --group g-NW1_PAS
    sudo pcs resource create nc_NW1_PAS azure-lb port=62002 --group g-NW1_PAS
    
    # If using NFS on Azure files
    sudo pcs resource create fs_NW1_PAS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1D02' \
      directory='/usr/sap/NW1/D02' fstype='nfs' force_unmount=safe options='noresvport,vers=4,minorversion=1,sec=sys' \
      op start interval=0 timeout=60 \
      op stop interval=0 timeout=120 \
      op monitor interval=200 timeout=40 \
      --group g-NW1_PAS
    
    # If using NFsv3 on Azure NetApp Files
    sudo pcs resource create fs_NW1_PAS Filesystem device='10.90.91.5:/sapnw1/usrsapNW1D02' \
      directory='/usr/sap/NW1/D02' 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-NW1_PAS
    
    # If using NFSv4.1 on Azure NetApp Files
    sudo pcs resource create fs_NW1_PAS Filesystem device='10.90.91.5:/sapnw1/usrsapNW1D02' \
      directory='/usr/sap/NW1/D02' fstype='nfs' force_unmount=safe options='sec=sys,vers=4.1' \
      op start interval=0 timeout=60 \
      op stop interval=0 timeout=120 \
      op monitor interval=200 timeout=105 \
      --group g-NW1_PAS
    

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

    sudo pcs status
    
    # Node List:
    #   Node sap-cl2: standby
    #   Online: [ sap-cl1 ]
    #
    # Full list of resources:
    #
    # rsc_st_azure    (stonith:fence_azure_arm):      Started sap-cl1
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_AERS
    #      fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_PAS:
    #      vip_NW1_PAS       (ocf::heartbeat:IPaddr2):        Started sap-cl1
    #      nc_NW1_PAS        (ocf::heartbeat:azure-lb):       Started sap-cl1
    #      fs_NW1_PAS        (ocf::heartbeat:Filesystem):     Started sap-cl1
    
  3. [1] Ändra ägarskapet /usr/sap/SID/D02 för mappen när filsystemet har monterats.

    sudo chown nw1adm:sapsys /usr/sap/NW1/D02
    
  4. [1] Installera SAP Netweaver PAS.

    Installera SAP NetWeaver PAS som en rot på den första noden med hjälp av ett virtuellt värdnamn som mappar till IP-adressen för frontend-konfigurationen för lastbalanseraren för PAS. Använd till exempel sappas, 10.90.90.30 och instansnumret som du använde för avsökningen av lastbalanseraren, till exempel 02.

    Du kan använda parametern sapinst SAPINST_REMOTE_ACCESS_USER för att tillåta att en icke-root-användare ansluter till sapinst.

    # 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=<pas_virtual_hostname>
    
  5. /usr/sap/sapservices Uppdatera filen.

    För att förhindra att instanserna startas av sapinit-startskriptet måste alla instanser som hanteras av Pacemaker kommenteras ut från /usr/sap/sapservices filen.

    sudo vi /usr/sap/sapservices
    
    # On the node where PAS is installed, comment out the following lines. 
    # LD_LIBRARY_PATH=/usr/sap/NW1/D02/exe:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH;/usr/sap/NW1/D02/exe/sapstartsrv pf=/usr/sap/NW1/SYS/profile/NW1_D02_sappas -D -u nw1adm
    
  6. [1] Skapa PAS-klusterresursen.

    # If using NFS on Azure Files or NFSv3 on Azure NetApp Files
    pcs resource create rsc_sap_NW1_PAS02 SAPInstance InstanceName="NW1_D02_sappas" \
     START_PROFILE=/sapmnt/NW1/profile/NW1_D02_sappas \
     op monitor interval=20 timeout=60 \
     --group g-NW1_PAS
    
    # If using NFSv4.1 on Azure NetApp Files
    pcs resource create rsc_sap_NW1_PAS02 SAPInstance InstanceName="NW1_D02_sappas" \
     START_PROFILE=/sapmnt/NW1/profile/NW1_D02_sappas \
     op monitor interval=20 timeout=105 \
     --group g-NW1_PAS
    

    Kontrollera status för klustret.

    sudo pcs status
    
    # Node List:
    #   Node sap-cl2: standby
    #   Online: [ sap-cl1 ]
    #
    # Full list of resources:
    #
    # rsc_st_azure    (stonith:fence_azure_arm):      Started sap-cl1
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_AERS
    #      fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_PAS:
    #      vip_NW1_PAS       (ocf::heartbeat:IPaddr2):        Started sap-cl1
    #      nc_NW1_PAS        (ocf::heartbeat:azure-lb):       Started sap-cl1
    #      fs_NW1_PAS        (ocf::heartbeat:Filesystem):     Started sap-cl1
    #      rsc_sap_NW1_PAS02 (ocf::heartbeat:SAPInstance):    Started sap-cl1
    
  7. Konfigurera en begränsning för att starta PAS-resursgruppen först när ASCS-instansen har startats.

    sudo pcs constraint order g-NW1_ASCS then g-NW1_PAS kind=Optional symmetrical=false
    

Installera en SAP Netweaver AAS-instans

  1. [2] Kontrollera status för klustret. Innan du konfigurerar en AAS-resurs för installation kontrollerar du att ASCS-, ERS- och PAS-resurserna har startats.

    sudo pcs status
    
    # Node List:
    #   Node sap-cl2: standby
    #   Online: [ sap-cl1 ]
    #
    # Full list of resources:
    #
    # rsc_st_azure    (stonith:fence_azure_arm):      Started sap-cl1
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_AERS
    #      fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_PAS:
    #      vip_NW1_PAS       (ocf::heartbeat:IPaddr2):        Started sap-cl1
    #      nc_NW1_PAS        (ocf::heartbeat:azure-lb):       Started sap-cl1
    #      fs_NW1_PAS        (ocf::heartbeat:Filesystem):     Started sap-cl1
    #      rsc_sap_NW1_PAS02 (ocf::heartbeat:SAPInstance):    Started sap-cl1
    
  2. [2] Skapa resurser för filsystem, virtuell IP och hälsoavsökning för AAS-instansen.

    sudo pcs node unstandby sap-cl2
    # Disable PAS resource as it will fail on sap-cl2 due to missing environment variables like hdbuserstore. 
    sudo pcs resource disable g-NW1_PAS
    sudo pcs node standby sap-cl1
    # Execute below command to cleanup resource, if required
    pcs resource cleanup rsc_sap_NW1_ERS01
    
    sudo pcs resource create vip_NW1_AAS IPaddr2 ip=10.90.90.31 --group g-NW1_AAS
    sudo pcs resource create nc_NW1_AAS azure-lb port=62003 --group g-NW1_AAS
    
    # If using NFS on Azure files
    sudo pcs resource create fs_NW1_AAS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1D03' \
      directory='/usr/sap/NW1/D03' fstype='nfs' force_unmount=safe options='noresvport,vers=4,minorversion=1,sec=sys' \
      op start interval=0 timeout=60 \
      op stop interval=0 timeout=120 \
      op monitor interval=200 timeout=40 \
      --group g-NW1_AAS
    
    # If using NFsv3 on Azure NetApp Files
    sudo pcs resource create fs_NW1_AAS Filesystem device='10.90.91.5:/sapnw1/usrsapNW1D03' \
      directory='/usr/sap/NW1/D03' 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-NW1_AAS
    
    # If using NFSv4.1 on Azure NetApp Files
    sudo pcs resource create fs_NW1_AAS Filesystem device='10.90.91.5:/sapnw1/usrsapNW1D03' \
      directory='/usr/sap/NW1/D03' fstype='nfs' force_unmount=safe options='sec=sys,vers=4.1' \
      op start interval=0 timeout=60 \
      op stop interval=0 timeout=120 \
      op monitor interval=200 timeout=105 \
      --group g-NW1_AAS
    

    Kontrollera att klusterstatusen är okej och att alla resurser har startats. Det är inte viktigt på vilken nod resurserna körs. Eftersom resursgruppen g-NW1_PAS stoppas stoppas alla PAS-resurser i tillståndet (inaktiverad).

    sudo pcs status
    
    # Node List:
    #   Node sap-cl1: standby
    #   Online: [ sap-cl2 ]
    #
    # Full list of resources:
    #
    # rsc_st_azure    (stonith:fence_azure_arm):      Started sap-cl2
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl2
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl2
    #  Resource Group: g-NW1_AERS
    #      fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started sap-cl2
    #      nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl2
    #  Resource Group: g-NW1_PAS:
    #      vip_NW1_PAS       (ocf::heartbeat:IPaddr2):        Stopped (disabled)
    #      nc_NW1_PAS        (ocf::heartbeat:azure-lb):       Stopped (disabled)
    #      fs_NW1_PAS        (ocf::heartbeat:Filesystem):     Stopped (disabled)
    #      rsc_sap_NW1_PAS02 (ocf::heartbeat:SAPInstance):    Stopped (disabled)
    #  Resource Group: g-NW1_AAS:
    #      vip_NW1_AAS       (ocf::heartbeat:IPaddr2):        Started sap-cl2
    #      nc_NW1_AAS        (ocf::heartbeat:azure-lb):       Started sap-cl2
    #      fs_NW1_AAS        (ocf::heartbeat:Filesystem):     Started sap-cl2
    
  3. [2] Ändra ägarskapet för /usr/sap/SID/D03 mappen när filsystemet har monterats.

    sudo chown nw1adm:sapsys /usr/sap/NW1/D03
    
  4. [2] Installera en SAP Netweaver AAS.

    Installera en SAP NetWeaver AAS 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 PAS. Använd till exempel sapaas, 10.90.90.31 och instansnumret som du använde för avsökningen av lastbalanseraren, till exempel 03.

    Du kan använda parametern sapinst SAPINST_REMOTE_ACCESS_USER för att tillåta att en icke-root-användare ansluter till sapinst.

    # 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=<aas_virtual_hostname>
    
  5. /usr/sap/sapservices Uppdatera filen.

    För att förhindra att instanserna startas av sapinit-startskriptet måste alla instanser som hanteras av Pacemaker kommenteras ut från /usr/sap/sapservices filen.

    sudo vi /usr/sap/sapservices
    
    # On the node where AAS is installed, comment out the following lines. 
    #LD_LIBRARY_PATH=/usr/sap/NW1/D03/exe:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH;/usr/sap/NW1/D03/exe/sapstartsrv pf=/usr/sap/NW1/SYS/profile/NW1_D03_sapaas -D -u nw1adm
    
  6. [2] Skapa en AAS-klusterresurs.

    # If using NFS on Azure Files or NFSv3 on Azure NetApp Files
    pcs resource create rsc_sap_NW1_AAS03 SAPInstance InstanceName="NW1_D03_sapaas" \
     START_PROFILE=/sapmnt/NW1/profile/NW1_D03_sapaas \
     op monitor interval=120 timeout=60 \
     --group g-NW1_AAS
    
    # If using NFSv4.1 on Azure NetApp Files
    pcs resource create rsc_sap_NW1_AAS03 SAPInstance InstanceName="NW1_D03_sapaas" \
     START_PROFILE=/sapmnt/NW1/profile/NW1_D03_sapaas \
     op monitor interval=120 timeout=105 \
     --group g-NW1_AAS
    

    Kontrollera status för klustret.

    sudo pcs status
    
    # Node List:
    #   Node sap-cl1: standby
    #   Online: [ sap-cl2 ]
    #
    # Full list of resources:
    #
    # rsc_st_azure    (stonith:fence_azure_arm):      Started sap-cl2
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl2
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl2
    #  Resource Group: g-NW1_AERS
    #      fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started sap-cl2
    #      nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl2
    #  Resource Group: g-NW1_PAS:
    #      vip_NW1_PAS       (ocf::heartbeat:IPaddr2):        Stopped (disabled)
    #      nc_NW1_PAS        (ocf::heartbeat:azure-lb):       Stopped (disabled)
    #      fs_NW1_PAS        (ocf::heartbeat:Filesystem):     Stopped (disabled)
    #      rsc_sap_NW1_PAS02 (ocf::heartbeat:SAPInstance):    Stopped (disabled)
    #  Resource Group: g-NW1_AAS:
    #      vip_NW1_AAS       (ocf::heartbeat:IPaddr2):        Started sap-cl2
    #      nc_NW1_AAS        (ocf::heartbeat:azure-lb):       Started sap-cl2
    #      fs_NW1_AAS        (ocf::heartbeat:Filesystem):     Started sap-cl2
    #      rsc_sap_NW1_AAS03 (ocf::heartbeat:SAPInstance):    Started sap-cl2
    
  7. Konfigurera en begränsning för att starta AAS-resursgruppen först när ASCS-instansen har startats.

    sudo pcs constraint order g-NW1_ASCS then g-NW1_AAS kind=Optional symmetrical=false
    

Efter konfiguration för PAS- och AAS-instanser

  1. [1] För att PAS och AAS ska kunna köras på valfri klusternod (sap-cl1 eller sap-cl2) måste innehållet i $HOME/.hdb<sid>adm från båda klusternoderna kopieras.

    # Check current content of /home/nw1adm/.hdb on sap-cl1
    sap-cl1:nw1adm > ls -ltr $HOME/.hdb
    drwx------. 2 nw1adm sapsys 66 Aug  8 19:11 sappas
    drwx------. 2 nw1adm sapsys 84 Aug  8 19:12 sap-cl1
    # Check current content of /home/nw1adm/.hdb on sap-cl2
    sap-cl2:nw1adm > ls -ltr $HOME/.hdb
    total 0
    drwx------. 2 nw1adm sapsys 64 Aug  8 20:25 sap-cl2
    drwx------. 2 nw1adm sapsys 66 Aug  8 20:26 sapaas
    
    # As PAS and AAS is installed using virtual hostname, you need to copy virtual hostname directory in /home/nw1adm/.hdb
    # Copy sappas directory from sap-cl1 to sap-cl2
    sap-cl1:nw1adm > scp -r sappas nw1adm@sap-cl2:/home/nw1adm/.hdb
    # Copy sapaas directory from sap-cl2 to sap-cl1. Execute the command from the same sap-cl1 host. 
    sap-cl1:nw1adm > scp -r nw1adm@sap-cl2:/home/nw1adm/.hdb/sapaas . 
    
  2. [1] För att säkerställa att PAS- och AAS-instanserna inte körs på samma noder när båda noderna körs lägger du till en negativ samlokaliseringsbegränsning med följande kommando:

    sudo pcs constraint colocation add g-NW1_AAS with g-NW1_PAS score=-1000
    sudo pcs node unstandby sap-cl1
    sudo pcs resource enable g-NW1_PAS
    

    Poängen -1000 säkerställer att om endast en nod är tillgänglig fortsätter båda instanserna att köras på den andra noden. Om du vill hålla AAS-instansen nere i en sådan situation kan du använda score=-INFINITY för att framtvinga det här villkoret.

  3. Kontrollera status för klustret.

    sudo pcs status
    
    # Node List:
    #   Online: [ sap-cl1 sap-cl2 ]
    #
    # Full list of resources:
    #
    # rsc_st_azure    (stonith:fence_azure_arm):      Started sap-cl2
    #  Resource Group: g-NW1_ASCS
    #      fs_NW1_ASCS        (ocf::heartbeat:Filesystem):    Started sap-cl2
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl2
    #  Resource Group: g-NW1_AERS
    #      fs_NW1_AERS        (ocf::heartbeat:Filesystem):    Started sap-cl1
    #      nc_NW1_AERS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #      vip_NW1_AERS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    #      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl1
    #  Resource Group: g-NW1_PAS:
    #      vip_NW1_PAS       (ocf::heartbeat:IPaddr2):        Started sap-cl1
    #      nc_NW1_PAS        (ocf::heartbeat:azure-lb):       Started sap-cl1
    #      fs_NW1_PAS        (ocf::heartbeat:Filesystem):     Started sap-cl1
    #      rsc_sap_NW1_PAS02 (ocf::heartbeat:SAPInstance):    Started sap-cl1
    #  Resource Group: g-NW1_AAS:
    #      vip_NW1_AAS       (ocf::heartbeat:IPaddr2):        Started sap-cl2
    #      nc_NW1_AAS        (ocf::heartbeat:azure-lb):       Started sap-cl2
    #      fs_NW1_AAS        (ocf::heartbeat:Filesystem):     Started sap-cl2
    #      rsc_sap_NW1_AAS03 (ocf::heartbeat:SAPInstance):    Started sap-cl2
    

Testa klusterkonfigurationen

Testa pacemakerklustret noggrant genom att köra de vanliga redundanstesterna.