Delen via


Hoge beschikbaarheid van SAP HANA omhoog SCHALEN met Azure NetApp Files in SUSE Enterprise Linux

In dit artikel wordt beschreven hoe u SAP HANA-systeemreplicatie configureert in de opschaalimplementatie wanneer de HANA-bestandssystemen worden gekoppeld via NFS met behulp van Azure NetApp Files. In de voorbeeldconfiguraties en installatieopdrachten worden exemplaarnummer 03 en HANA-systeem-id HN1 gebruikt. SAP HANA-replicatie bestaat uit één primair knooppunt en ten minste één secundair knooppunt.

Wanneer stappen in dit document zijn gemarkeerd met de volgende voorvoegsels, betekent dit:

  • [A]: De stap is van toepassing op alle knooppunten.
  • [1]: De stap is alleen van toepassing op node1.
  • [2]: De stap is alleen van toepassing op node2.

Lees eerst de volgende SAP-notities en -documenten:

Notitie

Dit artikel bevat verwijzingen naar een term die microsoft niet meer gebruikt. Zodra de term uit de software wordt verwijderd, verwijderen we deze uit dit artikel.

Overzicht

Traditioneel worden in een opschaalomgeving alle bestandssystemen voor SAP HANA gekoppeld vanuit lokale opslag. Het instellen van hoge beschikbaarheid van SAP HANA-systeemreplicatie in SUSE Enterprise Linux wordt gepubliceerd in SAP HANA-systeemreplicatie instellen op SLES.

Om SAP HANA HA van een scale-upsysteem op Azure NetApp Files NFS-shares te bereiken, hebben we extra resourceconfiguratie in het cluster nodig. Deze configuratie is nodig, zodat HANA-resources kunnen worden hersteld wanneer één knooppunt geen toegang meer heeft tot de NFS-shares in Azure NetApp Files.

Diagram waarin SAP HANA HA omhoog wordt geschaald in Azure NetApp Files.

SAP HANA-bestandssystemen worden gekoppeld aan NFS-shares met behulp van Azure NetApp Files op elk knooppunt. De bestandssystemen /hana/data, /hana/log en /hana/shared zijn uniek voor elk knooppunt.

Gekoppeld op knooppunt1 (hanadb1):

  • 10.3.1.4:/hanadb1-data-mnt00001 op /hana/data
  • 10.3.1.4:/hanadb1-log-mnt00001 op /hana/log
  • 10.3.1.4:/hanadb1-shared-mnt00001 op /hana/shared

Gekoppeld op node2 (hanadb2):

  • 10.3.1.4:/hanadb2-data-mnt00001 op /hana/data
  • 10.3.1.4:/hanadb2-log-mnt00001 op /hana/log
  • 10.3.1.4:/hanadb2-shared-mnt0001 op /hana/shared

Notitie

De bestandssystemen /hana/shared, /hana/data en /hana/log worden niet gedeeld tussen de twee knooppunten. Elk clusterknooppunt heeft zijn eigen afzonderlijke bestandssystemen.

Sap HA HANA-systeemreplicatieconfiguratie maakt gebruik van een toegewezen virtuele hostnaam en virtuele IP-adressen. In Azure is een load balancer vereist voor het gebruik van een virtueel IP-adres. De gepresenteerde configuratie toont een load balancer met:

  • IP-adres van front-endconfiguratie: 10.3.0.50 voor hn1-db
  • Testpoort: 62503

De Azure NetApp Files-infrastructuur instellen

Voordat u doorgaat met de installatie voor de Infrastructuur van Azure NetApp Files, moet u vertrouwd raken met de documentatie van Azure NetApp Files.

Azure NetApp Files is beschikbaar in verschillende Azure-regio's. Controleer of uw geselecteerde Azure-regio Azure NetApp Files biedt.

Zie de beschikbaarheid van Azure NetApp Files per Azure-regio voor informatie over de beschikbaarheid van Azure NetApp Files per Azure-regio.

Belangrijke aandachtspunten

Wanneer u uw Azure NetApp Files voor SAP HANA-schaalsystemen maakt, moet u rekening houden met de belangrijke overwegingen die worden beschreven in NFS v4.1-volumes in Azure NetApp Files voor SAP HANA.

Grootte van HANA-database wijzigen in Azure NetApp Files

De doorvoer van een Azure NetApp Files-volume is een functie van de volumegrootte en het serviceniveau, zoals beschreven in Serviceniveau voor Azure NetApp Files.

Terwijl u de infrastructuur voor SAP HANA in Azure ontwerpt met Azure NetApp Files, moet u rekening houden met de aanbevelingen in NFS v4.1-volumes in Azure NetApp Files voor SAP HANA.

De configuratie in dit artikel bevat eenvoudige Azure NetApp Files-volumes.

Belangrijk

Voor productiesystemen, waarbij de prestaties essentieel zijn, raden we u aan om azure NetApp Files-toepassingsvolumegroep voor SAP HANA te evalueren en te gebruiken.

Alle opdrachten om /hana/gedeeld in dit artikel te koppelen, worden weergegeven voor NFSv4.1 /hana/gedeelde volumes. Als u de /hana/gedeelde volumes als NFSv3-volumes hebt geïmplementeerd, vergeet dan niet om de koppelingsopdrachten voor /hana/shared voor NFSv3 aan te passen.

Azure NetApp Files-resources implementeren

In de volgende instructies wordt ervan uitgegaan dat u uw virtuele Azure-netwerk al hebt geïmplementeerd. De Azure NetApp Files-resources en -VM's, waarbij de Azure NetApp Files-resources zijn gekoppeld, moeten worden geïmplementeerd in hetzelfde virtuele Azure-netwerk of in gekoppelde virtuele Azure-netwerken.

  1. Maak een NetApp-account in uw geselecteerde Azure-regio door de instructies in Een NetApp-account maken te volgen.

  2. Stel een Azure NetApp Files-capaciteitsgroep in door de instructies te volgen in Een Azure NetApp Files-capaciteitspool instellen.

    De HANA-architectuur die in dit artikel wordt gepresenteerd, maakt gebruik van één Azure NetApp Files-capaciteitspool op ultraserviceniveau. Voor HANA-workloads in Azure raden we u aan het serviceniveau Azure NetApp Files Ultra of Premium te gebruiken.

  3. Een subnet delegeren naar Azure NetApp Files, zoals beschreven in de instructies in Een subnet delegeren aan Azure NetApp Files.

  4. Implementeer Azure NetApp Files-volumes door de instructies te volgen in Een NFS-volume maken voor Azure NetApp Files.

    Wanneer u de volumes implementeert, moet u de versie NFSv4.1 selecteren. Implementeer de volumes in het aangewezen Azure NetApp Files-subnet. De IP-adressen van de Azure NetApp Files-volumes worden automatisch toegewezen.

    De Azure NetApp Files-resources en de Virtuele Azure-machines moeten zich in hetzelfde virtuele Azure-netwerk of in gekoppelde virtuele Azure-netwerken bevinden. Bijvoorbeeld hanadb1-data-mnt00001, hanadb1-log-mnt00001, enzovoort, zijn de volumenamen, en nfs://10.3.1.4/hanadb1-data-mnt00001, nfs://10.3.1.4/hanadb1-log-mnt00001, enzovoort de bestandspaden voor de Azure NetApp Files-volumes.

    Op hanadb1:

    • Volume hanadb1-data-mnt00001 (nfs://10.3.1.4:/hanadb1-data-mnt00001)
    • Volume hanadb1-log-mnt00001 (nfs://10.3.1.4:/hanadb1-log-mnt00001)
    • Volume hanadb1-shared-mnt00001 (nfs://10.3.1.4:/hanadb1-shared-mnt00001)

    Op hanadb2:

    • Volume hanadb2-data-mnt00001 (nfs://10.3.1.4:/hanadb2-data-mnt00001)
    • Volume hanadb2-log-mnt00001 (nfs://10.3.1.4:/hanadb2-log-mnt00001)
    • Volume hanadb2-shared-mnt00001 (nfs://10.3.1.4:/hanadb2-shared-mnt00001)

De infrastructuur voorbereiden

De resourceagent voor SAP HANA is opgenomen in SUSE Linux Enterprise Server voor SAP-toepassingen. Een installatiekopieën voor SUSE Linux Enterprise Server voor SAP-toepassingen 12 of 15 zijn beschikbaar in Azure Marketplace. U kunt de installatiekopieën gebruiken om nieuwe VM's te implementeren.

Virtuele Linux-machines handmatig implementeren via Azure Portal

In dit document wordt ervan uitgegaan dat u al een resourcegroep, Een virtueel Azure-netwerk en een subnet hebt geïmplementeerd.

Vm's implementeren voor SAP HANA. Kies een geschikte SLES-installatiekopieën die worden ondersteund voor het HANA-systeem. U kunt een VIRTUELE machine implementeren in een van de beschikbaarheidsopties: virtuele-machineschaalset, beschikbaarheidszone of beschikbaarheidsset.

Belangrijk

Zorg ervoor dat het besturingssysteem dat u selecteert SAP is gecertificeerd voor SAP HANA op de specifieke VM-typen die u in uw implementatie wilt gebruiken. U kunt sap HANA-gecertificeerde VM-typen en hun besturingssysteemreleases opzoeken in GECERTIFICEERDE IAAS-platformen van SAP HANA. Zorg ervoor dat u de details van het VM-type bekijkt om de volledige lijst met door SAP HANA ondersteunde besturingssysteemreleases voor het specifieke VM-type op te halen.

Azure Load Balancer configureren

Tijdens de VM-configuratie hebt u de mogelijkheid om de bestaande load balancer in de netwerksectie te maken of te selecteren. Volg de volgende stappen om een standaard load balancer in te stellen voor het instellen van hoge beschikbaarheid van de HANA-database.

Volg de stappen in Load Balancer maken om een standaard load balancer in te stellen voor een SAP-systeem met hoge beschikbaarheid met behulp van Azure Portal. Houd rekening met de volgende punten tijdens de installatie van de load balancer:

  1. Front-end-IP-configuratie: maak een front-end-IP-adres. Selecteer dezelfde virtuele netwerk- en subnetnaam als uw virtuele databasemachines.
  2. Back-endpool: maak een back-endpool en voeg database-VM's toe.
  3. Regels voor inkomend verkeer: maak een taakverdelingsregel. Volg dezelfde stappen voor beide taakverdelingsregels.
    • Front-end-IP-adres: Selecteer een front-end-IP-adres.
    • Back-endpool: Selecteer een back-endpool.
    • Poorten voor hoge beschikbaarheid: selecteer deze optie.
    • Protocol: selecteer TCP.
    • Statustest: maak een statustest met de volgende details:
      • Protocol: selecteer TCP.
      • Poort: bijvoorbeeld 625<instance-no.>.
      • Interval: Voer 5 in.
      • Testdrempel: voer 2 in.
    • Time-out voor inactiviteit (minuten): voer 30 in.
    • Zwevend IP-adres inschakelen: selecteer deze optie.

Notitie

De configuratie-eigenschap numberOfProbesvan de statustest, ook wel bekend als drempelwaarde voor beschadigde status in de portal, wordt niet gerespecteerd. Als u het aantal geslaagde of mislukte opeenvolgende tests wilt bepalen, stelt u de eigenschap probeThreshold in op 2. Het is momenteel niet mogelijk om deze eigenschap in te stellen met behulp van Azure Portal, dus gebruik de Azure CLI of de PowerShell-opdracht.

Lees voor meer informatie over de vereiste poorten voor SAP HANA het hoofdstuk Verbindingen met tenantdatabases in de handleiding sap HANA-tenantdatabases of SAP Note 2388694.

Wanneer VM's zonder openbare IP-adressen worden geplaatst in de back-endpool van interne (geen openbaar IP-adres) Standard Azure Load Balancer, is er geen uitgaande internetverbinding, tenzij er meer configuratie wordt uitgevoerd om routering naar openbare eindpunten toe te staan. Zie Openbare eindpuntconnectiviteit voor VM's met behulp van Azure Standard Load Balancer in scenario's met hoge beschikbaarheid van SAP voor meer informatie over het bereiken van uitgaande connectiviteit.

Belangrijk

  • Schakel TCP-tijdstempels niet in op Azure-VM's die achter Load Balancer worden geplaatst. Als u TCP-tijdstempels inschakelt, mislukken de statustests. Stel de parameter in net.ipv4.tcp_timestamps op 0. Zie Statustests van Load Balancer en SAP Note 2382421 voor meer informatie.
  • Werk de saptune-versie bij naar 3.1.1 of hoger om te voorkomen dat de handmatig ingestelde net.ipv4.tcp_timestamps waarde 0 wordt gewijzigd 1. Zie saptune 3.1.1 – Moet ik bijwerken? voor meer informatie.

Het Azure NetApp Files-volume koppelen

  1. [A] Koppelpunten maken voor de HANA-databasevolumes.

    sudo mkdir -p /hana/data/HN1/mnt00001
    sudo mkdir -p /hana/log/HN1/mnt00001
    sudo mkdir -p /hana/shared/HN1
    
  2. [A] Controleer de NFS-domeininstelling. Zorg ervoor dat het domein is geconfigureerd als het standaarddomein van Azure NetApp Files, dat wil weten defaultv4iddomain.com en dat de toewijzing is ingesteld op niemand.

    sudo cat /etc/idmapd.conf
    

    Voorbeelduitvoer:

    [General]
    Domain = defaultv4iddomain.com
    [Mapping]
    Nobody-User = nobody
    Nobody-Group = nobody
    

    Belangrijk

    Zorg ervoor dat u het NFS-domein instelt in /etc/idmapd.conf op de virtuele machine zodat deze overeenkomt met de standaarddomeinconfiguratie in Azure NetApp Files: defaultv4iddomain.com. Als er een onjuiste overeenkomst is tussen de domeinconfiguratie op de NFS-client (d.w.z. de VM) en de NFS-server (d.w.z. de Configuratie van Azure NetApp Files), worden de machtigingen voor bestanden op Azure NetApp Files-volumes die op de VM's zijn gekoppeld, weergegeven als niemand.

  3. [A] Bewerk /etc/fstab op beide knooppunten om de volumes permanent te koppelen die relevant zijn voor elk knooppunt. In het volgende voorbeeld ziet u hoe u de volumes permanent koppelt.

    sudo vi /etc/fstab
    

    Voeg de volgende vermeldingen toe op /etc/fstab beide knooppunten.

    Voorbeeld voor hanadb1:

    10.3.1.4:/hanadb1-data-mnt00001 /hana/data/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb1-log-mnt00001 /hana/log/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb1-shared-mnt00001 /hana/shared/HN1  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    

    Voorbeeld voor hanadb2:

    10.3.1.4:/hanadb2-data-mnt00001 /hana/data/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb2-log-mnt00001 /hana/log/HN1/mnt00001  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    10.3.1.4:/hanadb2-shared-mnt00001 /hana/shared/HN1  nfs   rw,nfsvers=4.1,hard,timeo=600,rsize=262144,wsize=262144,noatime,lock,_netdev,sec=sys  0  0
    

    Koppel alle volumes.

    sudo mount -a
    

    Voor workloads waarvoor een hogere doorvoer is vereist, kunt u overwegen de nconnect koppelingsoptie te gebruiken, zoals beschreven in NFS v4.1-volumes in Azure NetApp Files voor SAP HANA. Controleer of nconnect dit wordt ondersteund door Azure NetApp Files in uw Linux-release.

  4. [A] Controleer of alle HANA-volumes zijn gekoppeld aan NFS-protocolversie NFSv4.

    sudo nfsstat -m
    

    Controleer of de vlag vers is ingesteld op 4.1.

    Voorbeeld van hanadb1:

    /hana/log/HN1/mnt00001 from 10.3.1.4:/hanadb1-log-mnt00001
    Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
    /hana/data/HN1/mnt00001 from 10.3.1.4:/hanadb1-data-mnt00001
    Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
    /hana/shared/HN1 from 10.3.1.4:/hanadb1-shared-mnt00001
    Flags: rw,noatime,vers=4.1,rsize=262144,wsize=262144,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.3.0.4,local_lock=none,addr=10.3.1.4
    
  5. [A] Controleer nfs4_disable_idmapping. Deze moet worden ingesteld op Y. Voer de koppelingsopdracht uit om de mapstructuur te maken waarin nfs4_disable_idmapping zich bevindt. U kunt de map niet handmatig maken omdat /sys/modules de toegang is gereserveerd voor de kernel/stuurprogramma's.

    #Check nfs4_disable_idmapping
    sudo cat /sys/module/nfs/parameters/nfs4_disable_idmapping
    
    #If you need to set nfs4_disable_idmapping to Y
    sudo echo "Y" > /sys/module/nfs/parameters/nfs4_disable_idmapping
    
    #Make the configuration permanent
    sudo echo "options nfs nfs4_disable_idmapping=Y" >> /etc/modprobe.d/nfs.conf
    

SAP HANA-installatie

  1. [A] Hostnaamomzetting instellen voor alle hosts.

    U kunt een DNS-server gebruiken of het /etc/hosts bestand op alle knooppunten wijzigen. In dit voorbeeld ziet u hoe u het /etc/hosts bestand gebruikt. Vervang het IP-adres en de hostnaam in de volgende opdrachten:

    sudo vi /etc/hosts
    

    Voeg de volgende regels in het /etc/hosts bestand in. Wijzig het IP-adres en de hostnaam zodat deze overeenkomt met uw omgeving.

    10.3.0.4   hanadb1
    10.3.0.5   hanadb2
    
  2. [A] Bereid het besturingssysteem voor op het uitvoeren van SAP HANA in Azure NetApp met NFS, zoals beschreven in SAP Note 3024346 - Linux-kernelinstellingen voor NetApp NFS. Maak het configuratiebestand /etc/sysctl.d/91-NetApp-HANA.conf voor de NetApp-configuratie-instellingen.

    sudo vi /etc/sysctl.d/91-NetApp-HANA.conf
    

    Voeg de volgende vermeldingen toe in het configuratiebestand:

    net.core.rmem_max = 16777216
    net.core.wmem_max = 16777216
    net.ipv4.tcp_rmem = 4096 131072 16777216
    net.ipv4.tcp_wmem = 4096 16384 16777216
    net.core.netdev_max_backlog = 300000
    net.ipv4.tcp_slow_start_after_idle=0
    net.ipv4.tcp_no_metrics_save = 1
    net.ipv4.tcp_moderate_rcvbuf = 1
    net.ipv4.tcp_window_scaling = 1
    net.ipv4.tcp_sack = 1
    
  3. [A] Maak het configuratiebestand /etc/sysctl.d/ms-az.conf met meer optimalisatie-instellingen.

    sudo vi /etc/sysctl.d/ms-az.conf
    

    Voeg de volgende vermeldingen toe in het configuratiebestand:

    net.ipv6.conf.all.disable_ipv6 = 1
    net.ipv4.tcp_max_syn_backlog = 16348
    net.ipv4.conf.all.rp_filter = 0
    sunrpc.tcp_slot_table_entries = 128
    vm.swappiness=10
    

    Tip

    Vermijd het instellen net.ipv4.ip_local_port_range en net.ipv4.ip_local_reserved_ports expliciet in de sysctl-configuratiebestanden, zodat de SAP Host Agent de poortbereiken kan beheren. Zie SAP Note 2382421 voor meer informatie.

  4. [A] Pas de sunrpc instellingen aan, zoals aanbevolen in SAP Note 3024346 - Linux-kernelinstellingen voor NetApp NFS.

    sudo vi /etc/modprobe.d/sunrpc.conf
    

    Voeg de volgende regel in:

    options sunrpc tcp_max_slot_table_entries=128
    
  5. [A] SLES configureren voor HANA.

    Configureer SLES zoals beschreven in de volgende SAP Notes op basis van uw SLES-versie:

  6. [A] Installeer sap HANA.

    Vanaf HANA 2.0 SPS 01 is Multitenant Database Containers (MDC) de standaardoptie. Wanneer u het HANA-systeem installeert, worden SYSTEMDB en een tenant met dezelfde SID samen gemaakt. In sommige gevallen wilt u de standaardtenant niet. Als u niet de eerste tenant wilt maken, samen met de installatie, volgt u de instructies in SAP Note 2629711.

    1. Start het hdblcm programma vanuit de installatiesoftwaremap van HANA.

      ./hdblcm
      
    2. Voer bij de prompt de volgende waarden in:

      • Voor Installatie kiezen: Voer 1 in (voor installatie).
      • Voor Extra onderdelen selecteren voor installatie: Voer 1 in.
      • Voor Enter-installatiepad [/hana/shared]: druk op Enter om de standaardwaarde te accepteren.
      • Voor Enter Local Host Name [..]: Druk op Enter om de standaardwaarde te accepteren.
      • Wilt u onder Wilt u extra hosts toevoegen aan het systeem? (y/n) [n]: Selecteer n.
      • Voer voor Sap HANA-systeem-id in: Voer HN1 in.
      • Voer het exemplaarnummer [00] in: Voer 03 in.
      • Voor de modus Database selecteren/Index invoeren [1]: druk op Enter om de standaardwaarde te accepteren.
      • Voor Systeemgebruik selecteren/Index invoeren [4]: Voer 4 in (voor aangepast).
      • Voor Enter-locatie van gegevensvolumes [/hana/data]: druk op Enter om de standaardwaarde te accepteren.
      • Voor Enter-locatie van logboekvolumes [/hana/log]: druk op Enter om de standaardwaarde te accepteren.
      • Voor Maximale geheugentoewijzing beperken? [n]: Druk op Enter om de standaardwaarde te accepteren.
      • Voer de naam van de certificaathost in voor host '...' [...]: Druk op Enter om de standaardwaarde te accepteren.
      • Voer het gebruikerswachtwoord voor de SAP Host Agent-gebruiker (sapadm) in: voer het gebruikerswachtwoord van de hostagent in.
      • Voer het gebruikerswachtwoord van de hostagent opnieuw in om het wachtwoord van de SAP Host Agent-gebruiker (sapadm) te bevestigen.
      • Voer het wachtwoord voor systeembeheerder (hn1adm) in: voer het wachtwoord van de systeembeheerder in.
      • Voer het wachtwoord van de systeembeheerder (hn1adm) opnieuw in om het wachtwoord van de systeembeheerder te bevestigen.
      • Voor Enter System Administrator Home Directory [/usr/sap/HN1/home]: druk op Enter om de standaardwaarde te accepteren.
      • Voor Enter System Administrator Login Shell [/bin/sh]: druk op Enter om de standaardwaarde te accepteren.
      • Voor enter systeembeheerder gebruikers-id [1001]: druk op Enter om de standaardwaarde te accepteren.
      • Voor Enter-id van gebruikersgroep (sapsys) [79]: druk op Enter om de standaardwaarde te accepteren.
      • Voer het wachtwoord van de databasegebruiker (SYSTEM) in als u het wachtwoord van de databasegebruiker invoert.
      • Voer het wachtwoord van de databasegebruiker (SYSTEM) opnieuw in om het wachtwoord van de databasegebruiker te bevestigen.
      • Voor systeem opnieuw opstarten nadat de computer opnieuw is opgestart? [n]: Druk op Enter om de standaardwaarde te accepteren.
      • Wilt u doorgaan? (y/n): Valideer de samenvatting. Voer y in om door te gaan.
  7. [A] Werk de SAP-hostagent bij.

    Download het meest recente SAP Host Agent-archief vanuit het SAP Software Center en voer de volgende opdracht uit om de agent bij te werken. Vervang het pad naar het archief om te verwijzen naar het bestand dat u hebt gedownload.

    sudo /usr/sap/hostctrl/exe/saphostexec -upgrade -archive <path to SAP Host Agent SAR>
    

SAP HANA-systeemreplicatie configureren

Volg de stappen in SAP HANA-systeemreplicatie om SAP HANA-systeemreplicatie te configureren.

Clusterconfiguratie

In deze sectie worden de benodigde stappen beschreven die nodig zijn om het cluster naadloos te laten werken wanneer SAP HANA is geïnstalleerd op NFS-shares met behulp van Azure NetApp Files.

Een Pacemaker-cluster maken

Volg de stappen in Het instellen van Pacemaker in SUSE Enterprise Linux in Azure om een eenvoudig Pacemaker-cluster te maken voor deze HANA-server.

HANA-hooks SAPHanaSR en susChkSrv implementeren

Deze belangrijke stap optimaliseert de integratie met het cluster en verbetert de detectie wanneer een clusterfailover nodig is. We raden u ten zeerste aan om zowel SAPHanaSR- als susChkSrv Python-hooks te configureren. Volg de stappen in Implementeren van de Python-systeemreplicatie hooks SAPHanaSR/SAPHanaSR-angi en susChkSrv.

SAP HANA-clusterbronnen configureren

In deze sectie worden de benodigde stappen beschreven voor het configureren van de SAP HANA-clusterbronnen.

SAP HANA-clusterbronnen maken

Volg de stappen in SAP HANA-clusterbronnen maken om de clusterbronnen voor de HANA-server te maken. Nadat de resources zijn gemaakt, ziet u de status van het cluster met de volgende opdracht:

sudo crm_mon -r

Voorbeelduitvoer:

# Online: [ hn1-db-0 hn1-db-1 ]
# Full list of resources:
# stonith-sbd     (stonith:external/sbd): Started hn1-db-0
# Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]
#     Started: [ hn1-db-0 hn1-db-1 ]
# Master/Slave Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03]
#     Masters: [ hn1-db-0 ]
#     Slaves: [ hn1-db-1 ]
# Resource Group: g_ip_HN1_HDB03
#     rsc_ip_HN1_HDB03   (ocf::heartbeat:IPaddr2):       Started hn1-db-0
#     rsc_nc_HN1_HDB03   (ocf::heartbeat:azure-lb):      Started hn1-db-0

Bestandssysteembronnen maken

Bestandssysteem /hana/shared/SID is nodig voor zowel HANA-bewerking als voor pacemaker-bewakingsacties die de status van HANA bepalen. Implementeer resourceagents om fouten te bewaken en te handelen. De sectie bevat twee opties, een voor SAPHanaSR en een voor.SAPHanaSR-angi

Maak een dummy-bestandssysteemclusterresource. Het bewaakt en rapporteert fouten als er een probleem is met het openen van het NFS-gekoppelde bestandssysteem /hana/shared. Hierdoor kan het cluster failover activeren als er een probleem is met het openen van /hana/gedeeld. Zie Verwerken van mislukte NFS-share in SUSE HA-cluster voor HANA-systeemreplicatie voor meer informatie.

  1. [A] Maak de mapstructuur op beide knooppunten.

    sudo mkdir -p /hana/shared/HN1/check
    sudo mkdir -p /hana/shared/check
    
  2. [1] Configureer het cluster om de mapstructuur toe te voegen voor bewaking.

    sudo crm configure primitive rsc_fs_check_HN1_HDB03 Filesystem params \
        device="/hana/shared/HN1/check/" \
        directory="/hana/shared/check/" fstype=nfs  \
        options="bind,defaults,rw,hard,rsize=262144,wsize=262144,proto=tcp,noatime,_netdev,nfsvers=4.1,lock,sec=sys" \
        op monitor interval=120 timeout=120 on-fail=fence \
        op_params OCF_CHECK_LEVEL=20 \
        op start interval=0 timeout=120 \
        op stop interval=0 timeout=120
    
  3. [1] Kloon en controleer het zojuist geconfigureerde volume in het cluster.

    sudo crm configure clone cln_fs_check_HN1_HDB03 rsc_fs_check_HN1_HDB03 meta clone-node-max=1 interleave=true
    

    Voorbeelduitvoer:

    sudo crm status
    
    # Cluster Summary:
    # Stack: corosync
    # Current DC: hanadb1 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
    # Last updated: Tue Nov  2 17:57:39 2021
    # Last change:  Tue Nov  2 17:57:38 2021 by root via crm_attribute on hanadb1
    # 2 nodes configured
    # 11 resource instances configured
    
    # Node List:
    # Online: [ hanadb1 hanadb2 ]
    
    # Full List of Resources:
    # Clone Set: cln_azure-events [rsc_azure-events]:
    #  Started: [ hanadb1 hanadb2 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
    #  rsc_SAPHanaTopology_HN1_HDB03     (ocf::suse:SAPHanaTopology):     Started hanadb1 (Monitoring)
    #  rsc_SAPHanaTopology_HN1_HDB03     (ocf::suse:SAPHanaTopology):     Started hanadb2 (Monitoring)
    # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
    #  rsc_SAPHana_HN1_HDB03     (ocf::suse:SAPHana):     Master hanadb1 (Monitoring)
    #  Slaves: [ hanadb2 ]
    # Resource Group: g_ip_HN1_HDB03:
    #  rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb1
    #  rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb1
    # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
    # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
    #  Started: [ hanadb1 hanadb2 ]
    

    Het OCF_CHECK_LEVEL=20 kenmerk wordt toegevoegd aan de bewakingsbewerking, zodat bewakingsbewerkingen een lees-/schrijftest uitvoeren op het bestandssysteem. Zonder dit kenmerk controleert de bewakingsbewerking alleen of het bestandssysteem is gekoppeld. Dit kan een probleem zijn omdat wanneer de verbinding is verbroken, het bestandssysteem mogelijk gekoppeld blijft, ondanks dat het niet toegankelijk is.

    Het on-fail=fence kenmerk wordt ook toegevoegd aan de bewakingsbewerking. Als met deze optie de monitorbewerking op een knooppunt mislukt, wordt dat knooppunt onmiddellijk omheining geplaatst.

Belangrijk

Time-outs in de voorgaande configuratie moeten mogelijk worden aangepast aan de specifieke HANA-installatie om onnodige omheiningsacties te voorkomen. Stel de time-outwaarden niet te laag in. Houd er rekening mee dat de bewaking van het bestandssysteem niet is gerelateerd aan de replicatie van het HANA-systeem. Zie de SUSE-documentatie voor meer informatie.

De clusterinstallatie testen

In deze sectie wordt beschreven hoe u uw installatie kunt testen.

  1. Voordat u een test start, moet u ervoor zorgen dat Pacemaker geen mislukte actie heeft (via crm-status) en geen onverwachte locatiebeperkingen (bijvoorbeeld resten van een migratietest). Zorg er ook voor dat HANA-systeemreplicatie de synchronisatiestatus heeft, bijvoorbeeld met systemReplicationStatus.

    sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
    
  2. Controleer de status van de HANA-resources met behulp van deze opdracht:

    SAPHanaSR-showAttr
    
    # You should see something like below
    # hanadb1:~ SAPHanaSR-showAttr
    # Global cib-time                 maintenance
    # --------------------------------------------
    # global Mon Nov  8 22:50:30 2021 false
    # Sites srHook
    # -------------
    # SITE1 PRIM
    # SITE2 SOK
    # Site2 SOK
    # Hosts   clone_state lpa_hn1_lpt node_state op_mode   remoteHost roles                            score site  srmode sync_state version                vhost
    # --------------------------------------------------------------------------------------------------------------------------------------------------------------
    # hanadb1 PROMOTED    1636411810  online     logreplay hanadb2    4:P:master1:master:worker:master 150   SITE1 sync   PRIM       2.00.058.00.1634122452 hanadb1
    # hanadb2 DEMOTED     30          online     logreplay hanadb1    4:S:master1:master:worker:master 100   SITE2 sync   SOK        2.00.058.00.1634122452 hanadb2
    
  3. Controleer de clusterconfiguratie voor een foutscenario wanneer een knooppunt wordt afgesloten. In het volgende voorbeeld ziet u het afsluiten van knooppunt 1:

    sudo crm status
    sudo crm resource move msl_SAPHana_HN1_HDB03 hanadb2 force
    sudo crm resource cleanup
    

    Voorbeelduitvoer:

    sudo crm status
    
    #Cluster Summary:
    # Stack: corosync
    # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
    # Last updated: Mon Nov  8 23:25:36 2021
    # Last change:  Mon Nov  8 23:25:19 2021 by root via crm_attribute on hanadb2
    # 2 nodes configured
    # 11 resource instances configured
    
    # Node List:
    # Online: [ hanadb1 hanadb2 ]
    # Full List of Resources:
    # Clone Set: cln_azure-events [rsc_azure-events]:
    #  Started: [ hanadb1 hanadb2 ]
    # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
    #  Started: [ hanadb1 hanadb2 ]
    # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
    #  Masters: [ hanadb2 ]
    #  Stopped: [ hanadb1 ]
    # Resource Group: g_ip_HN1_HDB03:
    #  rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb2
    #  rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb2
    # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
    # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
    #  Started: [ hanadb1 hanadb2 ]
    

    Stop de HANA op Node1:

    sudo su - hn1adm
    sapcontrol -nr 03 -function StopWait 600 10
    

    Registreer Node 1 als het secundaire knooppunt en controleer de status:

    hdbnsutil -sr_register --remoteHost=hanadb2 --remoteInstance=03 --replicationMode=sync --name=SITE1 --operationMode=logreplay
    

    Voorbeelduitvoer:

    #adding site ...
    #nameserver hanadb1:30301 not responding.
    #collecting information ...
    #updating local ini files ...
    #done.
    
    sudo crm status
    
    sudo SAPHanaSR-showAttr
    
  4. Controleer de clusterconfiguratie voor een foutscenario wanneer een knooppunt geen toegang meer heeft tot de NFS-share (/hana/gedeeld).

    De SAP HANA-resourceagents zijn afhankelijk van binaire bestanden die zijn opgeslagen op /hana/gedeeld om bewerkingen uit te voeren tijdens een failover. Bestandssysteem /hana/shared wordt gekoppeld via NFS in het gepresenteerde scenario.

    Het is moeilijk om een fout te simuleren, waarbij een van de servers geen toegang meer heeft tot de NFS-share. Als test kunt u het bestandssysteem opnieuw koppelen als alleen-lezen. Deze methode valideert dat het cluster een failover kan uitvoeren als de toegang tot /hana/shared verloren gaat op het actieve knooppunt.

    Verwacht resultaat: bij het maken van /hana/gedeeld als een alleen-lezen bestandssysteem mislukt het OCF_CHECK_LEVEL kenmerk van de resource hana_shared1, dat lees-/schrijfbewerkingen uitvoert op het bestandssysteem. Dit mislukt omdat er niets kan worden geschreven op het bestandssysteem en een HANA-resourcefailover wordt uitgevoerd. Hetzelfde resultaat wordt verwacht wanneer uw HANA-knooppunt geen toegang meer heeft tot de NFS-shares.

    Resourcestatus voordat u de test start:

    sudo crm  status
    
    #Cluster Summary:
     # Stack: corosync
     # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
     # Last updated: Mon Nov  8 23:01:27 2021
     # Last change:  Mon Nov  8 23:00:46 2021 by root via crm_attribute on hanadb1
     # 2 nodes configured
     # 11 resource instances configured
    
     #Node List:
     # Online: [ hanadb1 hanadb2 ]
    
     #Full List of Resources:
     # Clone Set: cln_azure-events [rsc_azure-events]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
       # Masters: [ hanadb1 ]
       # Slaves: [ hanadb2 ]
     # Resource Group: g_ip_HN1_HDB03:
       # rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb1
       # rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb1
     # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
     # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
    

    U kunt /hana/gedeeld in de modus Alleen-lezen op het actieve clusterknooppunt plaatsen met behulp van deze opdracht:

    sudo mount -o ro 10.3.1.4:/hanadb1-shared-mnt00001 /hana/sharedb
    

    De server hanadb1 wordt opnieuw opgestart of wordt uitgeschakeld op basis van de actieset. Nadat de server hanadb1 is uitgeschakeld, wordt de HANA-resource verplaatst naar hanadb2. U kunt de status van het cluster controleren vanuit hanadb2.

    sudo crm status
    
    #Cluster Summary:
     # Stack: corosync
     # Current DC: hanadb2 (version 2.0.5+20201202.ba59be712-4.9.1-2.0.5+20201202.ba59be712) - partition with quorum
     # Last updated: Wed Nov 10 22:00:27 2021
     # Last change:  Wed Nov 10 21:59:47 2021 by root via crm_attribute on hanadb2
     # 2 nodes configured
     # 11 resource instances configured
    
     #Node List:
     # Online: [ hanadb1 hanadb2 ]
    
     #Full List of Resources:
     # Clone Set: cln_azure-events [rsc_azure-events]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: cln_SAPHanaTopology_HN1_HDB03 [rsc_SAPHanaTopology_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
     # Clone Set: msl_SAPHana_HN1_HDB03 [rsc_SAPHana_HN1_HDB03] (promotable):
       # Masters: [ hanadb2 ]
       # Stopped: [ hanadb1 ]
     # Resource Group: g_ip_HN1_HDB03:
          # rsc_ip_HN1_HDB03  (ocf::heartbeat:IPaddr2):        Started hanadb2
       # rsc_nc_HN1_HDB03  (ocf::heartbeat:azure-lb):       Started hanadb2
     # rsc_st_azure        (stonith:fence_azure_arm):       Started hanadb2
     # Clone Set: cln_fs_check_HN1_HDB03 [rsc_fs_check_HN1_HDB03]:
       # Started: [ hanadb1 hanadb2 ]
    

    We raden u aan de configuratie van het SAP HANA-cluster grondig te testen door de tests uit te voeren die worden beschreven in sap HANA-systeemreplicatie.

Volgende stappen