Hochverfügbarkeit für SAP NetWeaver auf virtuellen Azure-Computern unter SUSE Linux Enterprise Server mit NFS in Azure Files
In diesem Artikel erfahren Sie, wie Sie virtuelle Computer bereitstellen und konfigurieren, das Clusterframework installieren und ein SAP NetWeaver-System mit Hochverfügbarkeit unter Verwendung von NFS in Azure Files installieren. In den Beispielkonfigurationen werden virtuelle Computer unter SUSE Linux Enterprise Server (SLES) verwendet.
Für neue Implementierungen auf SLES for SAP Applications 15 sollten Sie die Hochverfügbarkeit für SAP ASCS/ERS in einer Konfiguration für die einfache Einbindung bereitstellen. Die klassische Pacemaker-Konfiguration, die auf clustergesteuerten Dateisystemen für die in diesem Artikel beschriebenen SAP Central Service-Verzeichnisse basiert, wird weiterhin unterstützt.
Voraussetzungen
- Dokumentation zu Azure Files
- SAP-Hinweis 1928533 mit folgenden Informationen:
- Liste der Azure-VM-Größen, die für die Bereitstellung von SAP-Software unterstützt werden
- Wichtige Kapazitätsinformationen für Azure-VM-Größen
- Unterstützte SAP-Software und Kombinationen aus Betriebssystem (OS) und Datenbank
- Erforderliche SAP-Kernelversion für Windows und Linux in Microsoft Azure
- In SAP-Hinweis 2015553 sind die Voraussetzungen für Bereitstellungen von SAP-Software in Azure aufgeführt, die von SAP unterstützt werden.
- SAP-Hinweis 2205917 enthält empfohlene Betriebssystemeinstellungen für den SUSE Linux Enterprise Server for SAP Applications.
- SAP-Hinweis 2178632 enthält ausführliche Informationen zu allen Überwachungsmetriken, die für SAP in Azure gemeldet werden.
- SAP-Hinweis 2191498 enthält die erforderliche SAP Host Agent-Version für Linux in Azure.
- SAP-Hinweis 2243692 enthält Informationen zur SAP-Lizenzierung unter Linux in Azure.
- SAP-Hinweis 1984787 enthält allgemeine Informationen zu SUSE Linux Enterprise Server 12.
- SAP-Hinweis 2578899 enthält allgemeine Informationen zu SUSE Linux Enterprise Server 15.
- SAP-Hinweis 1999351 enthält Informationen zur Problembehandlung für die Azure-Erweiterung zur verbesserten Überwachung für SAP.
- Das WIKI der SAP-Community enthält alle erforderlichen SAP-Hinweise für Linux.
- Azure Virtual Machines Planung und Implementierung für SAP auf Linux.
- Azure Virtual Machines Bereitstellung für SAP auf Linux.
- Azure Virtual Machines DBMS-Bereitstellung für SAP auf Linux.
- Bewährte Methoden für SUSE SAP Hochverfügbarkeit Die Leitfäden enthalten alle erforderlichen Informationen, um NetWeaver HA und SAP HANA System Replication vor Ort einzurichten. Verwenden Sie diese Leitfäden als allgemeine Basis. Sie bieten wesentlich mehr Informationen.
- Versionshinweise zur SUSE-Hochverfügbarkeitserweiterung
Übersicht
Zum Bereitstellen der SAP NetWeaver-Anwendungsschicht müssen in der Umgebung freigegebene Verzeichnisse wie /sapmnt/SID
und /usr/sap/trans
vorhanden sein. Beim Bereitstellen eines SAP-Systems mit Hochverfügbarkeit müssen außerdem Dateisysteme wie /sapmnt/SID
und /usr/sap/SID/ASCS
geschützt und hochverfügbar gemacht werden.
Diese Dateisysteme können jetzt in NFS in Azure Files platziert werden. NFS in Azure Files ist eine Speicherlösung mit Hochverfügbarkeit. Diese Lösung bietet synchronen zonenredundanten Speicher (ZRS) und eignet sich für SAP ASCS/ERS-Instanzen, die über mehrere Verfügbarkeitszonen hinweg bereitgestellt werden. Sie benötigen allerdings weiterhin einen Pacemaker-Cluster, um Single Point of Failure-Komponenten wie die zentralen Dienste von SAP NetWeaver (ASCS/SCS) zu schützen.
In den Beispielkonfigurationen und Installationsbefehlen werden die folgenden Instanznummern verwendet:
Instanzname | Instanznummer |
---|---|
ABAP SAP Central Services (ASCS) | 00 |
ERS | 01 |
Primärer Anwendungsserver (Primary Application Server, PAS) | 02 |
Zusätzlicher Anwendungsserver (Additional Application Server, AAS) | 03 |
SAP-Systembezeichner | NW1 |
Dieses Diagramm zeigt eine typische SAP NetWeaver-Architektur mit Hochverfügbarkeit. Die Dateisysteme „sapmnt“ und „saptrans“ werden auf NFS-Freigaben in Azure Files bereitgestellt. Die zentralen SAP-Dienste werden durch einen Pacemaker-Cluster geschützt. Die gruppierten virtuellen Computer befinden sich hinter einer Azure Load Balancer-Instanz. Die NFS-Freigaben werden über einen privaten Endpunkt eingebunden.
Infrastruktur vorbereiten
Der Ressourcen-Agent für die SAP-Instanz ist in SUSE Linux Enterprise Server for SAP Applications enthalten. Ein Image für SUSE Linux Enterprise Server for SAP Applications 12 oder 15 ist in Azure Marketplace verfügbar. Sie können das Image verwenden, um neue virtuelle Computer bereitzustellen.
Manuelles Bereitstellen von Linux-VMs über das Azure-Portal
In diesem Dokument wird davon ausgegangen, dass Sie bereits eine Ressourcengruppe, ein virtuelles Azure-Netzwerk und ein Subnetz bereitgestellt haben.
Stellen Sie virtuelle Computer mit dem SLES for SAP Applications-Image bereit. Wählen Sie eine geeignete Version des SLES-Images aus, die für das SAP-System unterstützt wird. Sie können VMs über die verschiedenen Verfügbarkeitsoptionen (VM-Skalierungsgruppe, Verfügbarkeitszone oder Verfügbarkeitsgruppe) bereitstellen.
Konfigurieren von Azure Load Balancer
Während der VM-Konfiguration können Sie im Abschnitt „Netzwerk“ einen Lastenausgleich erstellen oder einen vorhandenen Lastenausgleich auswählen. Führen Sie die folgenden Schritte aus, um einen Standardlastenausgleich für die Hochverfügbarkeit von SAP ASCS und SAP ERS zu konfigurieren.
Befolgen Sie die Anleitung zum Erstellen eines Lastenausgleichs, um mit dem Azure-Portal einen Standardlastenausgleich für ein SAP-Hochverfügbarkeitssystem einzurichten. Berücksichtigen Sie beim Einrichten des Lastenausgleichs die folgenden Punkte.
- Front-End-IP-Konfiguration: Erstellen Sie zwei Front-End-IP-Adressen (eine für ASCS und eine für ERS). Wählen Sie dasselbe virtuelle Netzwerk und Subnetz wie für die ASCS- bzw. ERS-VMs aus.
- Back-End-Pool: Erstellen Sie einen Back-End-Pool, und fügen Sie ASCS- und ERS-VMs hinzu.
- Regeln für eingehenden Datenverkehr: Erstellen Sie zwei Lastenausgleichsregeln (eine für ASCS und eine für ERS). Führen Sie dieselben Schritte für beide Lastenausgleichsregeln aus.
- Front-End-IP-Adresse: Wählen Sie die Front-End-IP-Adresse aus.
- Back-End-Pool: Wählen Sie den Back-End-Pool aus.
- Aktivieren Sie „Hochverfügbarkeitsports“.
- Protokoll: TCP
- Integritätstest: Erstellen Sie einen Integritätstest mit den folgenden Details (gilt für ASCS und ERS).
- Protokoll: TCP
- Port: [z. B. „620<Instance-no.>“ für ASCS und „621<Instance-no.>“ für ERS]
- Intervall: 5
- Schwellenwert für Integritätstest: 2
- Leerlauftimeout (Minuten): 30
- Aktivieren Sie „Floating IP aktivieren“.
Hinweis
Die Konfigurationseigenschaft „numberOfProbes“ für Integritätstests (im Portal als „Fehlerschwellenwert“ bezeichnet) wird nicht berücksichtigt. Um also die Anzahl erfolgreicher oder nicht erfolgreicher aufeinanderfolgender Integritätstests zu steuern, legen Sie die Eigenschaft „probeThreshold“ auf „2“ fest. Es ist derzeit nicht möglich, diese Eigenschaft über das Azure-Portal festzulegen. Verwenden Sie daher entweder den Azure CLI- oder den PowerShell-Befehl.
Hinweis
Wenn virtuelle Computer ohne öffentliche IP-Adressen im Back-End-Pool einer internen Azure Load Balancer Standard-Instanz (ohne öffentliche IP-Adresse) platziert werden, liegt keine ausgehende Internetverbindung vor, sofern nicht in einer zusätzlichen Konfiguration das Routing an öffentliche Endpunkte zugelassen wird. Ausführliche Informationen zum Erreichen ausgehender Konnektivität finden Sie unter Public endpoint connectivity for Virtual Machines using Azure Standard Load Balancer in SAP high-availability scenarios (Konnektivität mit öffentlichen Endpunkten für virtuelle Computer mithilfe von Azure Load Balancer Standard in SAP-Szenarien mit Hochverfügbarkeit).
Wichtig
- Aktivieren Sie keine TCP-Zeitstempel auf Azure-VMs, die sich hinter Azure Load Balancer befinden. Das Aktivieren von TCP-Zeitstempeln bewirkt, dass bei Integritätstests Fehler auftreten. Setzen Sie den
net.ipv4.tcp_timestamps
-Parameter auf0
. Ausführliche Informationen finden Sie unter Load Balancer-Integritätstests. - Um zu verhindern, dass saptune den manuell festgelegten
net.ipv4.tcp_timestamps
-Wert von0
wieder in1
ändert, sollten Sie die saptune-Version auf Version 3.1.1 oder höher updaten. Weitere Informationen finden Sie unter saptune 3.1.1: Muss ich ein Update durchführen?.
Bereitstellen von Azure Files-Speicherkonto und NFS-Freigaben
NFS in Azure Files basiert auf Premium-Speicher von Azure Files. Lesen Sie vor dem Einrichten von NFS in Azure Files die Anleitung zum Erstellen einer NFS-Freigabe.
Es gibt zwei Optionen für Redundanz innerhalb einer Azure-Region:
- Lokal redundanter Speicher (LRS) bietet eine lokale synchrone Datenreplikation innerhalb einer Zone.
- Zonenredundanter Speicher (ZRS) repliziert Ihre Daten synchron in allen drei Verfügbarkeitszonen der primären Region.
Überprüfen Sie, ob in der von Ihnen gewählten Azure-Region NFS 4.1 in Azure Files mit der entsprechenden Redundanz zur Verfügung steht. Überprüfen Sie die Verfügbarkeit von Azure Files nach Azure-Region unter File Storage Premium. Wenn Ihr Szenario von ZRS profitiert, vergewissern Sie sich, dass Premium-Dateifreigaben mit ZRS in Ihrer Azure-Region unterstützt werden.
Es wird empfohlen, über einen privaten Azure-Endpunkt auf Ihr Azure Storage-Konto zuzugreifen. Achten Sie darauf, dass Sie den Azure Files-Speicherkontoendpunkt und die virtuellen Computer, auf denen Sie die NFS-Freigaben bereitstellen müssen, im gleichen virtuellen Azure-Netzwerk (VNet) oder in mittels Peering verknüpften Azure-VNets bereitstellen.
- Stellen Sie ein File Storage-Konto mit dem Namen
sapafsnfs
bereit. In diesem Beispiel wird ZRS verwendet. Sollten Sie mit dem Prozess nicht vertraut sein, finden Sie weitere Informationen unter Speicherkonto erstellen für das Azure-Portal. - Verwenden Sie auf der Registerkarte Allgemeine Informationen die folgenden Einstellungen:
- Geben Sie unter Name des Speicherkontos den Namen
sapafsnfs
ein. - Wählen Sie unter Leistung den Wert Premium aus.
- Wählen Sie unter Premium account type (Premium-Kontotyp) die Option FileStorage aus.
- Wählen Sie unter Replikation die Zonenredundanz (ZRS) aus.
- Geben Sie unter Name des Speicherkontos den Namen
- Wählen Sie Weiter aus.
- Deaktivieren Sie auf der Registerkarte Erweitert die Option Sichere Übertragung für REST-API-Vorgänge erforderlich. Wenn Sie diese Option nicht deaktivieren, kann die NFS-Freigabe nicht auf Ihrem virtuellen Computer eingebunden werden. Bei der Einbindung tritt ein Timeout auf.
- Wählen Sie Weiter aus.
- Konfigurieren Sie im Abschnitt Netzwerk die folgenden Einstellungen:
- Wählen Sie unter Netzwerkkonnektivität für Konnektivitätsmethode die Option Privater Endpunkt aus.
- Wählen Sie unter Privater Endpunkt die Option Privaten Endpunkt hinzufügen aus.
- Wählen Sie im Bereich Privaten Endpunkt erstellen Ihr Abonnement, Ihre Ressourcengruppe und Ihren Standort aus.
Geben Sie unter Name
sapafsnfs_pe
ein. Wählen Sie unter Untergeordnete Speicherressource die Option Datei aus. Wählen Sie unter Netzwerk für Virtuelles Netzwerk das zu verwendende VNet und das entsprechende Subnetz aus. Auch hier können Sie das VNet, in dem sich Ihre virtuellen SAP-Computer befinden, oder ein mittels Peering verknüpftes Vnet verwenden. Übernehmen Sie unter Integration von privatem DNS für In private DNS-Zone integrieren die Standardoption Ja. Wählen Sie Ihre private DNS-Zone aus. Klicken Sie auf OK. - Wählen Sie auf der Registerkarte Netzwerk die Option Weiter aus.
- Übernehmen Sie auf der Registerkarte Datenschutz alle Standardeinstellungen.
- Wählen Sie Überprüfen und erstellen aus, um Ihre Konfiguration zu überprüfen.
- Warten Sie, bis die Überprüfung abgeschlossen ist. Beheben Sie ggf. vorhandene Probleme, bevor Sie fortfahren.
- Wählen Sie auf der Registerkarte Überprüfen + erstellen die Option Erstellen aus.
Stellen Sie als Nächstes die NFS-Freigaben im von Ihnen erstellten Speicherkonto bereit. In diesem Beispiel gibt es zwei NFS-Freigaben: sapnw1
und saptrans
.
Melden Sie sich am Azure-Portal an.
Wählen Sie Speicherkonten aus, oder suchen Sie danach.
Wählen Sie auf der Seite Speicherkonten die Option sapafsnfs aus.
Wählen Sie im Ressourcenmenü für sapafsnfs unter Datenspeicher die Option Dateifreigaben aus.
Wählen Sie auf der Seite Dateifreigaben die Option Dateifreigabe aus.
- Geben Sie unter Name Folgendes ein:
sapnw1
,saptrans
. - Wählen Sie eine geeignete Freigabegröße aus – beispielsweise 128 GB. Berücksichtigen Sie die Größe der auf der Freigabe gespeicherten Daten sowie die IOPS- und Durchsatzanforderungen. Weitere Informationen finden Sie unter Skalierbarkeitsziele für Azure-Dateifreigaben.
- Wählen Sie als Protokoll NFS aus.
- Wählen Sie Kein Root-Squash aus. Andernfalls wird beim Einbinden der Freigaben auf Ihren virtuellen Computern der Dateibesitzer bzw. die Gruppe nicht angezeigt.
Wichtig
Die oben angegebene Freigabegröße ist nur ein Beispiel. Dimensionieren Sie Ihre Freigaben angemessen. Orientieren Sie sich dabei nicht nur an der Größe der auf der Freigabe gespeicherten Daten, sondern auch an den Anforderungen für IOPS und Durchsatz. Ausführliche Informationen finden Sie unter Skalierbarkeitsziele für Azure-Dateifreigaben.
Die SAP-Dateisysteme, die nicht über NFS eingebunden werden müssen, können auch in Azure Disk Storage bereitgestellt werden. In diesem Beispiel können
/usr/sap/NW1/D02
und/usr/sap/NW1/D03
in Azure Disk Storage bereitgestellt werden.- Geben Sie unter Name Folgendes ein:
Wichtige Überlegungen im Zusammenhang mit Freigaben vom Typ „NFS in Azure Files“
Berücksichtigen Sie die folgenden wichtigen Punkte, wenn Sie eine Bereitstellung mit NFS in Azure Files planen:
- Die Mindestgröße für eine Freigabe beträgt 100 GiB. Sie bezahlen nur für die Kapazität der bereitgestellten Freigaben.
- Berücksichtigen Sie beim Dimensionieren Ihrer NFS-Freigaben nicht nur die Kapazitätsanforderungen, sondern auch die Anforderungen hinsichtlich IOPS und Durchsatz. Ausführliche Informationen finden Sie unter Skalierbarkeitsziele für Azure-Dateifreigaben.
- Testen Sie die Workload, um die gewählte Dimensionierung zu überprüfen und sicherzustellen, dass sie Ihre Leistungsziele erfüllt. Informationen zur Behandlung von Leistungsproblemen in Azure Files finden Sie unter Problembehandlung bei Leistungsproblemen mit Azure-Dateifreigaben.
- Bei SAP J2EE-Systemen wird die Platzierung von
/usr/sap/<SID>/J<nr>
in NFS in Azure Files nicht unterstützt. - Wenn in Ihrem SAP-System sehr viele Batchaufträge ausgeführt werden, verfügen Sie möglicherweise über Millionen von Auftragsprotokollen. Falls die SAP-Batchauftragsprotokolle im Dateisystem gespeichert werden, achten Sie insbesondere auf die Dimensionierung der Freigabe
sapmnt
. Ab SAP_BASIS 7.52 werden Batchauftragsprotokolle standardmäßig in der Datenbank gespeichert. Ausführliche Informationen finden Sie unter Auftragsprotokoll in der Datenbank. - Stellen Sie für jedes SAP-System eine separate Freigabe vom Typ
sapmnt
bereit. - Verwenden Sie die Freigabe
sapmnt
nicht für andere Aktivitäten (beispielsweise für Schnittstellen oder fürsaptrans
). - Verwenden Sie die Freigabe
saptrans
nicht für andere Aktivitäten (beispielsweise für Schnittstellen oder fürsapmnt
). - Es wird davon abgeraten, die Freigaben für zu viele SAP-Systeme in einem einzelnen Speicherkonto zu konsolidieren. Es gibt auch Skalierbarkeitsziele für Speicherkonten. Achten Sie auch darauf, die Grenzwerte für das Speicherkonto nicht zu überschreiten.
- Konsolidieren Sie generell Freigaben für maximal fünf SAP-Systeme in einem einzelnen Speicherkonto. Diese Richtlinie hilft dabei, die Grenzwerte für Speicherkonten nicht zu überschreiten, und vereinfacht die Leistungsanalyse.
- Vermeiden Sie es generell, Freigaben wie
sapmnt
für produktionsfremde SAP-Systeme und Freigaben für SAP-Produktionssysteme im gleichen Speicherkonto zu mischen. - Sie sollten für die Bereitstellung mindestens SLES 15 SP2 verwenden, um von NFS-Clientverbesserungen zu profitieren.
- Verwenden Sie einen privaten Endpunkt. Im unwahrscheinlichen Fall eines Zonenausfalls werden Ihre NFS-Sitzungen automatisch in eine fehlerfreie Zone umgeleitet. Sie müssen die NFS-Freigaben auf Ihren virtuellen Computern nicht erneut einbinden.
- Wenn Sie Ihre virtuellen Computer verfügbarkeitszonenübergreifend bereitstellen, verwenden Sie in den Azure-Regionen mit ZRS-Unterstützung ein Speicherkonto mit ZRS.
- Von Azure Files wird derzeit keine automatische regionsübergreifende Replikation für Notfallwiederherstellungsszenarien unterstützt.
Einrichten von (A)SCS
Im nächsten Schritt bereiten Sie die SAP ASCS- und ERS-Instanzen vor und installieren sie.
Erstellen des Pacemaker-Clusters
Führen Sie die unter Einrichten von Pacemaker unter SUSE Linux Enterprise Server in Azure beschriebenen Schritte aus, um einen einfachen Pacemaker-Cluster für SAP (A)SCS zu erstellen.
Installation
Die folgenden Elemente sind mit einem der folgenden Präfixe versehen: [A] – gilt für alle Knoten, [1] – gilt nur für Knoten 1, oder [2] – gilt nur für Knoten 2.
[A] Installieren Sie die aktuelle Version des SUSE-Connectors.
sudo zypper install sap-suse-cluster-connector
Hinweis
Das bekannte Problem bei der Verwendung eines Gedankenstrichs in Hostnamen wird mit Version 3.1.1 des Pakets sap-suse-cluster-connector korrigiert. Stellen Sie sicher, dass Sie mindestens Version 3.1.1 des Pakets sap-suse-cluster-connector verwenden, wenn Sie Clusterknoten mit Gedankenstrichen im Hostnamen verwenden. Andernfalls funktioniert der Cluster nicht.
Stellen Sie sicher, dass Sie die neue Version des SAP SUSE-Clusterconnectors installiert haben. Der alte Name war „sap_suse_cluster_connector“, und der neue Name ist sap-suse-cluster-connector.
[A] Aktualisieren Sie SAP-Ressourcen-Agents.
Ein Patch für das resource-agents-Paket ist erforderlich, um die in diesem Artikel beschriebene neue Konfiguration zu verwenden. Anhand des folgenden Befehls können Sie überprüfen, ob der Patch bereits installiert ist:
sudo grep 'parameter name="IS_ERS"' /usr/lib/ocf/resource.d/heartbeat/SAPInstance
Die Ausgabe sollte in etwa wie folgt aussehen:
<parameter name="IS_ERS" unique="0" required="0">;
Wenn der Parameter „IS_ERS“ nicht mit dem Befehl „grep“ gefunden wird, müssen Sie den auf der SUSE-Downloadseite aufgeführten Patch installieren.
[A] Einrichten der Hostnamensauflösung
Sie können entweder einen DNS-Server verwenden oder „/etc/hosts“ auf allen Knoten ändern. In diesem Beispiel wird die Verwendung der /etc/hosts-Datei veranschaulicht. Ersetzen Sie die IP-Adresse und den Hostnamen in den folgenden Befehlen.
sudo vi /etc/hosts
Fügen Sie „/etc/hosts“ die folgenden Zeilen hinzu. Ändern Sie die IP-Adresse und den Hostnamen Ihrer Umgebung entsprechend.
# IP address of cluster node 1 10.90.90.7 sap-cl1 # IP address of cluster node 2 10.90.90.8 sap-cl2 # IP address of the load balancer frontend configuration for SAP Netweaver ASCS 10.90.90.10 sapascs # IP address of the load balancer frontend configuration for SAP Netweaver ERS 10.90.90.9 sapers
[1] Erstellen Sie die SAP-Verzeichnisse auf der NFS-Freigabe.
Binden Sie die NFS-Freigabe sapnw1 vorübergehend auf einem der virtuellen Computer ein, und erstellen Sie die SAP-Verzeichnisse, die als geschachtelte Bereitstellungspunkte verwendet werden sollen.# mount temporarily the volume sudo mkdir -p /saptmp sudo mount -t nfs sapnfs.file.core.windows.net:/sapnfsafs/sapnw1 /saptmp -o noresvport,vers=4,minorversion=1,sec=sys # create the SAP directories sudo cd /saptmp sudo mkdir -p sapmntNW1 sudo mkdir -p usrsapNW1ascs sudo mkdir -p usrsapNW1ers sudo mkdir -p usrsapNW1sys # unmount the volume and delete the temporary directory cd .. sudo umount /saptmp sudo rmdir /saptmp
Vorbereiten der SAP NetWeaver-Installation
[A] Erstellen Sie die freigegebenen Verzeichnisse.
sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/trans sudo mkdir -p /usr/sap/NW1/SYS sudo mkdir -p /usr/sap/NW1/ASCS00 sudo mkdir -p /usr/sap/NW1/ERS01 sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/trans sudo chattr +i /usr/sap/NW1/SYS sudo chattr +i /usr/sap/NW1/ASCS00 sudo chattr +i /usr/sap/NW1/ERS01
[A] Einbinden der Dateisysteme, die nicht vom Pacemaker-Cluster gesteuert werden
vi /etc/fstab # Add the following lines to fstab, save and exit sapnfs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1sys/ /usr/sap/NW1/SYS nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 # Mount the file systems mount -a
[A] Konfigurieren Sie die Auslagerungsdatei.
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
Starten Sie den Agent neu, um die Änderung zu aktivieren.
sudo service waagent restart
Installieren von SAP NetWeaver ASCS/ERS
[1] Erstellen Sie eine virtuelle IP-Ressource und einen Integritätstest für die ASCS-Instanz.
Wichtig
Es wird empfohlen, den Ressourcen-Agent „azure-lb“ zu verwenden, der Teil des Pakets „resource-agents“ ist. Dabei gelten die folgenden Versionsanforderungen für das Paket:
- Für SLES 12 SP4/SP5 muss die Version mindestens resource-agents-4.3.018.a7fb5035-3.30.1 sein.
- Ab SLES 15 muss die Version mindestens resource-agents-4.3.0184.6ee15eb2-4.13.1 sein.
sudo crm node standby sap-cl2 sudo crm configure primitive fs_NW1_ASCS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ascs' directory='/usr/sap/NW1/ASCS00' fstype='nfs' options='noresvport,vers=4,minorversion=1,sec=sys' \ op start timeout=60s interval=0 \ op stop timeout=60s interval=0 \ op monitor interval=20s timeout=40s sudo crm configure primitive vip_NW1_ASCS IPaddr2 \ params ip=10.90.90.10 \ 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 fs_NW1_ASCS nc_NW1_ASCS vip_NW1_ASCS \ meta resource-stickiness=3000
Stellen Sie sicher, dass der Clusterstatus gültig ist und alle Ressourcen gestartet sind. Es ist nicht wichtig, auf welchem Knoten die Ressourcen ausgeführt werden.
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 # fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started sap-cl1 # nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl1 # vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl1
[1] Installieren Sie SAP NetWeaver ASCS.
Installieren Sie SAP NetWeaver ASCS als Stamm auf dem ersten Knoten. Verwenden Sie dabei einen virtuellen Hostnamen, der der IP-Adresse der Front-End-Konfiguration für den Lastenausgleich für ASCS zugeordnet ist (z. B. sapascs, 10.90.90.10), und die Instanznummer, die Sie für den Test des Lastenausgleichs verwendet haben (z. B. 00).
Sie können den sapinst-Parameter „SAPINST_REMOTE_ACCESS_USER“ verwenden, um anderen Benutzern als Stammbenutzern die Herstellung einer Verbindung mit sapinst zu ermöglichen. Sie können den Parameter SAPINST_USE_HOSTNAME verwenden, um SAP über einen virtuellen Hostnamen zu installieren.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=<virtual_hostname>
Wenn bei der Installation kein Unterordner in „/usr/sap/NW1/ASCS00“ erstellt werden kann, legen Sie den Besitzer und die Gruppe des Ordners „ASCS00“ fest, und versuchen Sie es noch mal.
chown nw1adm /usr/sap/NW1/ASCS00 chgrp sapsys /usr/sap/NW1/ASCS00
[1] Erstellen Sie eine virtuelle IP-Ressource und einen Integritätstest für die ERS-Instanz.
sudo crm node online sap-cl2 sudo crm node standby sap-cl1 sudo crm configure primitive fs_NW1_ERS Filesystem device='sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/usrsapNW1ers' directory='/usr/sap/NW1/ERS01' fstype='nfs' options='noresvport,vers=4,minorversion=1,sec=sys' \ op start timeout=60s interval=0 \ op stop timeout=60s interval=0 \ op monitor interval=20s timeout=40s sudo crm configure primitive vip_NW1_ERS IPaddr2 \ params ip=10.90.90.9 \ 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 fs_NW1_ERS nc_NW1_ERS vip_NW1_ERS
Stellen Sie sicher, dass der Clusterstatus gültig ist und alle Ressourcen gestartet sind. Es ist nicht wichtig, auf welchem Knoten die Ressourcen ausgeführt werden.
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 # fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started sap-cl2 # nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl2 # vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl2 # Resource Group: g-NW1_ERS # fs_NW1_ERS (ocf::heartbeat:Filesystem): Started sap-cl2 # nc_NW1_ERS (ocf::heartbeat:azure-lb): Started sap-cl2 # vip_NW1_ERS (ocf::heartbeat:IPaddr2): Started sap-cl2
[2] Installieren Sie SAP NetWeaver ERS.
Installieren Sie SAP NetWeaver ERS auf dem zweiten Knoten als Stamm. Verwenden Sie dabei einen virtuellen Hostnamen, der der IP-Adresse der Front-End-Konfiguration des Lastenausgleichs für ERS zugeordnet ist (z. B. sapers, 10.90.90.9), und die Instanznummer, die Sie für den Test des Lastenausgleichs verwendet haben (z. B. 01).
Sie können den sapinst-Parameter „SAPINST_REMOTE_ACCESS_USER“ verwenden, um anderen Benutzern als Stammbenutzern die Herstellung einer Verbindung mit sapinst zu ermöglichen. Sie können den Parameter SAPINST_USE_HOSTNAME verwenden, um SAP über einen virtuellen Hostnamen zu installieren.
<swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin SAPINST_USE_HOSTNAME=virtual_hostname
Hinweis
Verwenden Sie SWPM SP 20 PL 05 oder höher. Bei niedrigeren Versionen werden die Berechtigungen nicht ordnungsgemäß festgelegt, sodass bei der Installation ein Fehler auftritt.
Wenn bei der Installation kein Unterordner in „/usr/sap/NW1/ERS01“ erstellt werden kann, legen Sie den Besitzer und die Gruppe des Ordners „ERS01“ fest, und versuchen Sie es noch mal.
chown nw1adm /usr/sap/NW1/ERS01 chgrp sapsys /usr/sap/NW1/ERS01
[1] Passen Sie die ASCS/SCS- und ERS-Instanzprofile an.
- ASCS/SCS-Profil
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 keep alive parameter, if using ENSA1 enque/encni/set_so_keepalive = true
Stellen Sie sowohl für ENSA1 als auch für ENSA2 sicher, dass die
keepalive
-Parameter des Betriebssystems wie im SAP-Hinweis 1410736 beschrieben festgelegt sind.- ERS-Profil
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 ERS profile # Autostart = 1
[A] Konfigurieren Sie Keep-Alive.
Die Kommunikation zwischen dem SAP NetWeaver-Anwendungsserver und ASCS/SCS wird durch einen Softwarelastenausgleich weitergeleitet. Der Lastenausgleich trennt nach einem konfigurierbaren Timeout inaktive Verbindungen. Um dies zu verhindern, muss bei Verwendung von ENSA1 ein Parameter im SAP NetWeaver-ASCS/SCS-Profil festgelegt werden. Ändern Sie außerdem die Linux-Systemeinstellungen für
keepalive
auf allen SAP-Servern (sowohl für ENSA1 als auch für ENSA2). Weitere Informationen finden Sie im SAP-Hinweis 1410736.# Change the Linux system configuration sudo sysctl net.ipv4.tcp_keepalive_time=300
[A] Konfigurieren Sie nach der Installation die SAP-Benutzer.
# Add sidadm to the haclient group sudo usermod -aG haclient nw1adm
[1] Fügen Sie ASCS- und ERS-SAP-Dienste zur Datei
sapservice
hinzu.Fügen Sie den ASCS-Diensteintrag zum zweiten Knoten hinzu. Kopieren Sie dann den ERS-Diensteintrag, und fügen Sie ihn auf dem ersten Knoten ein.
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
[A] Deaktivieren von
systemd
-Diensten der ASCS- und ERS SAP-Instanz. Dieser Schritt gilt nur, wenn das SAP-Startframework gemäß SAP-Hinweis 3115048 von „systemd“ verwaltet wird.Hinweis
Beim Verwalten von SAP-Instanzen wie SAP ASCS und SAP ERS mithilfe der SLES-Clusterkonfiguration müssen Sie zusätzliche Änderungen vornehmen, um den Cluster in das native systemd-basierte SAP-Startframework zu integrieren. Dadurch wird sichergestellt, dass Wartungsverfahren die Clusterstabilität nicht beeinträchtigen. Nach der Installation oder dem Wechsel des SAP-Startframeworks zum systemd-fähigen Setup gemäß SAP-Hinweis 3115048 sollten Sie die
systemd
-Dienste für die ASCS- und ERS SAP-Instanzen deaktivieren.# 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
[1] Erstellen Sie die SAP-Clusterressourcen.
Je nachdem, ob Sie ein ENSA1- oder ENSA2-System ausführen, wählen Sie die entsprechende Registerkarte aus, um die Ressourcen zu definieren. SAP hat in SAP NetWeaver 7.52 Unterstützung für ENSA2 eingeführt, einschließlich Replikation. Ab der ABAP-Plattform 1809 wird ENSA2 standardmäßig installiert. Informationen zur ENSA2-Unterstützung finden Sie im SAP Hinweis 2630416.
sudo crm configure property maintenance-mode="true" sudo crm configure primitive rsc_sap_NW1_ASCS00 SAPInstance \ operations \$id=rsc_sap_NW1_ASCS00-operations \ 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 \ meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10 sudo crm configure primitive rsc_sap_NW1_ERS01 SAPInstance \ operations \$id=rsc_sap_NW1_ERS01-operations \ 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 \ meta priority=1000 sudo crm configure modgroup g-NW1_ASCS add rsc_sap_NW1_ASCS00 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"
Wenn Sie ein Upgrade von einer älteren Version durchführen und zu Enqueue Server 2 wechseln, lesen Sie den SAP-Hinweis 2641019.
Stellen Sie sicher, dass der Clusterstatus gültig ist und alle Ressourcen gestartet sind. Es ist nicht wichtig, auf welchem Knoten die Ressourcen ausgeführt werden.
sudo crm_mon -r
# Full list of resources:
#
# stonith-sbd (stonith:external/sbd): Started sap-cl2
# Resource Group: g-NW1_ASCS
# fs_NW1_ASCS (ocf::heartbeat:Filesystem): Started sap-cl1
# nc_NW1_ASCS (ocf::heartbeat:azure-lb): Started sap-cl1
# vip_NW1_ASCS (ocf::heartbeat:IPaddr2): Started sap-cl1
# rsc_sap_NW1_ASCS00 (ocf::heartbeat:SAPInstance): Started sap-cl1
# Resource Group: g-NW1_ERS
# fs_NW1_ERS (ocf::heartbeat:Filesystem): Started sap-cl2
# nc_NW1_ERS (ocf::heartbeat:azure-lb): Started sap-cl2
# vip_NW1_ERS (ocf::heartbeat:IPaddr2): Started sap-cl2
# rsc_sap_NW1_ERS01 (ocf::heartbeat:SAPInstance): Started sap-cl1
Vorbereitung des SAP NetWeaver-Anwendungsservers
Für einige Datenbanken ist es erforderlich, dass die Installation der Datenbankinstanz auf einem Anwendungsserver ausgeführt wird. Bereiten Sie die virtuellen Computer für den Anwendungsserver vor, damit Sie diese in diesen Fällen verwenden können.
In den folgenden Schritten wird davon ausgegangen, dass Sie den Anwendungsserver auf einem Server installieren, bei dem es sich nicht um einen ASCS/SCS- oder HANA-Server handelt. Anderenfalls sind einige der nachfolgenden Schritte (wie die Konfiguration der Hostnamensauflösung) nicht erforderlich.
Die folgenden Elemente sind mit einem der folgenden Präfixe versehen: [A] (gilt für alle PAS und AAS), [P] (gilt nur für PAS) oder [S] (gilt nur für AAS).
[A] Konfigurieren des Betriebssystems
Reduzieren Sie die Größe des Änderungscaches. Weitere Informationen finden Sie unter Low write performance on SLES 11/12 servers with large RAM (Niedrige Schreibleistung auf SLES 11/12-Servern mit großem Arbeitsspeicher).
sudo vi /etc/sysctl.conf # Change/set the following settings vm.dirty_bytes = 629145600 vm.dirty_background_bytes = 314572800
[A] Einrichten der Hostnamensauflösung
Sie können entweder einen DNS-Server verwenden oder „/etc/hosts“ auf allen Knoten ändern. In diesem Beispiel wird die Verwendung der /etc/hosts-Datei veranschaulicht. Ersetzen Sie die IP-Adresse und den Hostnamen in den folgenden Befehlen.
sudo vi /etc/hosts
Fügen Sie „/etc/hosts“ die folgenden Zeilen hinzu. Ändern Sie die IP-Adresse und den Hostnamen Ihrer Umgebung entsprechend.
10.90.90.7 sap-cl1 10.90.90.8 sap-cl2 # IP address of the load balancer frontend configuration for SAP Netweaver ASCS 10.90.90.10 sapascs # IP address of the load balancer frontend configuration for SAP Netweaver ERS 10.90.90.9 sapers 10.90.90.12 sapa01 10.90.90.13 sapa02
[A] Erstellen des Verzeichnisses „sapmnt“
sudo mkdir -p /sapmnt/NW1 sudo mkdir -p /usr/sap/trans sudo chattr +i /sapmnt/NW1 sudo chattr +i /usr/sap/trans
[A] Binden Sie die Dateisysteme ein.
vi /etc/fstab # Add the following lines to fstab, save and exit sapnfs.file.core.windows.net:/sapnfsafs/saptrans /usr/sap/trans nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 sapnfs.file.core.windows.net:/sapnfsafs/sapnw1/sapmntNW1 /sapmnt/NW1 nfs noresvport,vers=4,minorversion=1,sec=sys 0 0 # Mount the file systems mount -a
[A] Konfigurieren Sie die Auslagerungsdatei.
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
Starten Sie den Agent neu, um die Änderung zu aktivieren.
sudo service waagent restart
Installieren der Datenbank
In diesem Fall ist SAP NetWeaver auf SAP HANA installiert. Für diese Installation können Sie jede unterstützte Datenbank verwenden. Weitere Informationen zum Installieren von SAP HANA in Azure finden Sie unter Hochverfügbarkeit von SAP HANA auf virtuellen Azure-Computern (VMs). Eine Liste der unterstützten Datenbanken finden Sie im SAP-Hinweis 1928533.
Installieren Sie die SAP NetWeaver-Datenbankinstanz als Stamm mit einem virtuellen Hostnamen, der der IP-Adresse der Front-End-Konfiguration für den Lastenausgleich für die Datenbank zugeordnet ist.
Sie können den sapinst-Parameter „SAPINST_REMOTE_ACCESS_USER“ verwenden, um anderen Benutzern als Stammbenutzern die Herstellung einer Verbindung mit sapinst zu ermöglichen.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
Installation des SAP NetWeaver-Anwendungsservers
Führen Sie die folgenden Schritte durch, um einen SAP-Anwendungsserver zu installieren.
[A] Vorbereiten des Anwendungsservers. Führen Sie die Schritte im Kapitel Vorbereitung des SAP NetWeaver-Anwendungsservers aus, um den Anwendungsserver vorzubereiten.
[A] Installieren Sie den SAP NetWeaver-Anwendungsserver.
Installieren Sie einen primären oder einen zusätzlichen SAP NetWeaver-Anwendungsserver.Sie können den sapinst-Parameter „SAPINST_REMOTE_ACCESS_USER“ verwenden, um anderen Benutzern als Stammbenutzern die Herstellung einer Verbindung mit sapinst zu ermöglichen.
sudo <swpm>/sapinst SAPINST_REMOTE_ACCESS_USER=sapadmin
[A] Aktualisieren Sie den sicheren SAP HANA-Speicher.
Ändern Sie den sicheren SAP HANA-Speicher dahingehend, dass er auf den virtuellen Namen der Einrichtung der SAP HANA-Systemreplikation zeigt.
Führen Sie den folgenden Befehl aus, um die Einträge aufzulisten.
hdbuserstore List
Durch den Befehl werden alle Einträge aufgelistet. Die Liste sieht in etwa wie folgt aus:
DATA FILE : /home/nw1adm/.hdb/sapa01/SSFS_HDB.DAT KEY FILE : /home/nw1adm/.hdb/sapa01/SSFS_HDB.KEY KEY DEFAULT ENV : 10.90.90.5:30313 USER: SAPABAP1 DATABASE: NW1
In diesem Beispiel verweist die IP-Adresse des Standardeintrags auf den virtuellen Computer, nicht auf den Lastenausgleich. Ändern Sie den Eintrag so, dass er auf den virtuellen Hostnamen des Lastenausgleichs verweist. Achten Sie darauf, dass Sie den gleichen Port und Datenbanknamen verwenden (
30313
undNW1
in der Beispielausgabe).su - nw1adm hdbuserstore SET DEFAULT nw1db:30313@NW1 SAPABAP1 <password of ABAP schema>
Testen der Clustereinrichtung
Testen Sie Ihren Pacemaker-Cluster sorgfältig. Führen Sie die üblichen Failovertests durch.
Nächste Schritte
- Leitfaden zur Multi-SID-Hochverfügbarkeit für SAP NetWeaver auf virtuellen Azure-Computern unter SUSE Linux Enterprise Server für SAP-Anwendungen
- Azure Virtual Machines – Planung und Implementierung für SAP
- Azure Virtual Machines – Bereitstellung für SAP
- Azure Virtual Machines – DBMS-Bereitstellung für SAP
- Informationen zur Erzielung von Hochverfügbarkeit und zur Planung der Notfallwiederherstellung für SAP HANA auf Azure-VMs finden Sie unter Hochverfügbarkeit für SAP HANA auf Azure Virtual Machines (VMs).