SAP BTP basierte Integration von SAP Solution Manager oder SAP Focused Build

Blog vom 03.02.2023

Vorbereitung von Infrastruktur und Verbindungen für SAP BTP

Auch wenn Conigma Connect auf SAP BTP läuft, ist es eine gute Idee, im Vorfeld die Verbindungs-Voraussetzungen auf Netzwerkebene zu prüfen. Oftmals erfordern Netzwerkkomponenten wie SAP CPI / SAP Integration Suite, Firewalls, Reverse Proxies, etc. oder Herausforderungen wie fehlende / abgelaufene Zertifikate verschiedene Maßnahmen für eine ordnungsgemäße Kommunikation zwischen dem SAP Solution Manager und SAP BTP.

Dieser Blog-Beitrag zeigt, wie man die Kommunikation zwischen dem SAP Solution Manager und der SAP BTP (die möglicherweise Conigma Connect hostet) testet, um die Kommunikation auf Infrastrukturebene sicherzustellen, z. B. für eine Integration von SAP Cloud ALM SaaS und SAP Solution Manager ChaRM oder FocusedBuild for SAP Solution Manager.
Die Kommunikation wird in beide Richtungen getestet. Ein solcher Test hilft, Kommunikationsprobleme im Vorfeld zu erkennen und bietet somit die Möglichkeit, solche Probleme in einer früheren Projektphase zu lösen. Diese Kommunikation wird auf Betriebssystemebene getestet und ist unabhängig von Conigma Connect selbst.

Es gibt zwei Arten von Netzwerkverbindungen, die getestet werden:

  • Vom SAP Solution Manager zum SAP BTP (Middleware) Server (im Folgenden Inbound-Connection genannt).

  • Vom SAP BTP zum SAP Solution Manager (im Folgenden als Outbound-Connection bezeichnet).

Um die korrekt eingerichteten Netzwerkverbindungen für Inbound-Connetions zu testen, verwenden unsere Kunden in der Regel einen Mock-Server, der API-Aufrufe empfangen und protokollieren kann (siehe Abbildung unten). In diesem Beitrag werden die Tests anhand des Mock-Servers Mockoon in seiner Docker-Version beschrieben. Ein analoges Vorgehen gilt auch für jeden anderen Mock-Server. Auf Seiten des Solution Managers wird der SAP Standard-Report SAPHTML_DEMO01 verwendet.

Ausgehende Verbindungen werden dagegen mit OS-bezogenen Prozeduren getestet, in diesem Fall curl auf einem Ubuntu Docker Container (siehe auch Bild unten), der einen Standard SAP ICF Service aufruft. Ein analoges Vorgehen gilt auch für den Test eines lokalen Linux basierten On-Prem Middleware-OS.

SAP Solution Manager Architektur

Inbound-Connection Test für SAP BTP vom SAP Solution Manager

Dieser Abschnitt beschreibt den Test der Inbound-Conncetion für SAP BTP aus dem SAP Solution Manager.

Auf der SAP BTP

Stellen Sie Mockoon als Docker-Image auf der SAP BTP Cloud Foundry bereit.
https://mockoon.com/
https://hub.docker.com/r/mockoon/cli

Bitte folgen Sie den entsprechenden SAP-Anweisungen für die Bereitstellung eines Docker-Images auf SAP BTP.
https://help.sap.com/docs/btp/sap-business-technology-platform/download-and-install-cloud-foundry-command-line-interface
https://help.sap.com/docs/btp/sap-business-technology-platform/deploy-docker-images-in-cloud-foundry-environment

Der entsprechende Befehl zur Bereitstellung von Mockoon lautet:
cf push mockoon --docker-image mockoon/cli:latest --start-command "mockoon-cli start -d
https://raw.githubusercontent.com/mockoon/mock-samples/main/samples/generate-mock-data.json --port 8080 --daemon-off"

Im SAP Solution Manager

Gehen Sie zu dem SAP BTP-Konto und dem Unterkonto, das Ihr Mockoon-Image hostet.
Kopieren Sie die entsprechende URL, unter der sich die oben beschriebene Instanz befindet.

SAP BTP Cockpit

Fügen Sie der URL das Suffix /posts hinzu und überprüfen Sie in einem Browser, ob alles korrekt eingerichtet ist. Das Ergebnis sollte wie folgt aussehen:

Mockoon-Image URL

Melden Sie sich nun in Ihrem SAP Solution Manager an und führen Sie den ABAP Report SAPHTML_DEMO1 aus.
Geben Sie dort die gleiche URL (mit Suffix) ein, die Sie auch zum Testen in Ihrem Browser verwendet haben, und drücken Sie <Enter>.

Das erwartete Ergebnis ist ähnlich und sollte wie folgt aussehen:

Ausführung ABAP Report SAPHTML_DEMO1

Im Falle eines Fehlers erhalten Sie eine Fehlermeldung des Browsers. Die Fehlermeldung bietet die Möglichkeit zur weiteren Analyse.

Outbound-Verbindungstest von SAP BTP zum SAP Solution Manager

Der folgende Abschnitt beschreibt, wie Sie eine ausgehende Verbindung zum SAP Solution Manager testen können.
Stellen Sie zunächst ein Docker-Image bereit, das Ihnen den Befehl curl zur Verfügung stellt. In unserem Beispiel verwenden wir Ubuntu.

https://hub.docker.com/_/ubuntu

Beachten Sie, dass es auch möglich wäre, den zuvor installierten Mockoon-Container dafür zu verwenden, aber in unserem Beispiel verwenden wir eine isolierte Testumgebung.

 

cf push ubuntu --health-check-type process --docker-image ubuntu:latest

cf enable-ssh ubuntu
cf restart ubuntu
cf ssh ubuntu

Vergewissern Sie sich, dass Sie sich in der SSH-Eingabeaufforderung Ihrer Ubuntu-Installation befinden und der SSH-Befehl keine Fehlermeldung ausgegeben hat.

Installieren Sie curl.

apt-get update
apt-get install -y curl

Nun müssen Sie eine geeignete Test-URL in Ihrem SAP Solution Manager finden.
Dazu navigieren Sie im SAP Solution Manager zur Transaktion SICF und wählen einen beliebigen Dienst aus, der gerade läuft.
In unserem Beispiel wählen wir /default_host/sap/url/, aber es kann auch ein beliebiger anderer Dienst gewählt werden, der bereits vorhanden und aktiv ist.

how to test an outbound connection to the SAP system running the Conigma CCM central system (=ABAP add-on)open the service details

Mit einem Doppelklick öffnen Sie die Service-Details und kopieren den Service-Pfad (ohne den Teil "default_host"!) und den Service-Namen.

Mit dem Unterpfad/Namen des Dienstes und der Adresse/Port, über die Sie versuchen, den SAP Solution Manager von unserem SAP BTP aus zu erreichen, können Sie die URL wie folgt aufbauen:

http[s]://<SAP Solution Manager Hostname>:<Port>/<Path>/<Name>

oder

http[s]://<SAP Solution Manager IP>:<Port>/<Path>/<Name>

z. B.

https://solman.mycorp.com:8000/sap/url/go.

Von Ihrer BTP-Ubuntu-SSH-Sitzung aus testen Sie nun die Verbindung mit folgendem Befehl:

curl -I <Our Solution Manager URL>

Das erwartete Ergebnis lautet wie folgt:

Erwartetes Ergebnis

HINWEIS: Hier wird der Statuscode "401 Unauthorized" erwartet, da es sich hier nicht um Anmeldungen handelt. Jedes andere Ergebnis deutet auf einen Fehler hin und sollte analysiert werden.

Zusammenfassung

Die oben beschriebenen Tests sind nicht nur vor der Installation von Conigma Connect auf SAP BTP zu empfehlen. Vielmehr können sie auch im täglichen Betrieb zur Fehleranalyse genutzt werden (z.B. abgelaufenes Serverzertifikat bei HTTPS-Verbindungen).