Hög tillgänglighet för SAP NetWeaver på virtuella Azure-datorer på SUSE Linux Enterprise Server med Azure NetApp Files för SAP-program

Den här artikeln beskriver hur du konfigurerar hög tillgänglighet för SAP NetWeaver-programmet med Azure NetApp Files.

För nya implementeringar på SLES för SAP Applications 15 rekommenderar vi att du distribuerar hög tillgänglighet för SAP ASCS/ERS i enkel monteringskonfiguration. Den klassiska Pacemaker-konfigurationen, som baseras på klusterstyrda filsystem för SAP:s kataloger för centrala tjänster, som beskrivs i den här artikeln stöds fortfarande.

I exempelkonfigurationer, installationskommandon osv. är ASCS-instansen nummer 00, ERS-instansnummer 01, DEN primära programinstansen (PAS) är 02 och Programinstansen (AAS) är 03. SAP System ID QAS används. Databaslagret beskrivs inte i detalj i den här artikeln.

Läs följande SAP-anteckningar och dokument först:

Översikt

Hög tillgänglighet (HA) för centrala SAP Netweaver-tjänster kräver delad lagring. För att uppnå detta på SUSE Linux hittills var det nödvändigt att skapa separata NFS-kluster med hög tillgänglighet.

Nu är det möjligt att uppnå SAP Netweaver HA med hjälp av delad lagring, distribuerad på Azure NetApp Files. Om du använder Azure NetApp Files för den delade lagringen eliminerar du behovet av ytterligare NFS-kluster. Pacemaker behövs fortfarande för HA för SAP Netweaver Central Services (ASCS/SCS).

Översikt över hög tillgänglighet för SAP NetWeaver

SAP NetWeaver ASCS, SAP NetWeaver SCS, SAP NetWeaver ERS och SAP HANA-databasen 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. Den presenterade konfigurationen visar en lastbalanserare med:

  • Klientdelens IP-adress 10.1.1.20 för ASCS
  • Klientdelens IP-adress 10.1.1.21 för ERS
  • Avsökningsport 62000 för ASCS
  • Avsökningsport 62101 för ERS

Konfigurera Azure NetApp Files-infrastrukturen

SAP NetWeaver kräver delad lagring för transport- och profilkatalogen. Innan du fortsätter med konfigurationen för Azure NetApp-filinfrastrukturen bör du bekanta dig med Dokumentationen om Azure NetApp Files. Kontrollera om den valda Azure-regionen erbjuder Azure NetApp Files. Följande länk visar tillgängligheten för Azure NetApp Files per Azure-region: Azure NetApp Files-tillgänglighet per Azure-region.

Azure NetApp-filer är tillgängliga i flera Azure-regioner.

Distribuera Azure NetApp Files-resurser

Stegen förutsätter att du redan har distribuerat Azure Virtual Network. Azure NetApp Files-resurserna och de virtuella datorerna, där Azure NetApp Files-resurserna ska monteras, måste distribueras i samma virtuella Azure-nätverk eller i peerkopplade virtuella Azure-nätverk.

  1. Skapa NetApp-kontot i den valda Azure-regionen genom att följa anvisningarna för att skapa NetApp-konto.
  2. Konfigurera Azure NetApp Files-kapacitetspoolen genom att följa anvisningarna om hur du konfigurerar Azure NetApp Files-kapacitetspool.
    Sap Netweaver-arkitekturen som presenteras i den här artikeln använder en enda Azure NetApp Files-kapacitetspool, Premium SKU. Vi rekommenderar Azure NetApp Files Premium SKU för SAP Netweaver-programarbetsbelastning i Azure.
  3. Delegera ett undernät till Azure NetApp-filer enligt anvisningarna Delegera ett undernät till Azure NetApp Files.
  4. Distribuera Azure NetApp Files-volymer genom att följa anvisningarna för att skapa en volym för Azure NetApp Files. Distribuera volymerna i det avsedda Azure NetApp Files-undernätet. IP-adresserna för Azure NetApp-volymerna tilldelas automatiskt. Tänk på att Azure NetApp Files-resurserna och de virtuella Azure-datorerna måste finnas i samma virtuella Azure-nätverk eller i peerkopplade virtuella Azure-nätverk. I det här exemplet använder vi två Azure NetApp Files-volymer: sapQAS och trans. De filsökvägar som monteras på motsvarande monteringspunkter är /usrsapqas/sapmntQAS, /usrsapqas/usrsapQASsys osv.
    1. volume sapQAS (nfs://10.1.0.4/usrsapqas/sapmntQAS)
    2. volume sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASascs)
    3. volume sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASsys)
    4. volume sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASers)
    5. volymtrans (nfs://10.1.0.4/trans)
    6. volume sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASpas)
    7. volume sapQAS (nfs://10.1.0.4/usrsapqas/usrsapQASaas)

I det här exemplet använde vi Azure NetApp Files för alla SAP Netweaver-filsystem för att visa hur Azure NetApp Files kan användas. DE SAP-filsystem som inte behöver monteras via NFS kan också distribueras som Azure-disklagring . I det här exemplet måste a-e finnas på Azure NetApp Files och f-g (det vill säga /usr/sap/QAS/D02, /usr/sap/QAS/D03) kan distribueras som Azure-disklagring.

Viktigt!

När du överväger Azure NetApp Files för SAP Netweaver i arkitekturen för hög tillgänglighet för SUSE bör du tänka på följande viktiga överväganden:

  • Begränsningar för volym- och kapacitetspooler finns i Resursbegränsningar för Azure NetApp Files.
  • Azure NetApp Files och alla virtuella datorer, där Azure NetApp Files-volymer monteras, måste finnas i samma virtuella Azure-nätverk eller i peerkopplade virtuella nätverk i samma region. Azure NetApp Files-åtkomst via VNET-peering i samma region stöds nu. Azure NetApp-åtkomst via global peering stöds ännu inte.
  • Det valda virtuella nätverket måste ha ett undernät, delegerat till Azure NetApp Files.
  • Dataflödes- och prestandaegenskaperna för en Azure NetApp Files-volym är en funktion av volymkvoten och tjänstnivån, vilket beskrivs i Tjänstnivå för Azure NetApp Files. När du ändrar storlek på SAP Azure NetApp-volymerna kontrollerar du att det resulterande dataflödet uppfyller programkraven.
  • Azure NetApp Files erbjuder exportprincip: du kan styra de tillåtna klienterna, åtkomsttypen (skrivskyddad och skrivskyddad).
  • Azure NetApp Files-funktionen är inte zonmedveten ännu. För närvarande distribueras inte Azure NetApp Files-funktionen i alla tillgänglighetszoner i en Azure-region. Tänk på de potentiella fördröjningskonsekvenserna i vissa Azure-regioner.
  • Azure NetApp Files-volymer kan distribueras som NFSv3- eller NFSv4.1-volymer. Båda protokollen stöds för SAP-programskiktet (ASCS/ERS, SAP-programservrar).

Förbereda infrastrukturen

Resursagenten för SAP-instansen ingår i SUSE Linux Enterprise Server för SAP-program. En avbildning för SUSE Linux Enterprise Server för SAP-program 12 eller 15 finns på Azure Marketplace. Du kan använda avbildningen för att distribuera nya virtuella datorer.

Distribuera virtuella Linux-datorer manuellt via Azure-portalen

Det här dokumentet förutsätter att du redan har distribuerat en resursgrupp, Azure Virtual Network och undernät.

Distribuera virtuella datorer med SLES för SAP-programavbildning. Välj en lämplig version av SLES-avbildningen som stöds för SAP-systemet. Du kan distribuera en virtuell dator i något av tillgänglighetsalternativen – VM-skalningsuppsättning, tillgänglighetszon eller tillgänglighetsuppsättning.

Konfigurera Azure-lastbalanserare

Under konfigurationen av den virtuella datorn kan du skapa eller välja att avsluta lastbalanseraren i nätverksavsnittet. Följ stegen nedan för att konfigurera en standardlastbalanserare för konfiguration av hög tillgänglighet för SAP ASCS och SAP ERS.

Följ guiden skapa lastbalanserare för att konfigurera en standardlastbalanserare för ett SAP-system med hög tillgänglighet med hjälp av Azure-portalen. Under installationen av lastbalanseraren bör du överväga följande punkter.

  1. Ip-konfiguration för klientdelen: Skapa två klientdels-IP-adresser, en för ASCS och en annan för ERS. Välj samma virtuella nätverk och undernät som dina virtuella ASCS/ERS-datorer.
  2. Serverdelspool: Skapa serverdelspool och lägg till virtuella ASCS- och ERS-datorer.
  3. Regler för inkommande trafik: Skapa två belastningsutjämningsregler, en för ASCS och en annan för ERS. Följ samma steg för båda belastningsutjämningsreglerna.
    • Klientdels-IP-adress: Välj klientdels-IP
    • Serverdelspool: Välj serverdelspool
    • Kontrollera "Portar med hög tillgänglighet"
    • Protokoll: TCP
    • Hälsoavsökning: Skapa hälsoavsökning med information nedan (gäller för både ASCS eller ERS)
      • Protokoll: TCP
      • Port: [till exempel: 620<Instance-no.> for ASCS, 621<Instance-no.> for ERS]
      • Intervall: 5
      • Tröskelvärde för avsökning: 2
    • Tidsgräns för inaktivitet (minuter): 30
    • Kontrollera "Aktivera flytande IP"

Kommentar

Egenskapsnummer för hälsoavsökningskonfigurationOfProbes, även kallat "Tröskelvärde för feltillstånd" i portalen, respekteras inte. Så 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, så använd antingen Azure CLI - eller PowerShell-kommandot .

Kommentar

När virtuella datorer utan offentliga IP-adresser placeras i serverdelspoolen för intern (ingen offentlig IP-adress) Standard Azure-lastbalanserare, kommer det inte att finnas någon 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.
  • Om du vill förhindra att saptune ändrar det manuellt inställda net.ipv4.tcp_timestamps värdet från 0 tillbaka till 1bör du uppdatera saptune-versionen till 3.1.1 eller senare. Mer information finns i saptune 3.1.1 – Behöver jag uppdatera?.

Inaktivera ID-mappning (om du använder NFSv4.1)

Anvisningarna i det här avsnittet gäller endast om du använder Azure NetApp Files-volymer med NFSv4.1-protokoll. Utför konfigurationen på alla virtuella datorer, där Azure NetApp Files NFSv4.1-volymer monteras.

  1. Verifiera NFS-domäninställningen. Kontrollera att domänen är konfigurerad som standarddomänen för Azure NetApp Files och defaultv4iddomain.com att mappningen är inställd på ingen.

    Viktigt!

    Se till att ange NFS-domänen /etc/idmapd.conf på den virtuella datorn så att den matchar standarddomänkonfigurationen på Azure NetApp Files: defaultv4iddomain.com. Om det finns ett matchningsfel mellan domänkonfigurationen på NFS-klienten (dvs. den virtuella datorn) och NFS-servern, d.v.s. Azure NetApp-konfigurationen, visas behörigheterna för filer på Azure NetApp-volymer som är monterade på de virtuella datorerna som nobody.

    sudo cat /etc/idmapd.conf
    
    # Example
    [General]
    Verbosity = 0
    Pipefs-Directory = /var/lib/nfs/rpc_pipefs
    Domain = defaultv4iddomain.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    
  2. [A] Verifiera nfs4_disable_idmapping. Den ska vara inställd på Y. Kör monteringskommandot för att skapa katalogstrukturen där nfs4_disable_idmapping den finns. Du kommer inte att kunna skapa katalogen manuellt under /sys/modules, eftersom åtkomst är reserverad för kerneln/drivrutinerna.

    # Check nfs4_disable_idmapping 
    cat /sys/module/nfs/parameters/nfs4_disable_idmapping
    
    # If you need to set nfs4_disable_idmapping to Y
    mkdir /mnt/tmp
    mount 10.1.0.4:/sapmnt/qas /mnt/tmp
    umount  /mnt/tmp
    echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping
    
    # Make the configuration permanent
    echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
    

Konfigurera (A)SCS

Nu ska du förbereda och installera SAP ASCS- och ERS-instanserna.

Skapa Pacemaker-kluster

Följ stegen i Konfigurera Pacemaker på SUSE Linux Enterprise Server i Azure för att skapa ett grundläggande Pacemaker-kluster för den här (A)SCS-servern.

Installation

Följande objekt är prefix med antingen [A] – gäller för alla noder, [1] – endast tillämpligt för nod 1 eller [2] – som endast gäller för nod 2.

  1. [A] Installera SUSE Connector

    sudo zypper install sap-suse-cluster-connector
    

    Kommentar

    Det kända problemet med att använda ett bindestreck i värdnamn har åtgärdats med version 3.1.1 av paketet sap-suse-cluster-connector. Kontrollera att du använder minst version 3.1.1 av paketet sap-suse-cluster-connector, om du använder klusternoder med bindestreck i värdnamnet. Annars fungerar inte klustret.

    Kontrollera att du har installerat den nya versionen av SAP SUSE-klusteranslutningen. Den gamla kallades sap_suse_cluster_connector och den nya kallas sap-suse-cluster-connector.

    sudo zypper info sap-suse-cluster-connector
    
    # Information for package sap-suse-cluster-connector:
    # ---------------------------------------------------
    # Repository     : SLE-12-SP3-SAP-Updates
    # Name           : sap-suse-cluster-connector
    # Version        : 3.1.0-8.1
    # Arch           : noarch
    # Vendor         : SUSE LLC <https://www.suse.com/>
    # Support Level  : Level 3
    # Installed Size : 45.6 KiB
    # Installed      : Yes
    # Status         : up-to-date
    # Source package : sap-suse-cluster-connector-3.1.0-8.1.src
    # Summary        : SUSE High Availability Setup for SAP Products
    
  2. [A] Uppdatera SAP-resursagenter

    En korrigering för resursagentpaketet krävs för att använda den nya konfigurationen som beskrivs i den här artikeln. Du kan kontrollera om korrigeringen redan är installerad med följande kommando

    sudo grep 'parameter name="IS_ERS"' /usr/lib/ocf/resource.d/heartbeat/SAPInstance
    

    Utdata bör likna

    <parameter name="IS_ERS" unique="0" required="0">
    

    Om grep-kommandot inte hittar parametern IS_ERS måste du installera korrigeringen som visas på nedladdningssidan för SUSE

    # example for patch for SLES 12 SP1
    sudo zypper in -t patch SUSE-SLE-HA-12-SP1-2017-885=1
    
    # example for patch for SLES 12 SP2
    sudo zypper in -t patch SUSE-SLE-HA-12-SP2-2017-886=1
    
  3. [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 använder filen /etc/hosts. Ersätt IP-adressen och värdnamnet i följande kommandon

    sudo vi /etc/hosts
    

    Infoga följande rader i /etc/hosts. Ändra IP-adressen och värdnamnet så att de matchar din miljö

    # IP address of cluster node 1
    10.1.1.18    anftstsapcl1
    # IP address of cluster node 2
    10.1.1.6     anftstsapcl2
    # IP address of the load balancer frontend configuration for SAP Netweaver ASCS
    10.1.1.20    anftstsapvh
    # IP address of the load balancer frontend configuration for SAP Netweaver ERS
    10.1.1.21    anftstsapers
    
  4. [1] Skapa SAP-kataloger i Azure NetApp Files-volymen.

    Montera tillfälligt Azure NetApp Files-volymen på en av de virtuella datorerna och skapa SAP-katalogerna (filsökvägarna).

    # mount temporarily the volume
    sudo mkdir -p /saptmp
    # If using NFSv3
    sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=3,tcp 10.1.0.4:/sapQAS /saptmp
    # If using NFSv4.1
    sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys,tcp 10.1.0.4:/sapQAS /saptmp
    # create the SAP directories
    sudo cd /saptmp
    sudo mkdir -p sapmntQAS
    sudo mkdir -p usrsapQASascs
    sudo mkdir -p usrsapQASers
    sudo mkdir -p usrsapQASsys
    sudo mkdir -p usrsapQASpas
    sudo mkdir -p usrsapQASaas
    # unmount the volume and delete the temporary directory
    sudo cd ..
    sudo umount /saptmp
    sudo rmdir /saptmp
    

Förbereda för SAP NetWeaver-installation

  1. [A] Skapa de delade katalogerna

    sudo mkdir -p /sapmnt/QAS
    sudo mkdir -p /usr/sap/trans
    sudo mkdir -p /usr/sap/QAS/SYS
    sudo mkdir -p /usr/sap/QAS/ASCS00
    sudo mkdir -p /usr/sap/QAS/ERS01
    
    sudo chattr +i /sapmnt/QAS
    sudo chattr +i /usr/sap/trans
    sudo chattr +i /usr/sap/QAS/SYS
    sudo chattr +i /usr/sap/QAS/ASCS00
    sudo chattr +i /usr/sap/QAS/ERS01
    
  2. [A] Konfigurera autofs

    sudo vi /etc/auto.master
    
    # Add the following line to the file, save and exit
    /- /etc/auto.direct
    

    Om du använder NFSv3 skapar du en fil med:

    sudo vi /etc/auto.direct
    
    # Add the following lines to the file, save and exit
    /sapmnt/QAS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/sapmntQAS
    /usr/sap/trans -nfsvers=3,nobind 10.1.0.4:/trans
    /usr/sap/QAS/SYS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/usrsapQASsys
    

    Om du använder NFSv4.1 skapar du en fil med:

    sudo vi /etc/auto.direct
    
    # Add the following lines to the file, save and exit
    /sapmnt/QAS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/sapmntQAS
    /usr/sap/trans -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/trans
    /usr/sap/QAS/SYS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/usrsapQASsys
    

    Kommentar

    Se till att matcha NFS-protokollversionen av Azure NetApp Files-volymerna när du monterar volymerna. Om Azure NetApp Files-volymerna skapas som NFSv3-volymer använder du motsvarande NFSv3-konfiguration. Om Azure NetApp Files-volymerna skapas som NFSv4.1-volymer följer du anvisningarna för att inaktivera ID-mappning och ser till att använda motsvarande NFSv4.1-konfiguration. I det här exemplet skapades Azure NetApp Files-volymerna som NFSv3-volymer.

    Starta om autofs för att montera de nya resurserna

    sudo systemctl enable autofs
    sudo service autofs restart
    
  3. [A] Konfigurera SWAP-fil

    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
    

    Starta om agenten för att aktivera ändringen

    sudo service waagent restart
    

Installera SAP NetWeaver ASCS/ERS

  1. [1] Skapa en virtuell IP-resurs och hälsoavsökning för ASCS-instansen

    Viktigt!

    Nyligen genomförda tester visade situationer där netcat slutar svara på begäranden på grund av kvarvarande uppgifter och dess begränsning av att endast hantera en anslutning. Netcat-resursen slutar lyssna på Azure Load balancer-begäranden och den flytande IP-adressen blir otillgänglig.
    För befintliga Pacemaker-kluster rekommenderar vi tidigare att netcat ersätts med socat. För närvarande rekommenderar vi att du använder azure-lb-resursagenten, som ingår i paketresursagenter, med följande krav på paketversion:

    • För SLES 12 SP4/SP5 måste versionen vara minst resource-agents-4.3.018.a7fb5035-3.30.1.
    • För SLES 15/15 SP1 måste versionen vara minst resource-agents-4.3.0184.6ee15eb2-4.13.1.

    Observera att ändringen kräver kort stilleståndstid.
    För befintliga Pacemaker-kluster, om konfigurationen redan har ändrats för att använda socat enligt beskrivningen i Azure Load-Balancer Detection Hardening, finns det inget krav på att omedelbart växla till azure-lb-resursagenten.

    sudo crm node standby anftstsapcl2
    
    # If using NFSv3
    sudo crm configure primitive fs_QAS_ASCS Filesystem device='10.1.0.4/usrsapqas/usrsapQASascs' directory='/usr/sap/QAS/ASCS00' fstype='nfs' \
      op start timeout=60s interval=0 \
      op stop timeout=60s interval=0 \
      op monitor interval=20s timeout=40s
    
    # If using NFSv4.1
    sudo crm configure primitive fs_QAS_ASCS Filesystem device='10.1.0.4:/usrsapqas/usrsapQASascs' directory='/usr/sap/QAS/ASCS00' fstype='nfs' options='sec=sys,nfsvers=4.1' \
      op start timeout=60s interval=0 \
      op stop timeout=60s interval=0 \
      op monitor interval=20s timeout=105s
    
    sudo crm configure primitive vip_QAS_ASCS IPaddr2 \
      params ip=10.1.1.20 \
      op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_QAS_ASCS azure-lb port=62000 \
      op monitor timeout=20s interval=10
    
    sudo crm configure group g-QAS_ASCS fs_QAS_ASCS nc_QAS_ASCS vip_QAS_ASCS \
       meta resource-stickiness=3000
    

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

    sudo crm_mon -r
    
    # Node anftstsapcl2: standby
    # Online: [ anftstsapcl1 ]
    # 
    # Full list of resources:
    #
    # Resource Group: g-QAS_ASCS
    #     fs_QAS_ASCS        (ocf::heartbeat:Filesystem):    Started anftstsapcl1
    #     nc_QAS_ASCS        (ocf::heartbeat:azure-lb):      Started anftstsapcl1
    #     vip_QAS_ASCS       (ocf::heartbeat:IPaddr2):       Started anftstsapcl1
    # stonith-sbd     (stonith:external/sbd): Started anftstsapcl2
    
  2. [1] Installera SAP NetWeaver ASCS

    Installera SAP NetWeaver ASCS som rot på den första noden med hjälp av ett virtuellt värdnamn som mappar till IP-adressen för lastbalanserarens klientdelskonfiguration för ASCS, till exempel anftstsapvh, 10.1.1.20 och instansnumret som du använde för avsökningen av lastbalanseraren, till exempel 00.

    Du kan använda parametern sapinst SAPINST_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.

    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
    

    Om installationen inte kan skapa en undermapp i /usr/sap/QAS/ASCS00 kan du prova att ange ägare och grupp för ASCS00-mappen och försöka igen.

    chown qasadm /usr/sap/QAS/ASCS00
    chgrp sapsys /usr/sap/QAS/ASCS00
    
  3. [1] Skapa en virtuell IP-resurs och hälsoavsökning för ERS-instansen.

    sudo crm node online anftstsapcl2
    sudo crm node standby anftstsapcl1
    
    # If using NFSv3
    sudo crm configure primitive fs_QAS_ERS Filesystem device='10.1.0.4:/usrsapqas/usrsapQASers' directory='/usr/sap/QAS/ERS01' fstype='nfs' \
      op start timeout=60s interval=0 \
      op stop timeout=60s interval=0 \
      op monitor interval=20s timeout=40s
    
    # If using NFSv4.1
    sudo crm configure primitive fs_QAS_ERS Filesystem device='10.1.0.4:/usrsapqas/usrsapQASers' directory='/usr/sap/QAS/ERS01' fstype='nfs' options='sec=sys,nfsvers=4.1' \
      op start timeout=60s interval=0 \
      op stop timeout=60s interval=0 \
      op monitor interval=20s timeout=105s
    
    sudo crm configure primitive vip_QAS_ERS IPaddr2 \
      params ip=10.1.1.21 \
      op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_QAS_ERS azure-lb port=62101 \
      op monitor timeout=20s interval=10
    
    sudo crm configure group g-QAS_ERS fs_QAS_ERS nc_QAS_ERS vip_QAS_ERS
    

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

    sudo crm_mon -r
    
    # Node anftstsapcl1: standby
    # Online: [ anftstsapcl2 ]
    # 
    # Full list of resources:
    #
    # stonith-sbd     (stonith:external/sbd): Started anftstsapcl2
    #  Resource Group: g-QAS_ASCS
    #      fs_QAS_ASCS        (ocf::heartbeat:Filesystem):    Started anftstsapcl2
    #      nc_QAS_ASCS        (ocf::heartbeat:azure-lb):      Started anftstsapcl2
    #      vip_QAS_ASCS       (ocf::heartbeat:IPaddr2):       Started anftstsapcl2
    #  Resource Group: g-QAS_ERS
    #      fs_QAS_ERS (ocf::heartbeat:Filesystem):    Started anftstsapcl2
    #      nc_QAS_ERS (ocf::heartbeat:azure-lb):      Started anftstsapcl2
    #      vip_QAS_ERS  (ocf::heartbeat:IPaddr2):     Started anftstsapcl2
    
  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, till exempel anftstsapers, 10.1.1.21 och instansnumret som du använde för avsökningen av lastbalanseraren, till exempel 01.

    Du kan använda parametern sapinst SAPINST_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.

    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/QAS/ERS01 kan du prova att ange ägare och grupp för mappen ERS01 och försöka igen.

    chown qasadm /usr/sap/QAS/ERS01
    chgrp sapsys /usr/sap/QAS/ERS01
    
  5. [1] Anpassa ASCS/SCS- och ERS-instansprofilerna

    • ASCS/SCS-profil

      sudo vi /sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh
      
      # 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_CT_RUN)/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
      

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

    • ERS-profil

      sudo vi /sapmnt/QAS/profile/QAS_ERS01_anftstsapers
      
      # 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_CT_RUN)/saphascriptco.so
      service/halib_cluster_connector = /usr/bin/sap_suse_cluster_connector
      
      # remove Autostart from ERS profile
      # Autostart = 1
      
  6. [A] Konfigurera Keep Alive

    Kommunikationen mellan SAP NetWeaver-programservern och ASCS/SCS dirigeras via en lastbalanserare för programvara. Lastbalanseraren kopplar från inaktiva anslutningar efter en konfigurerbar tidsgräns. För att förhindra detta måste du ange en parameter i SAP NetWeaver ASCS/SCS-profilen, om du använder ENSA1 och ändra Linux-systeminställningarna keepalive på alla SAP-servrar för både ENSA1/ENSA2. Läs SAP Note 1410736 för mer information.

    # Change the Linux system configuration
    sudo sysctl net.ipv4.tcp_keepalive_time=300
    
  7. [A] Konfigurera SAP-användarna efter installationen

    # Add sidadm to the haclient group
    sudo usermod -aG haclient qasadm
    
  8. [1] Lägg till ASCS- och ERS SAP-tjänsterna i sapservice filen

    Lägg till ASCS-tjänstposten till den andra noden och kopiera posten för ERS-tjänsten till den första noden.

    cat /usr/sap/sapservices | grep ASCS00 | sudo ssh anftstsapcl2 "cat >>/usr/sap/sapservices"
    sudo ssh anftstsapcl2 "cat /usr/sap/sapservices" | grep ERS01 | sudo tee -a /usr/sap/sapservices
    
  9. [A] Inaktivera systemd tjänster för ASCS- och ERS SAP-instansen. Det här steget gäller endast om SAP-startramverket hanteras av systemd enligt SAP Note 3115048

    Kommentar

    När du hanterar SAP-instanser som SAP ASCS och SAP ERS med SLES-klusterkonfiguration måste du göra ytterligare ändringar för att integrera klustret med det interna systembaserade SAP-startramverket. Detta säkerställer att underhållsprocedurerna inte äventyrar klusterstabiliteten. När du har installerat eller bytt SAP-startramverk till systemaktiverad installation enligt SAP Note 3115048 bör du inaktivera systemd tjänsterna för ASCS- och ERS SAP-instanserna.

    # Stop ASCS and ERS instances using <sid>adm
    sapcontrol -nr 00 -function Stop
    sapcontrol -nr 00 -function StopService
    
    sapcontrol -nr 01 -function Stop
    sapcontrol -nr 01 -function StopService
    
    # Execute below command on VM where you have performed ASCS instance installation (e.g. anftstsapcl1)
    sudo systemctl disable SAPQAS_00
    # Execute below command on VM where you have performed ERS instance installation (e.g. anftstsapcl2)
    sudo systemctl disable SAPQAS_01
    
  10. [1] Skapa SAP-klusterresurserna.

    Beroende på om du kör ett ENSA1- eller ENSA2-system väljer du respektive flik för att definiera resurserna. 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.

    sudo crm configure property maintenance-mode="true"
    
    # If using NFSv3
    sudo crm configure primitive rsc_sap_QAS_ASCS00 SAPInstance \
       operations \$id=rsc_sap_QAS_ASCS00-operations \
       op monitor interval=11 timeout=60 on-fail=restart \
       params InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \
       AUTOMATIC_RECOVER=false \
       meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10
    
    # If using NFSv4.1
    sudo crm configure primitive rsc_sap_QAS_ASCS00 SAPInstance \
       operations \$id=rsc_sap_QAS_ASCS00-operations \
       op monitor interval=11 timeout=105 on-fail=restart \
       params InstanceName=QAS_ASCS00_anftstsapvh START_PROFILE="/sapmnt/QAS/profile/QAS_ASCS00_anftstsapvh" \
       AUTOMATIC_RECOVER=false \
       meta resource-stickiness=5000 failure-timeout=105 migration-threshold=1 priority=10
    
    # If using NFSv3   
    sudo crm configure primitive rsc_sap_QAS_ERS01 SAPInstance \
       operations \$id=rsc_sap_QAS_ERS01-operations \
       op monitor interval=11 timeout=60 on-fail=restart \
       params InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" AUTOMATIC_RECOVER=false IS_ERS=true \
       meta priority=1000
    
    # If using NFSv4.1
    sudo crm configure primitive rsc_sap_QAS_ERS01 SAPInstance \
       operations \$id=rsc_sap_QAS_ERS01-operations \
       op monitor interval=11 timeout=105 on-fail=restart \
       params InstanceName=QAS_ERS01_anftstsapers START_PROFILE="/sapmnt/QAS/profile/QAS_ERS01_anftstsapers" AUTOMATIC_RECOVER=false IS_ERS=true \
       meta priority=1000
    
    sudo crm configure modgroup g-QAS_ASCS add rsc_sap_QAS_ASCS00
    sudo crm configure modgroup g-QAS_ERS add rsc_sap_QAS_ERS01
    
    sudo crm configure colocation col_sap_QAS_no_both -5000: g-QAS_ERS g-QAS_ASCS
    sudo crm configure location loc_sap_QAS_failover_to_ers rsc_sap_QAS_ASCS00 rule 2000: runs_ers_QAS eq 1
    sudo crm configure order ord_sap_QAS_first_start_ascs Optional: rsc_sap_QAS_ASCS00:start rsc_sap_QAS_ERS01:stop symmetrical=false
    
    sudo crm_attribute --delete --name priority-fencing-delay
    
    sudo crm node online anftstsapcl1
    sudo crm configure property maintenance-mode="false"
    

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

Kommentar

De högre timeouter som föreslås vid användning av NFSv4.1 är nödvändiga på grund av protokollspecifik paus, relaterade till NFSv4.1-låneförnyelser. Mer information finns i NFS i Bästa praxis för NetApp.

Tidsgränserna i ovanstående konfiguration 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.

sudo crm_mon -r
  
# Full list of resources:
#
# stonith-sbd     (stonith:external/sbd): Started anftstsapcl2
#  Resource Group: g-QAS_ASCS
#      fs_QAS_ASCS        (ocf::heartbeat:Filesystem):    Started anftstsapcl1
#      nc_QAS_ASCS        (ocf::heartbeat:azure-lb):      Started anftstsapcl1
#      vip_QAS_ASCS       (ocf::heartbeat:IPaddr2):       Started anftstsapcl1
#      rsc_sap_QAS_ASCS00 (ocf::heartbeat:SAPInstance):   Started anftstsapcl1
#  Resource Group: g-QAS_ERS
#      fs_QAS_ERS (ocf::heartbeat:Filesystem):    Started anftstsapcl2
#      nc_QAS_ERS (ocf::heartbeat:azure-lb):      Started anftstsapcl2
#      vip_QAS_ERS        (ocf::heartbeat:IPaddr2):       Started anftstsapcl2
#      rsc_sap_QAS_ERS01  (ocf::heartbeat:SAPInstance):   Started anftstsapcl2

Förberedelse av SAP NetWeaver-programserver

Vissa databaser kräver att installationen av databasinstansen körs på en programserver. Förbered programserverns virtuella datorer för att kunna använda dem i dessa fall.

Stegen nedan förutsätter att du installerar programservern på en annan server än ASCS/SCS- och HANA-servrarna. Annars behövs inte några av stegen nedan (t.ex. konfiguration av värdnamnsmatchning).

Följande objekt är prefix med antingen [A] – som gäller för både PAS och AAS, [P] – endast tillämpligt på PAS eller [S] – som endast gäller för AAS.

  1. [A] Konfigurera operativsystem

    Minska storleken på den smutsiga cachen. Mer information finns i Låg skrivprestanda på SLES 11/12-servrar med stort RAM-minne.

    sudo vi /etc/sysctl.conf
    
    # Change/set the following settings
    vm.dirty_bytes = 629145600
    vm.dirty_background_bytes = 314572800
    
  2. [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 använder filen /etc/hosts. Ersätt IP-adressen och värdnamnet i följande kommandon

    sudo vi /etc/hosts
    

    Infoga följande rader i /etc/hosts. Ändra IP-adressen och värdnamnet så att de matchar din miljö

    # IP address of the load balancer frontend configuration for SAP NetWeaver ASCS/SCS
    10.1.1.20 anftstsapvh
    # IP address of the load balancer frontend configuration for SAP NetWeaver ERS
    10.1.1.21 anftstsapers
    # IP address of all application servers
    10.1.1.15 anftstsapa01
    10.1.1.16 anftstsapa02
    
  3. [A] Skapa sapmnt-katalogen

    sudo mkdir -p /sapmnt/QAS
    sudo mkdir -p /usr/sap/trans
    
    sudo chattr +i /sapmnt/QAS
    sudo chattr +i /usr/sap/trans
    
  4. [P] Skapa PAS-katalogen

    sudo mkdir -p /usr/sap/QAS/D02
    sudo chattr +i /usr/sap/QAS/D02
    
  5. [S] Skapa AAS-katalogen

    sudo mkdir -p /usr/sap/QAS/D03
    sudo chattr +i /usr/sap/QAS/D03
    
  6. [P] Konfigurera autofs på PAS

    sudo vi /etc/auto.master
    
    # Add the following line to the file, save and exit
    /- /etc/auto.direct
    

    Om du använder NFSv3 skapar du en ny fil med:

    sudo vi /etc/auto.direct
    
    # Add the following lines to the file, save and exit
    /sapmnt/QAS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/sapmntQAS
    /usr/sap/trans -nfsvers=3,nobind 10.1.0.4:/trans
    /usr/sap/QAS/D02 -nfsvers=3,nobind 10.1.0.4:/usrsapqas/usrsapQASpas
    

    Om du använder NFSv4.1 skapar du en ny fil med:

    sudo vi /etc/auto.direct
    # Add the following lines to the file, save and exit
    /sapmnt/QAS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/sapmntQAS
    /usr/sap/trans -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/trans
    /usr/sap/QAS/D02 -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/usrsapQASpas
    

    Starta om autofs för att montera de nya resurserna

    sudo systemctl enable autofs
    sudo service autofs restart
    
  7. [P] Konfigurera autofs på AAS

    sudo vi /etc/auto.master
    
    # Add the following line to the file, save and exit
    /- /etc/auto.direct
    

    Om du använder NFSv3 skapar du en ny fil med:

    sudo vi /etc/auto.direct
    
    # Add the following lines to the file, save and exit
    /sapmnt/QAS -nfsvers=3,nobind 10.1.0.4:/usrsapqas/sapmntQAS
    /usr/sap/trans -nfsvers=3,nobind 10.1.0.4:/trans
    /usr/sap/QAS/D03 -nfsvers=3,nobind 10.1.0.4:/usrsapqas/usrsapQASaas
    

    Om du använder NFSv4.1 skapar du en ny fil med:

    sudo vi /etc/auto.direct
    
    # Add the following lines to the file, save and exit
    /sapmnt/QAS -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/sapmntQAS
    /usr/sap/trans -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/trans
    /usr/sap/QAS/D03 -nfsvers=4.1,nobind,sec=sys 10.1.0.4:/usrsapqas/usrsapQASaas
    

    Starta om autofs för att montera de nya resurserna

    sudo systemctl enable autofs
    sudo service autofs restart
    
  8. [A] Konfigurera SWAP-fil

    sudo vi /etc/waagent.conf
    
    # 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
    

    Starta om agenten för att aktivera ändringen

    sudo service waagent restart
    

Installera databas

I det här exemplet installeras SAP NetWeaver på SAP HANA. Du kan använda alla databaser som stöds för den här installationen. Mer information om hur du installerar SAP HANA i Azure finns i Hög tillgänglighet för SAP HANA på virtuella Azure-datorer .) En lista över databaser som stöds finns i SAP Note 1928533.

  • Kör installationen av SAP-databasinstansen

    Installera SAP NetWeaver-databasinstansen som rot med hjälp av ett virtuellt värdnamn som mappar till IP-adressen för klientdelskonfigurationen för lastbalanseraren för databasen.

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

    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
    

Installation av SAP NetWeaver-programserver

Följ de här stegen för att installera en SAP-programserver.

  1. [A] Förbered programservern Följ stegen i kapitlet SAP NetWeaver-programserverförberedelse ovan för att förbereda programservern.

  2. [A] Installera SAP NetWeaver-programserver Installera en primär eller ytterligare SAP NetWeaver-programserver.

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

    sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
    
  3. [A] Uppdatera SAP HANA-säker lagring

    Uppdatera DET säkra SAP HANA-arkivet så att det pekar på det virtuella namnet på installationsprogrammet för SAP HANA-systemreplikering.

    Kör följande kommando för att lista posterna

    hdbuserstore List
    

    Detta bör visa en lista över alla poster och bör se ut ungefär som

    DATA FILE       : /home/qasadm/.hdb/anftstsapa01/SSFS_HDB.DAT
    KEY FILE        : /home/qasadm/.hdb/anftstsapa01/SSFS_HDB.KEY
    
    KEY DEFAULT
      ENV : 10.1.1.5:30313
      USER: SAPABAP1
      DATABASE: QAS
    

    Utdata visar att IP-adressen för standardposten pekar på den virtuella datorn och inte på lastbalanserarens IP-adress. Den här posten måste ändras så att den pekar på lastbalanserarens virtuella värdnamn. Se till att använda samma port (30313 i utdata ovan) och databasnamn (QAS i utdata ovan)!

    su - qasadm
    
    hdbuserstore SET DEFAULT qasdb:30313@QAS SAPABAP1 <password of ABAP schema>
    

Testa klusterkonfigurationen

Testa pacemakerklustret noggrant. Kör de typiska redundanstesterna.

Nästa steg