Bereitstellung von SAP Workload S/4HANA HA-Bereitstellung auf IBM Cloud® VPC (Terraform und Ansible )
Terraform auf IBM Cloud® ermöglicht eine vorhersehbare und konsistente Bereitstellung von IBM Cloud Virtual Private Cloud (VPC)-Infrastrukturressourcen, so dass Sie schnell komplexe Cloud-Umgebungen aufbauen können. IBM Cloud VPC Infrastruktur besteht aus SAP zertifizierter Hardware, die Intel® Xeon CPUs und andere Intel® Technologien verwendet.
Terraform-Skripte werden verwendet, um eine VPC und 2 geclusterte Ebenen zu erstellen, eine für SAP S/4HANA und eine weitere für SAP HANA In-Memory-Datenbank in einer HA Single- und Multi Zone-Architektur auf dem Bastion-Server. Die Erstellung des Bastion-Servers ist eine Voraussetzung für alle automatisierten Lösungen IBM SAP VPC. Die Automatisierungsskripte verwenden die von Ihnen bereitgestellten VPC-Informationen und rufen dann das Ansible playbook auf, um die SAP Architektur in der angegebenen VPC zu erstellen.
Sie haben die Wahl zwischen drei Verteilungsmethoden:
- Terraform-Skripte werden über die CLI auf Ihrem Bastion-Server ausgeführt.
- Katalogkachel-Benutzerschnittstelle aus dem IBM Cloud Katalog.
- IBM Cloud Schematics benutzeroberfläche, auf die Sie über das Menü in Ihrem Cloud-Dashboard zugreifen können.
SAP Solution implementiert
SAP S/4HANA ist ein ERP-System aus der ERP-Software-Produktlinie von SAP. Die Software basiert auf der innovativen Datenbanktechnologie SAP HANA und wurde 2015 in der vierten Produktgeneration gestartet. Benutzer können zwischen der SAP S/4HANA Cloud und der On-Premises-Lösung wählen.
Für die bedarfsorientierte Geschäftsressourcenplanung wird ein ERP-System verwendet. Es wird verwendet, um Prozesse zu steuern und Abteilungen und Funktionsbereiche sinnvoll zu verknüpfen. Einzelne Module umfassen Anwendungen für Buchhaltung, Vertrieb, Produktion und Marketing. Komplexere Aufgaben im Kunden- oder Lieferkettenmanagement können ebenfalls von ERP-Software übernommen werden. Als Nachfolger des Kernprodukts SAP ECC wurde SAP S/4HANA als intelligentes ERP-System der neuen Generation präsentiert. Mit Hilfe moderner Technologien soll die Version Software as Service ( SaaS ) Unternehmen helfen, Prozesse zu standardisieren und den Sprung in die Digitalisierung zu schaffen.
Während vorherige SAP ERP-Lösungen die gängigsten Datenbanken unterstützen, verwendet SAP S/4HANA ausschließlich die speicherinterne Datenbank SAP Hana, die von SAP entwickelt wurde. Diese speicherinterne Datenbank bietet Benutzern den größten technischen Vorteil und sie profitieren von höherer Leistung. Das "S" in S/4HANA steht für "einfach", während sich die "4" auf die Generationenfolge bezieht. Im Vergleich zum SAP-Kernprodukt SAP ECC, das in den meisten Unternehmen immer noch verwendet wird, bietet SAP S/4HANA viele innovative Funktionen, die die Systemumgebung von Grund auf revolutionieren. Da SAP plant, die Wartung der bestehenden ERP-Lösungen bis 2027 einzustellen, erwägen viele SAP ECC-Anwender bereits eine Migration auf SAP HA SZ oder MZ S/4HANA.
Was wird erstellt?
Die Scripts funktionieren in zwei Phasen. Die erste Phase automatisiert die Erstellung der Ressourcen für den VPC-Bereitstellungsprozess in einer bestehenden VPC, die bei der Bereitstellung der Bastion VSI erstellt wurde. In der zweiten Phase wird die Architektur SAP in einer verteilten Umgebung erstellt.
-
Architektur für S/4HANA HA in einer einzigen Zone
- SAP HA SZ S/4HANA App-Cluster-Server auf einer separaten VSI als Einzelzonen-VPC
- SAP HANA cluster-DB auf einem dedizierten Server vom Typ VSI als Einzelzonen-VPC
-
Architektur für S/4HANA HA in einer Multizone
- SAP HA MZ S/4HANA App-Cluster-Server auf einer separaten VSI als Multi-Zone VPC
- SAP HANA cluster-DB auf einem dedizierten Server vom Typ VSI als Multizonen-VPC
Es wird empfohlen, bei der Bereitstellung dieser Lösung die Richtlinien in der Readme-Datei zu lesen.
Weitere Informationen zu dieser Architektur finden Sie unter SAP NetWeaver 7.x mit SAP HANA IBM Cloud VPC.
In der ersten Phase werden die folgenden Ressourcen in der VPC bereitgestellt:
- 1 Power Placement-Gruppe für alle 4 virtuellen Maschinen, die mit dieser Lösung erstellt wurden
- 4 VSI, mit Teilnetz- und Sicherheitsgruppenkonfigurationen
- 3 Application Load Balancers für HANA DB und SAP ASCS/ERS
- 1 VPC-DNS-Dienst, der für die Zuordnung des ALB-FQDN zu den virtuellen Hostnamen SAP ASCS/ERS und HANA verwendet wird
- 7 Dateifreigaben für VPC
In der zweiten Phase werden die Ansible Playbooks aufgerufen und die SAP Hochverfügbarkeitsarchitektur für die beiden dedizierten VSIs SAP App VSI Box und dedizierte SAP HANA VSI Box installiert. Die SAP Architektur, die auf dem pacemaker cluster eingesetzt wird, ist die SAP S/4HANA Version. HA dedicated SAP HANA 2.0 VSI's Release als verteiltes Bereitstellungsmodell. Weitere Informationen zu dieser Architektur finden Sie unter Automatisieren der SAP HANA eigenständigen virtuellen Serverinstanz auf IBM Cloud VPC unter Verwendung von Terraform und Ansible.
Hochverfügbares System für SAP S/4HANA in einer Einzelzonen- oder Mehrzonen-Architektur
Ein standardmäßiger HA HANA-Cluster in einer Aktiv-Passiv-Konfiguration hat zwei Knoten: einen Primärknoten und einen Standby-Knoten. Der primäre Knoten bedient aktiv die aktiven SAP Instanzen (PAS und AAS), während der Standby-Knoten darauf wartet, bei Bedarf einspringen zu können.
Der Cluster wird mit einem virtuellen IP-Hostnamen eingerichtet. Der Hostname wird über DNS auf den FQDN des HANA ALB abgebildet, der mit dem von SAP ASCS- und ERS-Instanzen identisch ist. App-Instanzen (PAS und AAS) sind die Angaben, die in den Profilen von SAP verwendet werden, um diese bestimmte Komponente aufzurufen. Der Cluster weist diese virtuelle IP dem aktiven Knoten zu und verwendet einen Heartbeat-Monitor, um die Verfügbarkeit der Komponenten zu bestätigen. Wenn der primäre Knoten nicht mehr reagiert, löst er den automatischen Failover-Mechanismus aus, der den Standby-Knoten anruft, damit er der primäre Knoten wird. Der ALB erkennt die Änderung, leitet den Verkehr an den neuen aktiven Knoten um und weist ihm die virtuelle IP zu, wodurch die Verfügbarkeit der Komponente wiederhergestellt wird. Nachdem der ausgefallene Knoten repariert wurde, geht er als Standby-Knoten online.
Terraform-Scripts
Die Terraform-Skripte für die Bereitstellung sind enthalten:
- Eine Power Placement-Gruppe, die alle vier an dieser Lösung beteiligten VMs umfasst.
- Vier VSIs in einer bestehenden VPC mit Subnetz- und Sicherheitsgruppenkonfigurationen. Der VSI-Umfang: zwei für die HANA-Datenbank-Cluster-Instanz und zwei für den Anwendungscluster SAP.
- Konfigurieren von drei Application Load Balancern wie HANA DB und SAP ASCS/ERS.
- Konfiguration eines VPC-DNS-Dienstes, der für die Zuordnung des ALB-FQDN zu den virtuellen Hostnamen SAP ASCS/ERS und HANA verwendet wird.
- Konfigurieren von sieben Dateifreigaben für VPC.
Die Ansible Skripte, die für die Bereitstellung enthalten sind, sind:
- Installation und Konfiguration der Betriebssystemanforderungen für SAP Anwendungen.
- Installation der Cluster-Komponenten
- Ansible skripte für die Konfiguration von SAP Anwendungsclustern und SAP HANA Clusterkonfiguration.
- HANA-Installation
- HANA DB-Sicherung
- Konfiguration der HANA-Systemreplik
- Installation von ASCS- und ERS-Instanzen
- DB-Last
- Installation von primären und zusätzlichen Anwendungsservern
Für die CLI-Bereitstellung wird Ansible von Terraform gestartet und beide müssen auf demselben Host (Bastion-Server) verfügbar sein.
SAP-Kits
Es liegt in Ihrer Verantwortung, die erforderlichen SAP und DB-Kits auf Ihren Deployment Server (Bastion Server) herunterzuladen. Alle Dateiarchive werden von Ansible während der automatischen Bereitstellung dekomprimiert. Weitere Informationen finden Sie in der Readme-Datei.
Übersicht über die Terraform-Bereitstellung
Die Automatisierungsskripte aus dem GitHub Repository können durch Ausführen der Terraform-Skripte in der CLI vom Bastion-Server (Deployment-Server) aus ausgeführt werden.
Bearbeiten Sie die Eingabeparameterdatei input.auto.tfvars
, und passen Sie die Variablen an Ihre Lösung an:
- VPC - Ein vorhandener VPC-Name
- REGION - Region für die VSI
- DOMAIN_NAME - Private Domain, die von der Außenwelt nicht erreicht werden kann
- ZONE_1- Verfügbarkeitszone für DB_HOSTNAME_1 und APP_HOSTNAME_1 VSI
- ZONE_2- Verfügbarkeitszone für DB_HOSTNAME_2 und APP_HOSTNAME_2VSIs
- SECURITY_GROUP - Vorhandene Sicherheitsgruppe, die zuvor vom Benutzer in derselben VPC erstellt wurde.
- SUBNET_1- Der Name eines bestehenden Subnetzes in derselben VPC, ZONE_1, in dem DB_HOSTNAME_1 und APP_HOSTNAME_1 VSI erstellt werden.
- SUBNET_2- Der Name eines bestehenden Subnetzes in derselben VPC, ZONE_2, in dem DB_HOSTNAME_2 und APP_HOSTNAME_2 VSI erstellt werden.
- RESOURCE_GROUP - Vorhandene Ressourcengruppe, die zuvor vom Benutzer erstellt wurde.
- SSH_KEYS - Liste der SSH-Schlüssel-UUIDs, die für SSH als
root
zu den VSI zugelassen sind. - ID_RSA_FILE_PATH -
id_rsa
Dateipfad des privaten Schlüssels im Format OpenSSH mit 0600 Berechtigungen - APP_HOSTNAME_1/ APP_HOSTNAME_2/DB_HOSTNAME_1/ DB_HOSTNAME_2- Geben Sie einen Hostnamen mit bis zu 12 Zeichen ein. Weitere Informationen finden Sie in der Readme-Datei.
- DB_PROFILE/APP_PROFILE - Das für den HANA/APP VSI verwendete Instanzprofil
- DB_IMAGE/APP_IMAGE - Betriebssystem-Image für DB/APP VSI
Schematics einsatzübersicht
Schematics benutzeroberfläche auf der Website IBM Cloud verwendet wird. Geben Sie das Repository GitHub für SAP S/4HANA Hochverfügbarkeit in einer einzigen Zone Schematics ein.
Wenn Sie die Skripte über die Schnittstelle Schematics ausführen, können Sie:
- Geben Sie Informationen zum Arbeitsbereich ein.
- Geben Sie den GitHub Pfad für die verwendeten Terraform-Skripte ein.
- Ändern Sie die Parameter in der Schnittstelle Schematics.
Bereitstellung von Katalogkacheln
Wenn Sie die Katalogkachel für die Verteilung verwenden, können Sie:
- Wählen Sie die Kachel SAP S/4HANA High Availability on Single Zone aus dem Katalog.
- Geben Sie die Informationen zu Ihrem Arbeitsbereich ein. Die Katalogkachel erstellt einen Arbeitsbereich Schematics.
- Ändern Sie die Parameter für Ihren Bastion-Server, die persönlichen Anmeldeinformationen und andere für Ihre Lösung spezifische Parameter.
Unterstützung - Terraform und Schematics
Es gibt keine Garantien jeglicher Art, und es gibt keinen Service oder technischen Support für diese Materialien von IBM. Es wird empfohlen, alle Materialien, die Sie von dieser Website herunterladen, sorgfältig zu prüfen, bevor Sie sie auf einem aktiven System verwenden.
Obwohl die hier zur Verfügung gestellten Materialien nicht von der IBM Service-Organisation unterstützt werden, werden Ihre Kommentare von den Entwicklern begrüßt, die sich das Recht vorbehalten, die Materialien jederzeit zu überarbeiten, neu anzupassen oder zu entfernen. Um ein Problem zu melden, oder Vorschläge oder Kommentare abzugeben, öffnen Sie eine GitHub-Ausgabe.
Unterstützung - Katalogkachel
Das Angebot an Katalogkacheln wird von IBM Cloud unterstützt. Weitere Informationen finden Sie unter Hilfe und Support von IBM Cloud oder SAP.
Wenn Kunden Probleme mit der Software SAP haben, hilft der Support von SAP dem Kunden. Befolgen Sie die Empfehlungen in SAP Hinweis 90835, der das SAP Verfahren zur Eskalation von Vorfällen beschreibt. Diesen SAP-Hinweis (und andere) finden Sie unter https://support.sap.com/en/index.html
Vorbereitende Schritte
Bevor Sie SAP S/4HANA High Availability auf Single Zone oder Multi Zone einsetzen:
- Die Automatisierung für diese Bereitstellung erfordert IBM Cloud File Storage for VPC, um erfolgreich abgeschlossen zu werden. IBM Cloud File Storage for VPC ist für Kunden mit Sondergenehmigung verfügbar, um diesen Service in den Regionen Frankfurt, London, Dallas, Toronto, Washington, Sao Paulo, Sydney, Osaka und Tokio zu testen. Kontaktieren Sie Ihren IBM Vertriebsmitarbeiter, um Zugang zu erhalten. Für weitere Informationen siehe IBM Cloud File Storage for VPC.
- Richten Sie Ihr Konto für den Zugriff auf die VPC ein. Stellen Sie sicher, dass Ihr Konto auf ein gebührenpflichtiges Konto hochgestuft ist.
- Erstellen Sie, falls noch nicht geschehen, einen Bastionsserver zum Speichern der SAP-Kits. Weitere Informationen finden Sie unter SAP Bastionsserver automatisieren – SAP Media Storage Repository.
- Laden Sie die SAP-Kits vom SAP Portal auf Ihren Deployment Server herunter. Notieren Sie sich die heruntergeladenen Speicherorte. Ansible dekomprimiert die Dateien. Weitere Informationen finden Sie in der Readme-Datei im Repository GitHub und auf der Info-Seite für die Katalogkachel.
- Erstellen Sie einen IBM Cloud API-Schlüsseloder rufen Sie ihn ab. Der API-Schlüssel wird verwendet, um sich bei der Plattform IBM Cloud zu authentifizieren und um Ihre Berechtigungen für die Dienste von IBM Cloud zu bestimmen.
- SSH-Schlüssel-ID erstellen oder abrufen. Sie benötigen die 40-stellige UUID für den SSH-Schlüssel, nicht den SSH-Schlüsselnamen.
- (Optional - Katalogkachel) erstellen Sie Geheimnisse für Ihre Anmeldeinformationen und Passwörter mit Hilfe der Option Secrets Manager.
Bereitstellung von SAP HA S/4HANA unter Verwendung von Terraform mit dem Bastion Server CLI
Führen Sie diese Schritte aus, um das IBM Cloud Provider Plug-in zu konfigurieren und Terraform zu verwenden, um SAP HA SZ oder MZ S/4HANA auf Ihrer bestehenden VPC zu installieren. Die Bearbeitung der Skripte kann bis zu 4 Stunden in Anspruch nehmen. Die unterstützten Versionen für S/4HANA sind 2020, 2021, 2022 und 2023. Weitere Informationen finden Sie in der Readme-Datei zu den empfohlenen Versionen der Kits.
-
Greifen Sie auf die Befehlszeilenschnittstelle des Bastionsservers zu.
-
Klonen Sie das Lösungs-Repository von
https://github.com/IBM-Cloud/sap-s4hana-ha
undcd
in den Ordnersap-s4hana-ha
.git clone https://github.com/IBM-Cloud/sap-s4hana-ha.git cd sap-s4hana-ha
-
Geben Sie Ihre VPC an. Ändern Sie die Datei
input.auto.tfvars
, um die Informationen für die vorhandene VPC, Ihre Zone, Ihre VPC und die Komponentennamen, das Profil und das Image anzugeben. Sie benötigen Ihre 40-stellige SSH-Schlüssel-ID für diese Datei. Der zweite SSH-Schlüssel ist optional. Weitere Optionen für das Profil finden Sie unter Instanzprofile. Weitere Optionen für Bilder finden Sie unter Bilder. Eine Beschreibung der Variablen finden Sie in der Readme-Datei.########################################################## # General VPC variables: ########################################################## REGION = "" # The cloud region where to deploy the solution. Supported regions: https://cloud.ibm.com/docs/containers?topic=containers-regions-and-zones#zones-vpc # Example: REGION = "eu-de" DOMAIN_NAME = "ha.mzexample.com" # The DOMAIN_NAME variable should contain at least one "." as a separator. It is a private domain and it is not reacheable to and from the outside world. # The DOMAIN_NAME variable could be like a subdomain name. Ex.: staging.example.com # Domain names can only use letters, numbers, and hyphens. # Hyphens cannot be used at the beginning or end of the domain name. # You can't use a domain name that is already in use. # Domain names are not case sensitive. ASCS_VIRT_HOSTNAME = "sapascs" # ASCS Virtual Hostname # Default value: sapascs # When the default value is used, the virtual hostname will automatically be changed based on <SAP_SID> to "sap<sap_sid>ascs" ERS_VIRT_HOSTNAME = "sapers" # ERS Virtual Hostname # Default value: sapers # When the default value is used, the virtual hostname will automatically be changed based on <SAP_SID> to "sap<sap_sid>ers" HANA_VIRT_HOSTNAME = "dbhana" # Hana Virtual Hostname # Default value: dbhana # When the default value is used, the virtual hostname will automatically be changed based on <SAP_SID> to "db<hana_sid>hana" VPC = "" # The name of an EXISTING VPC. Must be in the same region as the solution to be deployed. The list of VPCs is available here: https://cloud.ibm.com/infrastructure/network/vpcs. # Example: VPC = "ic4sap" ZONE_1 = "" # Availability zone for DB_HOSTNAME_1 and APP_HOSTNAME_1 VSIs, in the same VPC. Supported zones: https://cloud.ibm.com/docs/containers?topic=containers-regions-and-zones#zones-vpc # Example: ZONE = "eu-de-1" SUBNET_1 = "" # The name of an EXISTING Subnet, in the same VPC, ZONE_1, where DB_HOSTNAME_1 and APP_HOSTNAME_1 VSIs will be created. The list of Subnets is available here: https://cloud.ibm.com/infrastructure/network/subnets # Example: SUBNET = "ic4sap-subnet_1" ZONE_2 = "" # Availability zone for DB_HOSTNAME_2 and APP_HOSTNAME_2 VSIs, in the same VPC. Supported zones: https://cloud.ibm.com/docs/containers?topic=containers-regions-and-zones#zones-vpc. # If the same value as for ZONE_1 is used, and the value for SUBNET_1 is the same with the value for SUBNET_2, the deployment will be done in a single zone. If the values for ZONE_1, SUBNET_1 are different than the ones for ZONE_2, SUBNET_2 then an SAP Multizone deployment will be done. # Example: ZONE = "eu-de-2" SUBNET_2 = "" # The name of an EXISTING Subnet, in the same VPC, ZONE_2, where DB_HOSTNAME_2 and APP_HOSTNAME_2 VSIs will be created. The list of Subnets is available here: https://cloud.ibm.com/infrastructure/network/subnets. # If the same value as for SUBNET_1 is used, and the value for ZONE_1 is the same with the value for ZONE_2, the deployment will be done in a single zone. If the values for ZONE_1, SUBNET_1 are different than the ones for ZONE_2, SUBNET_2 then it an SAP Multizone deployment will be done. # Example: SUBNET = "ic4sap-subnet_2" SECURITY_GROUP = "" # The name of an EXISTING Security group for the same VPC. It can be found at the end of the Bastion Server deployment log, in \"Outputs\", before \"Command finished successfully\" message. The list of Security Groups is available here: https://cloud.ibm.com/infrastructure/network/securityGroups. # Example: SECURITY_GROUP = "ic4sap-securitygroup" RESOURCE_GROUP = "" # EXISTING Resource group, previously created by the user. The list of available Resource Groups: https://cloud.ibm.com/account/resource-groups # Example: RESOURCE_GROUP = "wes-automation" SSH_KEYS = [""] # List of SSH Keys UUIDs that are allowed to connect via SSH, as root, to the VSI. Can contain one or more IDs. The list of SSH Keys is available here: https://cloud.ibm.com/infrastructure/compute/sshKeys. # Example: SSH_KEYS = ["r010-8f72b994-c17f-4500-af8f-d05680374t3c", "r011-8f72v884-c17f-4500-af8f-d05900374t3c"] ID_RSA_FILE_PATH = "ansible/id_rsa" # The path to an existing id_rsa private key file, with 0600 permissions. The private key must be in OpenSSH format. # This private key is used only during the provisioning and it is recommended to be changed after the SAP deployment. # It must contain the relative or absoute path from your Bastion. # Examples: "ansible/id_rsa_s4hana_ha" , "~/.ssh/id_rsa_s4hana_ha" , "/root/.ssh/id_rsa". ########################################################## # File Shares variables: ########################################################## SHARE_PROFILE = "dp2" # The Storage Profile for the File Share # More details on https://cloud.ibm.com/docs/vpc?topic=vpc-file-storage-profiles&interface=ui#dp2-profile." USRSAP_AS1 = "20" USRSAP_AS2 = "20" USRSAP_SAPASCS = "20" USRSAP_SAPERS = "20" USRSAP_SAPMNT = "20" USRSAP_SAPSYS = "20" USRSAP_TRANS = "80" # Default File shares sizes: ########################################################## # DB VSI variables: ########################################################## DB_HOSTNAME_1 = "hanadb-1" # HANA DB VSI HOSTNAME 1 in SAP HANA Cluster. The hostname should be up to 13 characters, as required by SAP # Default value: "hanadb-1" # When the default value is used, the virtual hostname will automatically be changed based on <HANA_SID> to "hanadb-<hana_sid>-1" DB_HOSTNAME_2 = "hanadb-2" # HANA DB VSI HOSTNAME 2 in SAP HANA Cluster. The hostname should be up to 13 characters, as required by SAP # Default value: "hanadb-2" # When the default value is used, the virtual hostname will automatically be changed based on <HANA_SID> to "hanadb-<hana_sid>-2" DB_PROFILE = "mx2-16x128" # The instance profile used for the HANA VSI. The list of certified profiles for HANA VSIs: https://cloud.ibm.com/docs/sap?topic=sap-hana-iaas-offerings-profiles-intel-vs-vpc # Details about all x86 instance profiles: https://cloud.ibm.com/docs/vpc?topic=vpc-profiles). # For more information about supported DB/OS and IBM Gen 2 Virtual Server Instances (VSI), check [SAP Note 2927211: SAP Applications on IBM Virtual Private Cloud](https://me.sap.com/notes/2927211){: external} # Default value: "mx2-16x128" DB_IMAGE = "ibm-redhat-8-6-amd64-sap-hana-6" # OS image for DB VSI. OS images validated for DB VSIs: ibm-redhat-8-6-amd64-sap-hana-6, ibm-redhat-8-4-amd64-sap-hana-10 # The list of available VPC Operating Systems supported by SAP: SAP note '2927211 - SAP Applications on IBM Virtual Private Cloud (VPC) Infrastructure environment' https://me.sap.com/notes/2927211; The list of all available OS images: https://cloud.ibm.com/docs/vpc?topic=vpc-about-images # Example: DB_IMAGE = "ibm-redhat-8-4-amd64-sap-hana-10" ########################################################## # SAP APP VSI variables: ########################################################## APP_HOSTNAME_1 = "sapapp-1" # APP VSI HOSTNAME 1 in SAP APP Cluster. The hostname should be up to 13 characters. # Default value: "sapapp-1" # When the default value is used, the virtual hostname will automatically be changed based on <SAP_SID> to "sapapp-<sap_sid>-1" APP_HOSTNAME_2 = "sapapp-2" # APP VSI HOSTNAME 2 in SAP APP Cluster. The hostname should be up to 13 characters. # Default value: "sapapp-2" # When the default value is used, the virtual hostname will automatically be changed based on <SAP_SID> to "sapapp-<sap_sid>-2" APP_PROFILE = "bx2-4x16" # The APP VSI profile. Supported profiles: bx2-4x16. The list of available profiles: https://cloud.ibm.com/docs/vpc?topic=vpc-profiles&interface=ui APP_IMAGE = "ibm-redhat-8-6-amd64-sap-hana-6" # OS image for SAP APP VSI. OS images validated for APP VSIs: ibm-redhat-8-6-amd64-sap-hana-6, ibm-redhat-8-4-amd64-sap-hana-10. # The list of available VPC Operating Systems supported by SAP: SAP note '2927211 - SAP Applications on IBM Virtual Private Cloud (VPC) Infrastructure environment' https://me.sap.com/notes/2927211; The list of all available OS images: https://cloud.ibm.com/docs/vpc?topic=vpc-about-images # Example: APP_IMAGE = "ibm-redhat-8-4-amd64-sap-hana-10"
-
Passen Sie Ihre SAP-Systemkonfiguration an. Bearbeiten Sie in derselben Datei
input.auto.tfvars
die Systemkonfigurationsvariablen SAP, die an die automatische Bereitstellung Ansible übergeben werden. Eine Beschreibung der Variablen finden Sie in der Readme-Datei.########################################################## # S/4HANA version ########################################################## S4HANA_VERSION = "2023" # The version of S/4HANA. Supported values: 2023, 2022, 2021, 2020. # Example: S4HANA_VERSION = "2022" ########################################################## # SAP HANA configuration ########################################################## HANA_SID = "HDB" # SAP HANA system ID. Should follow the SAP rules for SID naming. # Obs. This will be used also as identification number across different HA name resources. Duplicates are not allowed. # Example: HANA_SID = "HDB" HANA_SYSNO = "00" # SAP HANA instance number. Should follow the SAP rules for instance number naming. # Example: HANA_SYSNO = "00" HANA_SYSTEM_USAGE = "custom" # System usage. Default: custom. Suported values: production, test, development, custom # Example: HANA_SYSTEM_USAGE = "custom" HANA_COMPONENTS = "server" # SAP HANA Components. Default: server. Supported values: all, client, es, ets, lcapps, server, smartda, streaming, rdsync, xs, studio, afl, sca, sop, eml, rme, rtl, trp # Example: HANA_COMPONENTS = "server" KIT_SAPHANA_FILE = "/storage/HANADB/51057281.ZIP" # SAP HANA Installation kit path # Validated SAP HANA versions for S/4HANA 2023 on Red Hat 8: HANA 2.0 SP 7 Rev 73, kit file: 51057281.ZIP # Validated SAP HANA versions for S/4HANA 2022, 2021, 2020 on Red Hat 8: HANA 2.0 SP 5 Rev 57, kit file: 51056441.ZIP # Example for Red Hat 8: KIT_SAPHANA_FILE = "/storage/HANADB/51056441.ZIP" ########################################################## # SAP system configuration ########################################################## SAP_SID= "S4A" # SAP System ID # Obs. This will be used also as identification number across different HA name resources. Duplicates are not allowed. SAP_ASCS_INSTANCE_NUMBER = "00" # The central ABAP service instance number. Should follow the SAP rules for instance number naming. # Example: SAP_ASCS_INSTANCE_NUMBER = "00" SAP_ERS_INSTANCE_NUMBER = "01" # The enqueue replication server instance number. Should follow the SAP rules for instance number naming. # Example: SAP_ERS_INSTANCE_NUMBER = "01" SAP_CI_INSTANCE_NUMBER = "10" # The primary application server instance number. Should follow the SAP rules for instance number naming. # Example: SAP_CI_INSTANCE_NUMBER = "10" SAP_AAS_INSTANCE_NUMBER = "20" # The additional application server instance number. Should follow the SAP rules for instance number naming. # Example: SAP_AAS_INSTANCE_NUMBER = "20" HDB_CONCURRENT_JOBS = "23" # Number of concurrent jobs used to load and/or extract archives to HANA Host ########################################################## # SAP S/4HANA APP Kit Paths ########################################################## KIT_SAPCAR_FILE = "/storage/S4HANA/SAPCAR_1010-70006178.EXE" KIT_SWPM_FILE = "/storage/S4HANA/SWPM20SP17_0-80003424.SAR" KIT_SAPEXE_FILE = "/storage/S4HANA/KERNEL/793/SAPEXE_60-70007807.SAR" KIT_SAPEXEDB_FILE = "/storage/S4HANA/KERNEL/793/SAPEXEDB_60-70007806.SAR" KIT_IGSEXE_FILE = "/storage/S4HANA/KERNEL/793/igsexe_4-70005417.sar" KIT_IGSHELPER_FILE = "/storage/S4HANA/igshelper_17-10010245.sar" KIT_SAPHOSTAGENT_FILE = "/storage/S4HANA/SAPHOSTAGENT61_61-80004822.SAR" KIT_HDBCLIENT_FILE = "/storage/S4HANA/IMDB_CLIENT20_018_27-80002082.SAR" KIT_S4HANA_EXPORT = "/storage/S4HANA/2023"
Ansible dekomprimiert die übrigen SAP-Kitdateien. Weitere Informationen finden Sie in der Readme-Datei.
-
Terraform-Befehlszeilenschnittstelle initialisieren.
terraform init
-
Erstellen Sie einen Terraform-Ausführungsplan. Der Terraform-Ausführungsplan fasst alle Aktionen zusammen, die ausgeführt werden müssen, um die virtuelle private Cloud-Serviceinstanz in Ihrem Konto zu erstellen.
terraform plan --out plan1
Sie werden nach den folgenden sensiblen Variablen gefragt:
'IBMCLOUD_API_KEY', 'SAP_MAIN_PASSWORD' HANA_MAIN_PASSWORD, and 'HA_PASSWORD'
.Das Hauptpasswort SAP muss 10 - 14 Zeichen lang sein und mindestens eine Ziffer (0-9) enthalten. Es darf nur die folgenden Zeichen enthalten: a–z, A–Z, 0–9, @, #, $, . Dieses Kennwort darf nicht
!
enthalten. Es darf nicht mit einer Ziffer oder einem Unterstreichungszeichen () beginnen. -
Stellen Sie sicher, dass der Plan alle Ressourcen anzeigt, die Sie erstellen möchten, und dass die Namen und Werte korrekt sind. Wenn der Plan angepasst werden muss, bearbeiten Sie die Datei
input.auto.tfvars
, um die Ressourcen zu korrigieren, und führen Sieterraform plan
erneut aus. -
Erstellen Sie die Ressourcen IBM Cloud für das System S/4HANA HA und installieren Sie das System SAP.
terraform apply "plan1"
Die virtuelle private Cloud und Komponenten werden erstellt und es wird eine Ausgabe ähnlich der
terraform plan
-Ausgabe angezeigt.terraform destroy
In der Phase der Zerstörungsbestätigung werden Sie nach den folgenden sensiblen Variablen gefragt:
'IBMCLOUD_API_KEY', 'SAP_MAIN_PASSWORD' HANA_MAIN_PASSWORD, and 'HA_PASSWORD'
.
Bereitstellen von SAP S/4HANA Hochverfügbarkeit auf einer oder mehreren Zonen mit der Katalogkachelschnittstelle
Gehen Sie wie folgt vor, um SAP HA SZ oder MZ S/4HANA auf Ihrer bestehenden VPC mithilfe der Katalogkacheloberfläche zu konfigurieren. Die unterstützten Versionen von S/4HANA sind 2020, 2021, 2022 und 2023. Weitere Informationen finden Sie in der Readme-Datei für die empfohlenen Kits-Versionen. Die Bearbeitung der Skripte kann 2 bis 3 Stunden in Anspruch nehmen.
-
Wählen Sie im Katalog IBM Cloud die Kachel SAP S/4HANA Hochverfügbarkeit. Die Kachel öffnet die Registerkarte Erstellen für SAP HA S/4HANA. Weitere Informationen zu dieser Bereitstellung finden Sie auf der Registerkarte Info oder im Link zur Readme-Datei.
-
Auf der Seite SAP HA S/4HANA konfigurieren Sie Ihren Arbeitsbereich:
- Geben Sie einen Namen für den Arbeitsbereich ein oder verwenden Sie den Standardnamen.
- Wählen Sie die Ressourcengruppe aus, die Sie zum Erstellen von Ressourcen verwenden möchten. Verwenden Sie den Standard oder erstellen Sie eine Ressourcengruppe.
- Wählen Sie einen Standort, um Ihren Schematics Arbeitsbereich zu erstellen. Die Arbeitsbereichsposition muss nicht mit der Ressourcenposition übereinstimmen.
-
Geben Sie die erforderlichen Bereitstellungswerte ein, überprüfen Sie die Standard-Eingabevariablen und geben Sie Werte ein, die Ihrer Lösung entsprechen. Diese Parameter sind spezifisch für Ihren Einsatz. Weitere Informationen finden Sie in der Readme-Datei - Eingabeparameter.
Erforderliche Variablen Parameter Beschreibung APP_HOSTNAME_1 APP VSI HOSTNAME 1 in SAP APP Cluster. Der Hostname sollte bis zu 13 Zeichen lang sein. Beobachten: Wenn der Standardwert verwendet wird, wird der virtuelle Hostname automatisch auf der Grundlage von <SAP_SID>
insapapp-<sap_sid>-1
APP_HOSTNAME_2 APP VSI HOSTNAME 2 in SAP APP Cluster. Der Hostname sollte bis zu 13 Zeichen lang sein. Beobachten: Wenn der Standardwert verwendet wird, wird der virtuelle Hostname automatisch auf der Grundlage von <SAP_SID>
insapapp-<sap_sid>-2
BASTION_FLOATING_IP Geben Sie die schwebende IP des Bastion-Servers ein, den Sie vor dem Start dieser Bereitstellung erstellt haben. Weitere Informationen finden Sie unter Automatisieren SAP bastion server - SAP media storage repository. DB_HOSTNAME_1 HANA DB VSI HOSTNAME 1 in SAP HANA Cluster. Der Hostname sollte bis zu 13 Zeichen lang sein. Beobachten: Wenn der Standardwert verwendet wird, wird der virtuelle Hostname automatisch auf der Grundlage von <HANA_SID>
inhanadb-<hana_sid>-1
DB_HOSTNAME_2 HANA DB VSI HOSTNAME 2 in SAP HANA Cluster. Der Hostname sollte bis zu 13 Zeichen lang sein. Beobachten: Wenn der Standardwert verwendet wird, wird der virtuelle Hostname automatisch auf der Grundlage von <HANA_SID>
inhanadb-<hana_sid>-2
domain_name Der für DNS und ALB verwendete Domänenname. Duplikate sind nicht erlaubt. Die Liste mit DNS-Ressourcen finden Sie hier: https://cloud.ibm.com/resources. REGION Cloud Region, in der die Ressourcen bereitgestellt werden. resource_group Vorhandene Ressourcengruppe für VSIs und Volumes SECURITY_GROUP Bestehender Name der Sicherheitsgruppe SSH_KEYS SSH-Schlüssel-ID-Liste für den Zugriff auf den VSI. Teilnetz Bestehender Subnetzname VPC Vorhandener VPC-Name Zone Cloud-Zone, in der die Ressourcen bereitgestellt werden. HA_PASSWORT HA-Cluster-Passwort HANA_KOMPONENTEN HANA-Komponenten, zum Beispiel Server HANA_HAUPT_KENNWORT HANA-Hauptpasswort oder verwenden Sie ein Geheimnis, das in Secrets Manager gespeichert ist. HANA_SID HANA sid ibmcloud_api_key IBM Cloud API-Schlüssel oder verwenden Sie ein Geheimnis, das in Secrets Manager gespeichert ist. private_ssh_key Geben Sie den Inhalt des privaten Schlüssels id_rsa ein oder verwenden Sie ein Geheimnis, das in Secrets Manager gespeichert ist. SAP_MAIN_PASSWORD SAP hauptpasswort oder verwenden Sie ein Geheimnis, das in Secrets Manager gespeichert ist. SAP_SID SAP sid -
Überprüfen und aktualisieren Sie die optionalen Parameter. Die Ansible Skripte erwarten, dass sich die SAP Kits an den aufgeführten Standardorten befinden. Weitere Informationen finden Sie in der Readme-Datei - Eingabeparameter.
Optionale Variablen Parameter Beschreibung APP_IMAGE APP VSI OS image APP_PROFIL APP VSI-Profil ASCS_VIRT_HOSTNAME ASCS Virtueller Hostname DB_IMAGE DB VSI OS image DB_PROFILE DB VSI-Profil ERS_VIRT_HOSTNAME ERS Virtueller Hostname HANA_VIRT_HOSTNAME HANA Virtueller Hostname HANA_SYSNO Die Instanznummer des Systems SAP HANA. HANA_SYSTEM_VERWENDUNG Systemverwendung. Standard: "benutzerdefiniert". Gültige Werte: "Produktion", "Test", "Entwicklung", "Benutzerdefiniert". HDB_CONCURRENT_JOBS Anzahl der gleichzeitigen Aufträge, die zum Laden und/oder Extrahieren von Archiven in den HANA-Host verwendet werden. KIT_HDBCLIENT_FILE Pfad zum HANA DB-Client-Archiv (SAR), wie es vom SAP Support Portal heruntergeladen wurde. KIT_IGSEXE_FILE Pfad zum IGS-Archiv (SAR), wie vom SAP Support Portal heruntergeladen. KIT_IGSHELPER_FILE Pfad zum IGS Helper-Archiv (SAR), wie es vom SAP Support Portal heruntergeladen wurde. KIT_S4HANA_EXPORT Pfad zu S/4HANA Installation Exportverzeichnis. Die Archive, die vom SAP Support Portal heruntergeladen werden, sollten sich in diesem Pfad befinden. KIT_SAPCAR_FILE Pfad zur sapcar-Binärdatei, wie sie vom SAP Support Portal heruntergeladen wurde. KIT_SAPEXE_FILE Pfad zum SAP Kernel OS-Archiv (SAR), das vom SAP Support Portal heruntergeladen wurde. KIT_SAPEXEDB_FILE Pfad zum SAP Kernel DB-Archiv (SAR), das vom SAP Support Portal heruntergeladen wurde. KIT_SAPHANA_FILE Pfad zur SAP HANA ZIP-Datei, die vom SAP Support Portal heruntergeladen wurde. KIT_SAPHOSTAGENT_FILE Pfad zum SAP Host-Agent-Archiv (SAR), das vom SAP Support Portal heruntergeladen wurde. KIT_SWPM_FILE Pfad zum SWPM-Archiv (SAR), wie vom SAP Support Portal heruntergeladen. SAP_AAS_INSTANCE_NUMBER Die zusätzliche Instanznummer des Anwendungsservers SAP. Technische Kennung für interne Prozesse der ÖAW. Besteht aus einer zweistelligen Zahl von 00 bis 97. Muss auf einem Host eindeutig sein. Muss den SAP Regeln für die Benennung von Instanznummern folgen. SAP_ASCS_INSTANCE_NUMBER Die Nummer der zentralen ABAP-Service-Instanz. Technische Kennung für interne Prozesse von ASCS. Besteht aus einer zweistelligen Zahl von 00 bis 97. Muss auf einem Host eindeutig sein. Muss den SAP Regeln für die Benennung von Instanznummern folgen. SAP_CI_INSTANCE_NUMBER Die zentrale Instanznummer SAP. Technische Kennung für interne Prozesse von PAS. Besteht aus einer zweistelligen Zahl von 00 bis 97. Muss auf einem Host eindeutig sein. Sie müssen die Regeln von SAP befolgen, z. B. bei der Benennung von Zahlen. SAP_ERS_INSTANCE_NUMBER Die Instanznummer des Enqueue-Replikationsservers. Technische Kennung für interne Prozesse des ERS. Besteht aus einer zweistelligen Zahl von 00 bis 97. Muss auf einem Host eindeutig sein. Sie müssen die Regeln von SAP befolgen, z. B. bei der Benennung von Zahlen. AKTIEN_PROFIL Geben Sie die IOPs (IOPS pro GB) für den File Share Speicher ein. Gültige Werte sind 3, 5 und 10. S4HANA_VERSION Die Version von S/4HANA. Unterstützte Werte: 2023, 2022, 2021 und 2020. USRSAP_AS1 FS-Größe in GB für usrsap-as1 USRSAP_AS2 FS-Größe in GB für usrsap-as2 USRSAP_SAPASCS FS-Größe in GB für usrsap-sapascs USRSAP_SAPERS FS-Größe in GB für usrsap-sapers USRSAP_SAPMNT FS-Größe in GB für usrsap-mnt USRSAP_SAPSYS FS-Größe in GB für usrsap-sapsys USRSAP_TRANS FS-Größe in GB für usrsap-trans -
Akzeptieren Sie die Lizenzvereinbarung.
-
Wählen Sie Installieren. Die Bereitstellung beginnt und Sie werden zur Seite Schematics weitergeleitet, auf der die Skriptprotokolldateien angezeigt werden, damit Sie den Fortschritt der Bereitstellung überwachen können.
Bereitstellung von SAP S/4HANA Hochverfügbarkeit auf einer einzelnen Zone mit der Schnittstelle Schematics
Führen Sie die folgenden Schritte aus, um die SAP S/4HANA Hochverfügbarkeit auf einer einzelnen Zone in Ihrer bestehenden VPC über die Schnittstelle Schematics zu konfigurieren. Die Bearbeitung der Skripte kann 2 bis 3 Stunden in Anspruch nehmen. Die unterstützten Versionen für S/4HANA sind 2020, 2021, 2022 und 2023. Weitere Informationen finden Sie in der Readme-Datei zu den empfohlenen Versionen der Kits.
-
Wählen Sie im Menü IBM Cloud Schematics.
-
Klicken Sie auf Arbeitsbereich erstellen.
-
Gehen Sie auf der Seite Vorlage angeben wie folgt vor:
- Geben Sie das Repository GitHub URL ein, das den Code Schematics für dieses Angebot enthält.
- Wählen Sie Terraform-Version aus.
- Klicken Sie auf Weiter.
-
Gehen Sie auf der Seite Arbeitsbereichsdetails wie folgt vor:
- Geben Sie einen Namen für den Arbeitsbereich ein.
- Wählen Sie eine Ressourcengruppe aus.
- Wählen Sie eine Position für Ihren Arbeitsbereich aus. Die Arbeitsbereichsposition muss nicht mit der Ressourcenposition übereinstimmen.
- Wählen Sie Weiter aus.
-
Wählen Sie Erstellen aus, um Ihren Arbeitsbereich zu erstellen.
-
Überprüfen Sie auf der Seite Einstellungen des Arbeitsbereichs im Abschnitt Eingabevariablen die Standard-Eingabevariablen und geben Sie Werte ein, die Ihrer Lösung entsprechen.
Eine detailliertere Beschreibung der einzelnen Parameter finden Sie in der Readme-Datei des GitHub Repo, Kapitel "Input parameter file". Stellen Sie außerdem sicher, dass die Parameter, die sensible Informationen wie Kennwörter, API und private ssh-Schlüssel enthalten, als "sensibel" gekennzeichnet sind. Diese Parameter sind in der Readme-Datei unter "Eingabeparameterdatei" als "sensibel" gekennzeichnet.
Speichern Sie jeden Parameter, den Sie ändern.
-
Klicken Sie auf der Seite "Einstellungen" des Arbeitsbereichs auf Plan generieren. Warten Sie, bis der Plan ausgeführt wurde.
-
Klicken Sie auf Protokoll anzeigen, um die Protokolldateien des Terraform-Ausführungsplans zu überprüfen.
-
Wenden Sie die Terraform-Vorlage durch Klicken auf Plan anwenden an.
-
Überprüfen Sie die Protokolldatei, um sicherzustellen, dass während des Bereitstellungs-, Änderungs- oder Löschprozesses keine Fehler aufgetreten sind.
Nächste Schritte
Wenn Sie die Installation von SAP HA S/4HANA entfernen müssen, gehen Sie zu Ihrem Projektordner und führen Sie terraform destroy
aus. Der Befehl terraform destroy
entfernt die VPC in diesem Szenario nicht, da die VPC
nicht mit demselben Terraform-Skript erstellt wurde.