Dela via


SAP NetWeaver med hög tillgänglighet med enkel montering och NFS på SLES för virtuella SAP-programdatorer

Den här artikeln beskriver hur du distribuerar och konfigurerar virtuella Azure-datorer (VM), installerar klusterramverket och installerar ett SAP NetWeaver-system med hög tillgänglighet (HA) med en enkel monteringsstruktur. Du kan implementera den presenterade arkitekturen med någon av följande azure-tjänster (NFS) (Network File System):

Den enkla monteringskonfigurationen förväntas vara standard för nya implementeringar på SLES för SAP-program 15.

Förutsättningar

Följande guider innehåller all nödvändig information för att konfigurera ett NetWeaver HA-system:

Översikt

Den här artikeln beskriver en konfiguration med hög tillgänglighet för ASCS med en enkel monteringsstruktur. För att distribuera SAP-programskiktet behöver du delade kataloger som /sapmnt/SID, /usr/sap/SIDoch /usr/sap/trans, som är mycket tillgängliga. Du kan distribuera dessa filsystem på NFS på Azure Files eller Azure NetApp Files.

Du behöver fortfarande ett Pacemaker-kluster för att skydda komponenter med en enda felpunkt som SAP Central Services (SCS) och ASCS.

Jämfört med den klassiska Pacemaker-klusterkonfigurationen, med den enkla monteringsdistributionen, hanterar klustret inte filsystemen. Den här konfigurationen stöds endast på SLES för SAP-program 15 och senare. Den här artikeln beskriver inte databasskiktet i detalj.

Exempelkonfigurationer och installationskommandon använder följande instansnummer.

Instansnamn Instansnummer
ASCS 00
Enqueue Replication Server (ERS) 01
Primär programserver (PAS) 02
Ytterligare programserver (AAS) 03
SAP-systemidentifierare NW1

Viktigt!

Konfigurationen med enkel monteringsstruktur stöds endast på SLES för SAP-program 15 och senare versioner.

Diagram som visar hög tillgänglighet för SAP NetWeaver med enkel montering och NFS.

Det här diagrammet visar en typisk SAP NetWeaver HA-arkitektur med en enkel montering. Filsystemen "sapmnt" och "saptrans" distribueras på Azures interna NFS: NFS-resurser på Azure Files- eller NFS-volymer på Azure NetApp Files. Ett Pacemaker-kluster skyddar SAP:s centrala tjänster. De klustrade virtuella datorerna ligger bakom en Azure-lastbalanserare. Pacemaker-klustret hanterar inte filsystemen, till skillnad från den klassiska Pacemaker-konfigurationen.

Förbered 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 en intern (ingen offentlig IP-adress) Standard Azure-lastbalanserare, kommer det inte att finnas någon utgående Internetanslutning om du inte utför ytterligare konfiguration 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 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.
  • 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?.

Distribuera NFS

Det finns två alternativ för att distribuera azure-inbyggda NFS som värd för delade SAP-kataloger. Du kan antingen distribuera en NFS-filresurs på Azure Files eller distribuera en NFS-volym på Azure NetApp Files. NFS på Azure Files stöder NFSv4.1-protokollet. NFS på Azure NetApp Files stöder både NFSv4.1 och NFSv3.

I nästa avsnitt beskrivs stegen för att distribuera NFS. Välj bara ett av alternativen.

Distribuera ett Azure Files-lagringskonto och NFS-resurser

NFS på Azure Files körs ovanpå Azure Files Premium Storage. Innan du konfigurerar NFS på Azure Files kan du läsa Så här skapar du en NFS-resurs.

Det finns två alternativ för redundans i en Azure-region:

Kontrollera om den valda Azure-regionen erbjuder NFSv4.1 på Azure Files med lämplig redundans. Granska tillgängligheten för Azure Files per Azure-region för Premium Files Storage. Om ditt scenario drar nytta av ZRS kontrollerar du att premiumfilresurser med ZRS stöds i din Azure-region.

Vi rekommenderar att du kommer åt ditt Azure Storage-konto via en privat Azure-slutpunkt. Se till att distribuera slutpunkten för Azure Files-lagringskontot och de virtuella datorer där du behöver montera NFS-resurserna, i samma virtuella Azure-nätverk eller i peerkopplade virtuella Azure-nätverk.

  1. Distribuera ett Azure Files-lagringskonto med namnet sapnfsafs. I det här exemplet används ZRS. Om du inte är bekant med processen kan du läsa Skapa ett lagringskonto för Azure-portalen.
  2. Använd följande inställningar på fliken Grundläggande :
    1. Ange sapnfsafs som Lagringskontonamn.
    2. För Prestanda väljer du Premium.
    3. Som Premium-kontotyp väljer du FileStorage.
    4. För Replikering väljer du Zonredundans (ZRS).
  3. Välj Nästa.
  4. På fliken Avancerat avmarkerar du Kräv säker överföring för REST API. Om du inte avmarkerar det här alternativet kan du inte montera NFS-resursen på den virtuella datorn. Monteringsåtgärden överskrider tidsgränsen.
  5. Välj Nästa.
  6. I avsnittet Nätverk konfigurerar du följande inställningar:
    1. Under Nätverksanslutning väljer du Privat slutpunkt för Anslutningsmetod.
    2. Under Privat slutpunkt väljer du Lägg till privat slutpunkt.
  7. I fönstret Skapa privat slutpunkt väljer du din prenumeration, resursgrupp och plats. Gör sedan följande val:
    1. Som Namn anger du sapnfsafs_pe.
    2. För Lagringsunderresurs väljer du fil.
    3. Under Nätverk för Virtuellt nätverk väljer du det virtuella nätverk och undernät som ska användas. Återigen kan du använda antingen det virtuella nätverket där dina virtuella SAP-datorer finns eller ett peer-kopplat virtuellt nätverk.
    4. Under Privat DNS-integrering godkänner du standardalternativet Ja för Integrera med privat DNS-zon. Se till att välja din privata DNS-zon.
    5. Välj OK.
  8. På fliken Nätverk igen väljer du Nästa.
  9. Behåll alla standardinställningar på fliken Dataskydd .
  10. Välj Granska + skapa för att verifiera konfigurationen.
  11. Vänta tills verifieringen har slutförts. Åtgärda eventuella problem innan du fortsätter.
  12. På fliken Granska + skapa väljer du Skapa.

Distribuera sedan NFS-resurserna i det lagringskonto som du skapade. I det här exemplet finns det två NFS-resurser sapnw1 och saptrans.

  1. Logga in på Azure-portalen.
  2. Välj eller sök efter Lagringskonton.
  3. På sidan Lagringskonton väljer du sapnfsafs.
  4. På resursmenyn för sapnfsafs väljer du Filresurser under Datalagring.
  5. På sidan Filresurser väljer du Filresurs och sedan:
    1. Som Namn anger du sapnw1, saptrans.
    2. Välj en lämplig resursstorlek. Överväg storleken på de data som lagras på resursen, I/O per sekund (IOPS) och dataflödeskrav. Mer information finns i Azure-filresursmål.
    3. Välj NFS som protokoll.
    4. Välj Ingen rot squash. Annars kan du inte se filägaren eller gruppen när du monterar resurserna på dina virtuella datorer.

DE SAP-filsystem som inte behöver monteras via NFS kan också distribueras på Azure-disklagring. I det här exemplet kan du distribuera /usr/sap/NW1/D02 och /usr/sap/NW1/D03 på Azure-disklagring.

Viktiga överväganden för NFS på Azure Files-resurser

När du planerar distributionen med NFS i Azure Files bör du tänka på följande viktiga punkter:

  • Den minsta resursstorleken är 100 gibibyte (GiB). Du betalar bara för kapaciteten för de etablerade resurserna.
  • Ändra storleken på dina NFS-resurser inte bara baserat på kapacitetskrav, utan även på IOPS- och dataflödeskrav. Mer information finns i Azure-filresursmål.
  • Testa arbetsbelastningen för att verifiera din storlek och se till att den uppfyller dina prestandamål. Information om hur du felsöker prestandaproblem med NFS på Azure Files finns i Felsöka prestanda för Azure-filresurser.
  • För SAP J2EE-system stöds inte placering /usr/sap/<SID>/J<nr> på NFS i Azure Files.
  • Om SAP-systemet har en stor belastning på batchjobb kan du ha miljontals jobbloggar. Om SAP-batchjobbloggarna lagras i filsystemet bör du vara särskilt uppmärksam på resursens sapmnt storlek. Från och med SAP_BASIS 7.52 ska standardbeteendet för batchjobbloggarna lagras i databasen. Mer information finns i Jobblogg i databasen.
  • Distribuera en separat sapmnt resurs för varje SAP-system.
  • Använd inte resursen sapmnt för någon annan aktivitet, till exempel gränssnitt.
  • Använd inte resursen saptrans för någon annan aktivitet, till exempel gränssnitt.
  • Undvik att konsolidera resurserna för för många SAP-system på ett enda lagringskonto. Det finns också skalbarhets- och prestandamål för lagringskonton. Var noga med att inte överskrida gränserna för lagringskontot också.
  • I allmänhet ska du inte konsolidera resurserna för fler än fem SAP-system på ett enda lagringskonto. Den här riktlinjen hjälper dig att undvika att överskrida lagringskontots gränser och förenklar prestandaanalysen.
  • Undvik i allmänhet att blanda resurser som sapmnt för icke-produktions- och produktions-SAP-system på samma lagringskonto.
  • Vi rekommenderar att du distribuerar på SLES 15 SP2 eller senare för att dra nytta av NFS-klientförbättringar.
  • Använd en privat slutpunkt. I den osannolika händelsen av ett zonfel omdirigerar dina NFS-sessioner automatiskt till en felfri zon. Du behöver inte montera om NFS-resurserna på dina virtuella datorer.
  • Om du distribuerar dina virtuella datorer mellan tillgänglighetszoner använder du ett lagringskonto med ZRS i De Azure-regioner som har stöd för ZRS.
  • Azure Files stöder för närvarande inte automatisk replikering mellan regioner för haveriberedskapsscenarier.

Distribuera Azure NetApp Files-resurser

  1. Kontrollera att Azure NetApp Files-tjänsten är tillgänglig i valfri Azure-region.

  2. Skapa NetApp-kontot i den valda Azure-regionen. Följ dessa anvisningar.

  3. Konfigurera kapacitetspoolen för Azure NetApp Files. Följ dessa anvisningar.

    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-programarbetsbelastningar i Azure.

  4. Delegera ett undernät till Azure NetApp Files enligt beskrivningen i de här anvisningarna.

  5. Distribuera Azure NetApp Files-volymer genom att följa dessa instruktioner. 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änds två Azure NetApp Files-volymer: sapnw1 och trans. De filsökvägar som monteras på motsvarande monteringspunkter är:

    • Volym sapnw1 (nfs://10.27.1.5/sapnw1/sapmntNW1)
    • Volym sapnw1 (nfs://10.27.1.5/sapnw1/usrsapNW1)
    • Volym trans (nfs://10.27.1.5/trans)

DE SAP-filsystem som inte behöver delas kan också distribueras på Azure-disklagring. Till exempel /usr/sap/NW1/D02 och /usr/sap/NW1/D03 kan distribueras som Azure-disklagring.

Viktiga överväganden för NFS på Azure NetApp Files

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

  • Den minsta kapacitetspoolen är 4 tebibyte (TiB). Du kan öka storleken på kapacitetspoolen i steg om 1 TiB.
  • Den minsta volymen är 100 GiB.
  • 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 peering för virtuella nätverk i samma region stöds. Azure NetApp Files-åtkomst via global peering stöds ännu inte.
  • Det valda virtuella nätverket måste ha ett undernät som är 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å Azure NetApp Files-volymerna för SAP kontrollerar du att det resulterande dataflödet uppfyller programmets krav.
  • Azure NetApp Files erbjuder en exportprincip. Du kan styra de tillåtna klienterna och åtkomsttypen (till exempel skrivskyddad eller skrivskyddad).
  • Azure NetApp Files är inte zonmedveten ännu. För närvarande distribueras inte Azure NetApp Files 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).

Konfigurera ASCS

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

Skapa ett 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 SAP ASCS.

Förbered installation

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.
  1. [A] Installera den senaste versionen av SUSE-anslutningsappen.

    sudo zypper install sap-suse-cluster-connector
    
  2. [A] Installera resursagenten sapstartsrv .

    sudo zypper install sapstartsrv-resource-agents
    
  3. [A] Uppdatera SAP-resursagenter.

    Om du vill använda konfigurationen som beskrivs i den här artikeln behöver du en korrigering för resursagentpaketet. Om du vill kontrollera om korrigeringen redan är installerad använder du följande kommando.

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

    Utdata bör likna följande exempel.

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

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

    Viktigt!

    Du måste installera minst sapstartsrv-resource-agents version 0.91 och resource-agents 4.x från november 2021.

  4. [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.

    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.27.0.6    sap-cl1
     # IP address of cluster node 2
     10.27.0.7     sap-cl2
     # IP address of the load balancer's front-end configuration for SAP NetWeaver ASCS
     10.27.0.9   sapascs
     # IP address of the load balancer's front-end configuration for SAP NetWeaver ERS
     10.27.0.10    sapers
    
  5. [A] Konfigurera SWAP-filen.

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

    Starta om agenten för att aktivera ändringen.

    sudo service waagent restart
    

Förbereda SAP-kataloger om du använder NFS i Azure Files

  1. [1] Skapa SAP-katalogerna på NFS-resursen.

    Montera tillfälligt NFS-resursen sapnw1 på en av de virtuella datorerna och skapa de SAP-kataloger som ska användas som kapslade monteringspunkter.

    # Temporarily mount the volume.
    sudo mkdir -p /saptmp
    sudo mount -t nfs sapnfsafs.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 sapmntNW1
    sudo mkdir -p usrsapNW1
    # Unmount the volume and delete the temporary directory.
    cd ..
    sudo umount /saptmp
    sudo rmdir /saptmp
    
  2. [A] Skapa de delade katalogerna.

    sudo mkdir -p /sapmnt/NW1
    sudo mkdir -p /usr/sap/NW1
    sudo mkdir -p /usr/sap/trans
    
    sudo chattr +i /sapmnt/NW1
    sudo chattr +i /usr/sap/NW1
    sudo chattr +i /usr/sap/trans   
    
  3. [A] Montera filsystemen.

    Med den enkla monteringskonfigurationen styr Pacemaker-klustret inte filsystemen.

    echo "sapnfsafs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys  0  0" >> /etc/fstab
    echo "sapnfsafs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1/ /usr/sap/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys  0  0" >> /etc/fstab
    echo "sapnfsafs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans nfs noresvport,vers=4,minorversion=1,sec=sys  0  0" >> /etc/fstab   
    # Mount the file systems.
    mount -a 
    

Förbereda SAP-kataloger om du använder NFS på Azure NetApp Files

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

  1. [A] Inaktivera ID-mappning.

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

      sudo cat /etc/idmapd.conf
      # Examplepython-azure-mgmt-compute
      [General]
      Verbosity = 0
      Pipefs-Directory = /var/lib/nfs/rpc_pipefs
      Domain = defaultv4iddomain.com
      [Mapping]
      Nobody-User = nobody
      Nobody-Group = nobody
      
    2. Verifiera nfs4_disable_idmapping. Den ska vara inställd på Y.

      Kör kommandot för att skapa katalogstrukturen där nfs4_disable_idmapping den finns mount . Du kommer inte att kunna skapa katalogen manuellt under /sys/modules, eftersom åtkomst är reserverad för kerneln och 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.27.1.5:/sapnw1 /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
      
  2. [1] Montera tillfälligt Azure NetApp Files-volymen på en av de virtuella datorerna och skapa SAP-katalogerna (filsökvägar).

    # Temporarily mount the volume.
    sudo mkdir -p /saptmp
    # If you're using NFSv3:
    sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=3,tcp 10.27.1.5:/sapnw1 /saptmp
    # If you're using NFSv4.1:
    sudo mount -t nfs -o rw,hard,rsize=65536,wsize=65536,nfsvers=4.1,sec=sys,tcp 10.27.1.5:/sapnw1 /saptmp
    # Create the SAP directories.
    sudo cd /saptmp
    sudo mkdir -p sapmntNW1
    sudo mkdir -p usrsapNW1
    # 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 /sapmnt/NW1
    sudo mkdir -p /usr/sap/NW1
    sudo mkdir -p /usr/sap/trans
    
    sudo chattr +i /sapmnt/NW1
    sudo chattr +i /usr/sap/NW1
    sudo chattr +i /usr/sap/trans
    
  4. [A] Montera filsystemen.

    Med den enkla monteringskonfigurationen styr Pacemaker-klustret inte filsystemen.

    # If you're using NFSv3:
    echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=3,hard 0 0" >> /etc/fstab
    echo "10.27.1.5:/sapnw1/usrsapNW1 /usr/sap/NW1 nfs nfsvers=3,hard 0 0" >> /etc/fstab
    echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=3,hard 0 0" >> /etc/fstab
    # If you're using NFSv4.1:
    echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab
    echo "10.27.1.5:/sapnw1/usrsapNW1 /usr/sap/NW1 nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab
    echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab
    # Mount the file systems.
    mount -a 
    

Installera SAP NetWeaver ASCS och ERS

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

    Viktigt!

    Vi rekommenderar att du använder resursagenten azure-lb , som är en del av resursagentpaketet med en lägsta version av resource-agents-4.3.0184.6ee15eb2-4.13.1.

    sudo crm node standby sap-cl2   
    sudo crm configure primitive vip_NW1_ASCS IPaddr2 \
      params ip=10.27.0.9 \
      op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW1_ASCS azure-lb port=62000 \
      op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW1_ASCS nc_NW1_ASCS vip_NW1_ASCS \
      meta resource-stickiness=3000
    

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

    sudo crm_mon -r
    # Node sap-cl2: standby
    # Online: [ sap-cl1 ]
    #
    # Full list of resources:
    #
    # stonith-sbd     (stonith:external/sbd): Started sap-cl1
    # Resource Group: g-NW1_ASCS
    #  nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
    #  vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
    
  2. [1] Installera SAP NetWeaver ASCS som rot på den första noden.

    Använd ett virtuellt värdnamn som mappar till IP-adressen för lastbalanserarens klientdelskonfiguration för ASCS (till exempel sapascs, 10.27.0.9) och det instansnummer 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 ett 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/NW1/ASCS00anger du mappens ägare och grupp ASCS00 och försöker igen.

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

    sudo crm node online sap-cl2
    sudo crm node standby sap-cl1
    
    sudo crm configure primitive vip_NW1_ERS IPaddr2 \
      params ip=10.27.0.10 \
      op monitor interval=10 timeout=20
    
    sudo crm configure primitive nc_NW1_ERS azure-lb port=62101 \
      op monitor timeout=20s interval=10
    
    sudo crm configure group g-NW1_ERS nc_NW1_ERS vip_NW1_ERS
    

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

    sudo crm_mon -r
    
    # Node sap-cl1: standby
    # Online: [ sap-cl2 ]
    # 
    # Full list of resources:
    #
    # stonith-sbd     (stonith:external/sbd): Started sap-cl2
    #  Resource Group: g-NW1_ASCS
    #      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl2
    #  Resource Group: g-NW1_ERS
    #      nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started sap-cl2
    #      vip_NW1_ERS  (ocf::heartbeat:IPaddr2):     Started sap-cl2
    
  4. [2] Installera SAP NetWeaver ERS som rot på den andra noden.

    Använd ett virtuellt värdnamn som mappar till IP-adressen för lastbalanserarens klientdelskonfiguration för ERS (till exempel sapers, 10.27.0.10) och det instansnummer som du använde för avsökningen av lastbalanseraren (till exempel 01).

    Du kan använda parametern 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 ett virtuellt värdnamn.

    <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
    

    Kommentar

    Använd SWPM SP 20 PL 05 eller senare. Tidigare versioner anger inte behörigheterna korrekt, och de gör att installationen misslyckas.

    Om installationen inte kan skapa en undermapp i /usr/sap/NW1/ERS01anger du mappens ägare och grupp ERS01 och försöker igen.

    chown nw1adm /usr/sap/NW1/ERS01
    chgrp sapsys /usr/sap/NW1/ERS01
    
  5. [1] Anpassa ASCS-instansprofilen.

    sudo vi /sapmnt/NW1/profile/NW1_ASCS00_sapascs
    
    # 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 keepalive parameter, if you're using ENSA1.
    enque/encni/set_so_keepalive = true
    

    För fristående Enqueue Server 1 och 2 (ENSA1 och ENSA2) kontrollerar du att OS-parametrarna anges enligt beskrivningen keepalive i SAP Note 1410736.

    Anpassa nu ERS-instansprofilen.

    sudo vi /sapmnt/NW1/profile/NW1_ERS01_sapers
    
    # 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 the ERS profile.
    # Autostart = 1
    
  6. [A] Konfigurera keepalive.

    Kommunikationen mellan SAP NetWeaver-programservern och ASCS dirigeras via en lastbalanserare för programvara. Lastbalanseraren kopplar från inaktiva anslutningar efter en konfigurerbar tidsgräns.

    För att förhindra den här frånkopplingen måste du ange en parameter i SAP NetWeaver ASCS-profilen om du använder ENSA1. Ändra Linux-systeminställningarna keepalive på alla SAP-servrar för både ENSA1 och ENSA2. Mer information finns i SAP Note1410736.

    # 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 nw1adm
    
  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 ERS-tjänstposten till den första noden.

    cat /usr/sap/sapservices | grep ASCS00 | sudo ssh sap-cl2 "cat >>/usr/sap/sapservices"
    sudo ssh sap-cl2 "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. sap-cl1)
    sudo systemctl disable SAPNW1_00
    # Execute below command on VM where you have performed ERS instance installation (e.g. sap-cl2)
    sudo systemctl disable SAPNW1_01
    
  10. [A] Aktivera sapping och sappong. Agenten sapping körs innan sapinit för att dölja /usr/sap/sapservices filen. Agenten sappong körs efter sapinit för att ta sapservices fram filen under vm-start. SAPStartSrv startas inte automatiskt för en SAP-instans vid starttiden, eftersom Pacemaker-klustret hanterar den.

    sudo systemctl enable sapping
    sudo systemctl enable sappong
    
  11. [1] Skapa SAPStartSrv resurs för ASCS och ERS genom att skapa en fil och sedan läsa in filen.

    vi crm_sapstartsrv.txt
    

    Ange nedanstående primitiva i crm_sapstartsrv.txt filen och spara

    primitive rsc_sapstartsrv_NW1_ASCS00 ocf:suse:SAPStartSrv \
     params InstanceName=NW1_ASCS00_sapascs
    
    primitive rsc_sapstartsrv_NW1_ERS01 ocf:suse:SAPStartSrv \
     params InstanceName=NW1_ERS01_sapers
    

    Läs in filen med kommandot nedan.

    sudo crm configure load update crm_sapstartsrv.txt
    

    Kommentar

    Om du har konfigurerat en SAPStartSrv-resurs med hjälp av "crm configure primitive..." kommandot på crmsh version 4.4.0+20220708.6ed6b56f-150400.3.3.1 eller senare, det är viktigt att granska konfigurationen av SAPStartSrv-resursprimärerna. Om det finns en övervakningsåtgärd bör den tas bort. Även om SUSE också föreslår att start- och stoppåtgärder tas bort, men dessa är inte lika viktiga som övervakningsåtgärden. Mer information finns i de senaste ändringarna i crmsh-paketet kan resultera i att SAPStartSrv-resursagenten inte stöds i ett SAP NetWeaver HA-kluster.

  12. [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 you're using NFS on Azure Files or NFSv3 on Azure NetApp Files:
    sudo crm configure primitive rsc_sap_NW1_ASCS00 SAPInstance \
     op monitor interval=11 timeout=60 on-fail=restart \
     params InstanceName=NW1_ASCS00_sapascs START_PROFILE="/sapmnt/NW1/profile/NW1_ASCS00_sapascs" \
     AUTOMATIC_RECOVER=false MINIMAL_PROBE=true \
     meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10
    
    # If you're using NFS on Azure Files or NFSv3 on Azure NetApp Files:
    sudo crm configure primitive rsc_sap_NW1_ERS01 SAPInstance \
     op monitor interval=11 timeout=60 on-fail=restart \
     params InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" \
     AUTOMATIC_RECOVER=false IS_ERS=true MINIMAL_PROBE=true \
     meta priority=1000
    
    # If you're using NFSv4.1 on Azure NetApp Files:
    sudo crm configure primitive rsc_sap_NW1_ASCS00 SAPInstance \
     op monitor interval=11 timeout=105 on-fail=restart \
     params InstanceName=NW1_ASCS00_sapascs START_PROFILE="/sapmnt/NW1/profile/NW1_ASCS00_sapascs" \
     AUTOMATIC_RECOVER=false MINIMAL_PROBE=true \
     meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10
    
    # If you're using NFSv4.1 on Azure NetApp Files:
    sudo crm configure primitive rsc_sap_NW1_ERS01 SAPInstance \
     op monitor interval=11 timeout=105 on-fail=restart \
     params InstanceName=NW1_ERS01_sapers START_PROFILE="/sapmnt/NW1/profile/NW1_ERS01_sapers" \
     AUTOMATIC_RECOVER=false IS_ERS=true MINIMAL_PROBE=true \
     meta priority=1000
    
    sudo crm configure modgroup g-NW1_ASCS add rsc_sapstartsrv_NW1_ASCS00
    sudo crm configure modgroup g-NW1_ASCS add rsc_sap_NW1_ASCS00
    sudo crm configure modgroup g-NW1_ERS add rsc_sapstartsrv_NW1_ERS01
    sudo crm configure modgroup g-NW1_ERS add rsc_sap_NW1_ERS01
    
    sudo crm configure colocation col_sap_NW1_no_both -5000: g-NW1_ERS g-NW1_ASCS
    sudo crm configure location loc_sap_NW1_failover_to_ers rsc_sap_NW1_ASCS00 rule 2000: runs_ers_NW1 eq 1
    sudo crm configure order ord_sap_NW1_first_start_ascs Optional: rsc_sap_NW1_ASCS00:start rsc_sap_NW1_ERS01:stop symmetrical=false
    
    sudo crm_attribute --delete --name priority-fencing-delay
    
    sudo crm node online sap-cl1
    sudo crm configure property maintenance-mode="false"
    

Om du uppgraderar från en äldre version och växlar till ENSA2 läser du SAP Note 2641019.

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

sudo crm_mon -r
# Full list of resources:
# 
# stonith-sbd     (stonith:external/sbd): Started sap-cl2
#  Resource Group: g-NW1_ASCS
#      nc_NW1_ASCS        (ocf::heartbeat:azure-lb):      Started sap-cl1
#      vip_NW1_ASCS       (ocf::heartbeat:IPaddr2):       Started sap-cl1
#      rsc_sapstartsrv_NW1_ASCS00 (ocf::suse:SAPStartSrv):        Started sap-cl1
#      rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance):   Started sap-cl1
#  Resource Group: g-NW1_ERS
#      nc_NW1_ERS (ocf::heartbeat:azure-lb):      Started sap-cl2
#      vip_NW1_ERS        (ocf::heartbeat:IPaddr2):       Started sap-cl2
#      rsc_sapstartsrv_NW1_ERS01  (ocf::suse:SAPStartSrv):        Started sap-cl2
#      rsc_sap_NW1_ERS01  (ocf::heartbeat:SAPInstance):   Started sap-cl1

Förbereda SAP-programservern

Vissa databaser kräver att du kör databasinstallationen på en programserver. Förbered de virtuella datorerna på programservern för att kunna köra databasinstallationen.

Följande vanliga steg förutsätter att du installerar programservern på en server som skiljer sig från ASCS- och HANA-servrarna:

  1. 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.

    sudo vi /etc/hosts
    

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

    10.27.0.6   sap-cl1
    10.27.0.7   sap-cl2
    # IP address of the load balancer's front-end configuration for SAP NetWeaver ASCS
    10.27.0.9   sapascs
    # IP address of the load balancer's front-end configuration for SAP NetWeaver ERS
    10.27.0.10  sapers
    10.27.0.8   sapa01
    10.27.0.12  sapa02
    
  2. Konfigurera SWAP-filen.

    sudo vi /etc/waagent.conf
    
    # Set the ResourceDisk.EnableSwap property to y.
    # Create and use the SWAP file on the resource disk.
    ResourceDisk.EnableSwap=y
    
    # Set the size of the SWAP file by using the ResourceDisk.SwapSizeMB property.
    # The free space of the resource disk varies by virtual machine size. Don't set a value that's too big. You can check the SWAP space by using the swapon command.
    ResourceDisk.SwapSizeMB=2000
    

    Starta om agenten för att aktivera ändringen.

    sudo service waagent restart
    

Förbereda SAP-kataloger

Om du använder NFS på Azure Files använder du följande instruktioner för att förbereda SAP-katalogerna på de virtuella SAP-programserverdatorerna:

  1. Skapa monteringspunkterna.

    sudo mkdir -p /sapmnt/NW1
    sudo mkdir -p /usr/sap/trans
    
    sudo chattr +i /sapmnt/NW1
    sudo chattr +i /usr/sap/trans
    
  2. Montera filsystemen.

    echo "sapnfsafs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1  nfs noresvport,vers=4,minorversion=1,sec=sys  0  0" >> /etc/fstab
    echo "sapnfsafs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans  nfs noresvport,vers=4,minorversion=1,sec=sys  0  0" >> /etc/fstab   
    # Mount the file systems.
    mount -a 
    

Om du använder NFS på Azure NetApp Files använder du följande instruktioner för att förbereda SAP-katalogerna på de virtuella SAP-programserverdatorerna:

  1. Skapa monteringspunkterna.

    sudo mkdir -p /sapmnt/NW1
    sudo mkdir -p /usr/sap/trans
    
    sudo chattr +i /sapmnt/NW1
    sudo chattr +i /usr/sap/trans
    
    
  2. Montera filsystemen.

    # If you're using NFSv3:
    echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=3,hard 0 0" >> /etc/fstab
    echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=3, hard 0 0" >> /etc/fstab
    # If you're using NFSv4.1:
    echo "10.27.1.5:/sapnw1/sapmntNW1 /sapmnt/NW1 nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab    
    echo "10.27.1.5:/saptrans /usr/sap/trans nfs nfsvers=4.1,sec=sys,hard 0 0" >> /etc/fstab
    # Mount the file systems.
    mount -a 
    

Installera databasen

I det här exemplet installeras SAP NetWeaver på SAP HANA. Du kan använda valfri databas 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.

Installera SAP NetWeaver-databasinstansen som rot med hjälp av ett virtuellt värdnamn som mappar till IP-adressen för lastbalanserarens klientdelskonfiguration för databasen. Du kan använda parametern 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

Installera SAP NetWeaver-programservern

Följ dessa steg för att installera en SAP-programserver:

  1. [A] Förbered programservern.

    Följ stegen i förberedelsen av SAP NetWeaver-programservern.

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

    Du kan använda parametern 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äkerhetsarkivet så att det pekar på det virtuella namnet på installationsprogrammet för SAP HANA-systemreplikering.

    Kör följande kommando för att visa en lista över posterna.

    hdbuserstore List
    

    Kommandot bör visa alla poster och bör se ut ungefär som i det här exemplet.

    DATA FILE       : /home/nw1adm/.hdb/sapa01/SSFS_HDB.DAT
    KEY FILE        : /home/nw1adm/.hdb/sapa01/SSFS_HDB.KEY
    
    KEY DEFAULT 
      ENV : 10.27.0.4:30313
      USER: SAPABAP1
      DATABASE: NW1
    

    I det här exemplet ip-adressen för standardinmatningspunkterna till den virtuella datorn, inte lastbalanseraren. Ändra posten så att den pekar på lastbalanserarens virtuella värdnamn. Se till att använda samma port och databasnamn. Använd till exempel 30313 och NW1 i exempelutdata.

    su - nw1adm
    hdbuserstore SET DEFAULT nw1db:30313@NW1 SAPABAP1 <password of ABAP schema>
    

Testa klusterkonfigurationen

Testa pacemakerklustret noggrant. Kör de typiska redundanstesterna.

Nästa steg