Buch lesen: «Praxishandbuch SAP Cloud Platform Integration»
Adam Kiwon
Praxishandbuch SAP® Cloud Platform Integration
Adam Kiwon
Praxishandbuch SAP® Cloud Platform Integration
ISBN:978-3-9601-2978-3 (E-Book)
Lektorat:Die Korrekturstube
Korrektorat:Johann-Christian Hanke
Coverdesign:Philip Esch
Coverfoto:© artisteer | Nr. 1160813252 istockphoto.com
Satz & Layout:Johann-Christian Hanke (E-Book)
1. Auflage 2020
© Espresso Tutorials GmbH, Gleichen 2020
URL: www.espresso-tutorials.de
Das vorliegende Werk ist in allen seinen Teilen urheberrechtlich geschützt. Alle Rechte sind vorbehalten, insbesondere das Recht der Übersetzung, des Vortrags, der Reproduktion und der Vervielfältigung. Espresso Tutorials GmbH, Bahnhofstr. 2, 37130 Gleichen, Deutschland.
Ungeachtet der Sorgfalt, die auf die Erstellung von Text und Abbildungen verwendet wurde, können weder der Verlag noch die Autoren oder Herausgeber für mögliche Fehler und deren Folgen eine juristische Verantwortung oder Haftung übernehmen.
Feedback: Wir freuen uns über Fragen und Anmerkungen jeglicher Art. Bitte senden Sie diese an: info@espresso-tutorials.com.
Inhaltsverzeichnis
Cover
Titelseite
Copyright / Imprint
Vorwort
1 Schnittstellenplattformen
2 SAP Cloud Platform
2.1 Integration Platform as a Service
2.2 Bereitstellungsoptionen
2.3 Data Services und Process Integration
2.4 Account Cockpit
2.5 SAP CPI Onboarding
3 Schnittstellenentwicklung mit SAP CPI
3.1 Architektur
3.2 Integration Content
3.3 Entwicklungsprozess
3.4 Modularisierung
3.5 Fehlerbehandlung
3.6 Transportwesen
3.7 Sicherheit
3.8 Qualität und Integration Excellence
4 Integration Patterns
4.1 Events
4.2 Connectivity
4.3 Transformationen
4.4 Calls
4.5 Routings
4.6 Persistenz
4.7 Message Security
4.8 Laufzeitvariablen
5 Beispielszenario
5.1 Überblick
5.2 Umsetzung
5.3 Implementierung einer Variante
6 Standard Integration Content
6.1 Schnittstellen konfigurieren
6.2 Aktualisierungskonzept
6.3 Erweiterungskonzept
7 Monitoring und Betrieb
7.1 Nachrichten und Artefakte
7.2 Alerting
7.3 Zertifikate und Identitäten
7.4 Speicher
7.5 Logs und Traces
7.6 Eclipse
7.7 SAP Solution Manager und Focused Run
7.8 SAP Cloud ALM
8 Spezialthemen
8.1 B2B Add-on
8.2 Partner Directory
8.3 Integration Advisor
8.4 Lokales Deployment
8.5 API Management
8.6 Enterprise Messaging
8.7 Open Connectors
8.8 Workflow und Business Rules
8.9 SAP-Partner-Add-ons
9 Zusammenfassung und Ausblick
A Der Autor
B Disclaimer
Weitere Bücher von Espresso Tutorials
Willkommen bei Espresso Tutorials!
Unser Ziel ist es, SAP-Wissen wie einen Espresso zu servieren: Auf das Wesentliche verdichtete Informationen anstelle langatmiger Kompendien – für ein effektives Lernen an konkreten Fallbeispielen. Viele unserer Bücher enthalten zusätzlich Videos, mit denen Sie Schritt für Schritt die vermittelten Inhalte nachvollziehen können. Besuchen Sie unseren YouTube-Kanal mit einer umfangreichen Auswahl frei zugänglicher Videos: https://www.youtube.com/user/EspressoTutorials.
Kennen Sie schon unser Forum? Hier erhalten Sie stets aktuelle Informationen zu Entwicklungen der SAP-Software, Hilfe zu Ihren Fragen und die Gelegenheit, mit anderen Anwendern zu diskutieren: http://www.fico-forum.de.
Eine Auswahl weiterer Bücher von Espresso Tutorials:
Maximilian Rupp, Alexander Rupp:Praxishandbuch SAP® UI5 – Von der Idee zur App
Christoph Lordieck:Praxishandbuch BOPF – das Business Object Processing Framework
Sebastian Abshoff:Mobile Apps mit den SAP® Cloud Platform Mobile Services
Johannes Gerbershagen:Qualitätsmanagement in der ABAP-Entwicklung unter SAP®
Johannes Gerbershagen:SAP-Praxishandbuch ABAP Core Data Services (CDS)
Tobias Steckenborn:Schnelleinstieg in SAP® Cloud Platform Workflow
Vorwort
Dieses Praxishandbuch vermittelt Ihnen die Grundlagen der Modellierung von Schnittstellen mit SAP Cloud Platform Integration (SAP CPI). Ein zentraler Aspekt ist dabei die Vermittlung von Kenntnissen, wie die Integration zwischen Anwendungen, Systemen, Partnern und Behörden in der Cloud bzw. in hybriden Umgebungen erfolgen sollte und wie Schnittstellen sicher betrieben werden können. Es erläutert Ihnen die verwandten Integrationskomponenten der seit 2012 existierenden Integrationsplattform und beschreibt Szenarien für deren Koexistenz. Zudem soll es Experten als nützliches Nachschlagewerk zu detaillierten Funktionsweisen der einzelnen Integration Patterns dienen.
Kapitel 2 beschreibt Ihnen die Integrationsplattform der SAP und setzt SAP CPI in den Kontext zu anderen Technologien, die für eine Cloud sowie hybride Architekturen verwendet werden können und jeweils spezielle Funktionen bereitstellen, die eine konkrete Integrationsanforderung erfüllen.
Kapitel 3 stellt Ihnen die Grundlagen für ein robustes Schnittstellendesign bzw. die Entwicklung von Schnittstellen (Integration Content) mit SAP CPI vor und erläutert Ihnen die Zusammenhänge.
In Kapitel 4 werden die verschiedenen Integration Patterns, die für die Entwicklung des Integration Content benötigt werden, mit ihrer jeweiligen Funktionsweise anhand von Beispielen aufgelistet.
Kapitel 5 vertieft das in Kapitel 4 erworbene Wissen in einem Praxisbeispiel, das Sie Schritt für Schritt in Ihrem eigenen SAP-CPI-Tenant umsetzen können.
Leser, die sich nur für die Verwendung des Standard-Contents interessieren, können gleich zu den Kapiteln 6 und 7 springen, in denen die Konfiguration vorhandener Integration Packages und der Betrieb (Monitoring) von Schnittstellen in der Cloud beschrieben werden.
Den Abschluss bildet Kapitel 9 mit einer Ergänzung zu speziellen Integrationsthemen, die auf dem erlernten Wissen aufbauen.
SAP-Begriffe Deutsch/Englisch
Im Verlauf des Buches werden sowohl deutsche als auch englische Begriffe verwendet. Dies liegt zum einen daran, dass nicht jeder englische Begriff in seiner deutschen Übersetzung in der Praxis verwendet wird. So spricht man z.B. typischerweise von Deployment und nicht von Bereitstellung. Zum anderen steht die Benutzeroberfläche von SAP CPI nur in englischer Sprache zur Verfügung.
Quellcode-Beispiele
Dieses Buch enthält viele Quellcode-Beispiele. Um die Lesbarkeit in Ihrem E-Book-Lesegerät zu verbessern und den Zeilenumbruch korrekt darzustellen, empfehlen wir, den Quellcode im Querformat zu betrachten oder die Schriftgröße kleiner zu zoomen.
Im Text verwenden wir Kästen, um wichtige Informationen besonders hervorzuheben. Jeder Kasten ist zusätzlich mit einem Piktogramm versehen, das diesen genauer klassifiziert:
Hinweis
Hinweise bieten praktische Tipps zum Umgang mit dem jeweiligen Thema.
Beispiel
Beispiele dienen dazu, ein Thema besser zu illustrieren.
Achtung
Warnungen weisen auf mögliche Fehlerquellen oder Stolpersteine im Zusammenhang mit einem Thema hin.
Die Form der Anrede
Um den Lesefluss nicht zu beeinträchtigen, verwenden wir im vorliegenden Buch bei personenbezogenen Substantiven und Pronomen zwar nur die gewohnte männliche Sprachform, meinen aber gleichermaßen die weibliche.
Hinweis zum Urheberrecht
Zum Abschluss des Vorwortes noch ein Hinweis zum Urheberrecht: Sämtliche in diesem Buch abgedruckten Screenshots unterliegen dem Copyright der SAP SE. Alle Rechte an den Screenshots hält die SAP SE. Der Einfachheit halber haben wir im Rest des Buches darauf verzichtet, dies unter jedem Screenshot gesondert auszuweisen.
1 Schnittstellenplattformen
Dieses Kapitel vermittelt Ihnen die Bedeutung und den Nutzen sowie eine kurze Historie der Evolution von Schnittstellenplattformen bei der SAP, die mit SAP CPI als aktueller Technologie ihren vorläufigen Endpunkt findet.
Schnittstellen ermöglichen den elektronischen Datenaustausch zwischen (meist heterogenen) Anwendungen. IT-Landschaften in Unternehmen erfordern den Einsatz von Schnittstellenplattformen, sobald eine gewisse Komplexität erreicht ist. Meist ist dies bereits dann der Fall, wenn bestimmte Funktionen nicht mehr in einem Anwendungssystem allein betrieben werden (z.B. bei einer von der Auftragsverarbeitung getrennten Finanzbuchhaltung oder einer geteilten Verwaltung von Kundenstammdaten) oder ein elektronischer Austausch von Dokumenten mit Geschäftspartnern erfolgt (z.B. via EDIFACT).
Schnittstellenplattformen sind Systeme, die die standardisierte Entwicklung von Schnittstellen in IT-Landschaften gestatten und diese zudem verwalten, steuern sowie überwachen. Die dazugehörigen Konzepte basieren auf der Enterprise Application Integration (EAI) bzw. auf Serviceorientierter Architektur (SOA) und sorgen für die integrierte Abwicklung von Geschäftsprozessen in einer verteilten Landschaft von Anwendungen. Ziel ist die Vermeidung von Punkt-zu-Punkt-Architekturen, da diese u. a. schlecht zu verwalten und zu überwachen sind. Synonyme Begriffe für eine Schnittstellenplattform sind Enterprise Service Bus (ESB), Message Broker oder Message-oriented Middleware (MOM).
SAP-Schnittstellenplattformen existieren seit etwa 2004, und ihre Geschichte begann mit der SAP Exchange Infrastructure (XI). Davor existierte zwar bereits der SAP Business Connector (BC), ein von der Firma WebMethods zugekauftes Produkt, das ein SAP-R/3-System in die Lage versetzte, über Internetprotokolle (z.B. HTTP) mit Fremdsystemen zu kommunizieren. SAP XI war jedoch das erste echte SAP-Produkt zu den Themen »Integration« und »Connectivity« und ein wesentlicher Bestandteil der Integrationsplattform SAP NetWeaver. Später wurde das Produkt in SAP Process Integration (PI) umbenannt, unter dem es noch heute weitverbreitet ist. SAP PI basiert auf einem sogenannten Dual-Stack, d.h., es werden ein ABAP- sowie ein Java-Server verwendet.
Die letzte Stufe der Evolution (zumindest in der On-Premise-Welt) stellt das Produkt SAP Process Orchestration (PO) dar, das nur noch auf einem Java-Stack aufbaut und darüber hinaus die Komponenten SAP Business Process Management (BPM) sowie SAP Business Rules Management (BRM) beinhaltet, um primär zustandsbehaftete (stateful) Integrationen (z.B. das Aggregieren/Sammeln oder Korrelieren/Verknüpfen von Nachrichten) sowie die Verwaltung von Geschäftsregeln zu unterstützen.
SAP Cloud Platform Integration (SAP CPI), ehemals SAP HANA Cloud Integration (HCI), ist die aktuelle Cloud Middleware der SAP. Wesentliche Elemente von SAP PI/PO finden sich darin nicht wieder, so enthält es z.B. kein starr festgelegtes (geradezu dogmatisches) Vorgehensmodell für die Erstellung von Schnittstellen. Im Gegensatz zur proprietären und sehr SAP-eigenen Implementierung werden hier offene Standards wie z.B. Apache Camel als Laufzeitumgebung verwendet. Dennoch ist eine Abwärtskompatibilität für die bereits erstellten Message-Mappings gewährleistet, da diese SAP-spezifische Laufzeitumgebung ebenfalls implementiert wurde.
SAP CPI basiert auf einer gänzlich flexiblen Pipeline, einem grafisch dargestellten Block, in dem sich die Verarbeitungsschritte als grafische Elemente sehr individuell anordnen lassen. Dies ist Fluch und Segen zugleich, da eine diesbezügliche extreme Standardisierung zugunsten einer hohen Flexibilität auch ein Qualitätsrisiko bedeutet. Letzteres lässt sich jedoch durch die Etablierung guter Entwicklungsrichtlinien und eines Vorgehensmodells begrenzen, sowie ggf. durch den Einsatz zusätzlicher Tools, die eine möglichst hohe Transparenz sowie eine Schnittstellensteuerung ermöglichen.
2 SAP Cloud Platform
Dieses Kapitel gibt Ihnen einen Überblick über die wesentlichen Funktionen von SAP Cloud Platform im Hinblick auf das Thema Integration. Zudem werden grundlegende Konzepte der Verwaltung sowie der Inbetriebnahme erläutert.
SAP Cloud Platform stellt die Platform as a Service (PaaS) von SAP dar. Unter diesem Begriff werden Cloud-Dienste zusammengefasst, die die Erstellung und den Betrieb von Webanwendungen ermöglichen. Entsprechend vielfältig sind die unterschiedlichen angebotenen Dienste (Services), die jeweils eine bestimmte Aufgabe übernehmen, so z.B. Datenbanken, Entwicklungsumgebungen, Dokumentenverwaltung, Benutzeroberflächen (UIs) sowie Integrationsfunktionen. Diejenigen Services, die der Integrationsfunktionalität einer Plattform zugerechnet werden, bezeichnet man als Integration Platform as a Service (iPaaS).
2.1 Integration Platform as a Service
Zur iPaaS von SAP gehören aktuell die folgenden Services:
API Management
Cloud Integration (CPI)
Connectivity
Integration Advisor
Internet of Things
OData Provisioning
Open Connectors
SAP Edge Services
SAP Leonardo ML Foundation
Smart Data Integration
Ausgewählte Services, für die ein kombinierter Einsatz mit SAP CPI sinnvoll ist, werden in Kapitel 8 erläutert.
Übersicht der SAP-Cloud-Platform-Services
Unter der URL https://cloudplatform.sap.com finden Sie die aktuell verfügbaren Services inkl. einer Möglichkeit, die Kosten für deren Einsatz zu kalkulieren.
Sie können aktuell zwei verschiedene Editionen erwerben, die Process Integration (PI) Edition und die (umfangreichere) Enterprise Edition. In der PI-Version sind pro Produktionsumgebung drei Verbindungen sowie zehn Gigabyte Bandbreite enthalten. Eine Verbindung stellt dabei eine Anwendung dar, also typischerweise eine IP-Adresse, über die Nachrichten ausgetauscht werden. Weitere Verbindungen können Sie zusätzlich (kostenpflichtig) lizenzieren. Die Enterprise Edition hingegen umfasst zusätzliche Services (z.B. B2B-Adapter, siehe Abschnitt 8.1, oder Enterprise Messaging, siehe Abschnitt 8.6) und ist hinsichtlich der Anzahl der Verbindungen nicht limitiert.
Seit 2019 bündelt die SAP diese eigentlich autarken Services unter dem Begriff SAP Cloud Platform Integration Suite (siehe Abbildung 2.1). Sie verfolgt damit das Ziel, deren Koexistenz und Interaktion zu verbessern und sie entsprechend einfacher zu vermarkten.
Die Lizenzierung der Integration Suite erfolgt aktuell über drei verschiedene Editionen, die eine unterschiedliche Anzahl an Umgebungen bereitstellen:
Basic: SAP CPI
Standard: enthält den Basic-Umfang inkl. JMS (siehe Abschnitt 4.2.20), API Management (siehe Abschnitt 8.5), Open Connectors (siehe Abschnitt 8.7) und Integration Advisor (siehe Abschnitt 8.3)
Premium: enthält die Standard-Edition inkl. Alert Notification Service (siehe Abschnitt 3.3.3) und Transport Management Service (siehe Abschnitt 3.6.2)
Abbildung 2.1: SAP Cloud Platform Integration Suite
SAP-CPI-Editionen
Eine Übersicht der vorhandenen Editionen finden Sie im SAP-Blog unter https://bit.ly/3fx5CND.
2.2 Bereitstellungsoptionen
SAP unterscheidet aktuell zwei Arten von Rechenzentren, in denen die iPaaS-Services betrieben werden:
Neo (SAP-eigene Rechenzentren mit proprietärer Bereitstellung und Verwaltung)
Cloud Foundry (über die Rechenzentren sogenannter Hyperscaler)
Cloud Foundry ist eine Open-Source-PaaS, die von verschiedenen Software-Anbietern (z.B. SAP) verwendet und von Infrastrukturanbietern (Hyperscaler) bereitgestellt wird.
Hyperscaler wiederum sind Dienstleister im Cloud-Umfeld, über die durch den Zusammenschluss tausender Server in Rechenzentren eine Vielzahl an Systemen und ganze IT-Landschaften genutzt werden können. Zu den bekannteren gehören:
Microsoft Azure
Amazon Web Services (AWS)
Google Cloud Platform
Alibaba Cloud (Aliyun)
Dabei gilt es zu beachten, dass diese Hyperscaler ihre eigenen Plattformen betreiben, die sich hinsichtlich ihrer jeweiligen Funktionalität häufig ähneln (Datenbanken, Laufzeitumgebungen und viele weitere Services). Wir wollen sie im Weiteren allerdings nur als alternative Rechenzentren betrachten.
Manche Services von SAP Cloud Platform existieren exklusiv nur in einer von beiden Umgebungen.
Während einige Dienste der SAP Cloud Platform bereits von Beginn an in der Cloud Foundry existieren, wird SAP CPI erst seit 2019 in dieser Umgebung bereitgestellt.
SAP CPI Trial in Cloud Foundry
Sie können den Dienst sogar kostenlos ausprobieren (siehe https://cloudplatform.sap.com/try.html).
Die Funktionalität dieser Testversion (Trial) ist jedoch noch ziemlich beschränkt (z.B. fehlen bestimmte Adapter, Transporte, APIs) und wird im Detail in folgendem SAP-Hinweis beschrieben: https://launchpad.support.sap.com/#/notes/2752867.
2.3 Data Services und Process Integration
SAP CPI wird über zwei unterschiedliche Verwendungsarten bzw. Ausprägungen angeboten:
Process Integration (PI)
Data Services (DS)
CPI Process Integration wird hier im Buch detailliert erläutert; sie bildet die SAP Middleware für die nachrichten- und prozessbasierte Integration in der Cloud, während die CPI-Data-Services-Ausprägung die Datenperspektive einnimmt. Der primäre Fokus von Data Services liegt auf der Replikation von Daten (typischerweise direkt aus Datenbanktabellen) im Sinne eines ETL-Tools (Extract, Transform, Load). Aktuell ist das von CPI-DS verwendete primäre Integrationsszenario das SAP-Produkt IBP (Integrated Business Planning). Dabei werden Daten aus SAP ECC bzw. SAP S/4HANA über lokal installierte Agenten in die Cloud geladen, um dort die entsprechende Planungsapplikation mit Daten zu versorgen und passende Funktionalitäten bereitzustellen.
2.4 Account Cockpit
Die zentrale Verwaltung von Services findet im Account Cockpit statt. Es wird über die URL https://account.hana.ondemand.com aufgerufen, und man authentifiziert sich mit seinem S-User.
Jedes Unternehmen, das einen Vertrag mit der SAP schließt, also z.B. eine SAP-CPI-Lizenz kauft bzw. subskribiert, bekommt einen sogenannten Global Account zugewiesen. Dieser ist direkt an die Lizenz und die Laufzeit gekoppelt. Um eine Vielzahl an Global Accounts zu vermeiden, empfiehlt die SAP ein »consumption-based commercial model« (siehe https://wiki.scn.sap.com/wiki/pages/viewpage.action?pageId=489198716), das das Cloud Platform Enterprise Agreement (CPEA) mit einschließt – ein Verfahren der Subskription mittels sogenannter Cloud Credits, die man erhält, um einzelne Services zu aktivieren, ohne ständig neue Global Accounts zu erstellen. Dabei sind alle Services auswählbar, die unter dem SAP Cloud Platform Service Description Guide and Agreement verfügbar sind (siehe https://www.sap.com/about/agreements/policies/cloud-platform.html). Jeder Global Account ist genau einer Region und damit einem Rechenzentrum zugeordnet.
Innerhalb eines solchen Global Accounts werden mehrere Sub-Accounts angelegt, die typischerweise einem Tenant zugeordnet sind. Ein Tenant entspricht dabei typischerweise genau einer Virtual Machine (VM), auf der die Services bereitgestellt und zur Laufzeit ausgeführt werden. Pro Sub-Account aktiviert man sodann diejenigen Services, die man verwenden möchte.
Bei der Verwendung von SAP CPI empfiehlt sich der Einsatz unterschiedlicher Tenants. Jeder Umgebung (Development, Quality Assurance, Production) ordnet man jeweils einen Tenant zu. Abbildung 2.2 veranschaulicht die einzelnen Tenants eines Global Accounts, hier DEV (Development) als Entwicklungsumgebung, QA (Quality Assurance) als Testumgebung und PRD (Production) als Produktivsystem. Die jeweiligen Sub-Accounts enthalten eine eigene Java-Laufzeitumgebung innerhalb einer VM sowie ein Schema in einer HANA-Datenbank.
Abbildung 2.2: Global Account und Sub-Accounts
Wichtig ist, dass der SAP mitgeteilt wird, welcher Sub-Account/Tenant für die Produktion eingesetzt wird, da das SAP-Operations-Team dann die Überwachung entsprechend gründlich vornimmt, um Ausfälle zu vermeiden bzw. die sogenannte Elastizität zu gewährleisten, im vorliegenden Sinn also die automatische Skalierung der Hardware-Ressourcen, d.h. das Hinzufügen von Speicherplatz oder Rechenleistung, wenn die Anforderungen an die Software steigen.