Überwachung von Cloud Foundry in der SAP Business Technology Platform (BTP)

von | 11. Februar 2025

Cloud Foundry ist wahrscheinlich die beliebteste Umgebung auf der SAP Business Technology Platform. Wenn Kunden Anwendungen mit dem SAP Cloud Application Programming (CAP)-Framework entwickeln, um SAP-S/4HANA-Lösungen zu erweitern und einen „Clean Core“ zu erreichen, setzen sie in der Regel Cloud Foundry für die Bereitstellung ein.

Sobald die Anwendungen auf Cloud Foundry in den produktiven Betrieb gehen, werden sie geschäftskritisch, was die Notwendigkeit einer Observability für diese Anwendungen und die Plattform mit sich bringt. Die Überwachung von Cloud Foundry ist mittlerweile eine wesentliche Anforderung an die SAP-Betriebsteams.

Was ist Cloud Foundry und wozu dient es? 

Cloud Foundry ist eine Open-Source-Plattform für Cloud-Anwendungen, die es einfacher macht, in beliebigen Sprachen geschriebene Anwendungen in jeder privaten oder öffentlichen Cloud auszuführen. Normalerweise würde ein Administrator Cloud Foundry installieren und konfigurieren, aber SAP BTP stellt seine Cloud-Foundry-Umgebung bereits konfiguriert und einsatzbereit zur Verfügung, damit Kunden ihre Anwendungen bereitstellen können.

Die Möglichkeit, Anwendungen in beliebigen Sprachen auszuführen, wird durch eine Kombination aus Stacks und Buildpacks. Stacks enthalten die wesentlichen Bestandteile eines Betriebssystems, und Buildpacks stellen alle unterstützenden Anforderungen für eine Anwendung bereit. So könnte beispielsweise eine Java-Anwendung mit dem Stack „cflinuxfs4“ bereitgestellt werden, der die Linux-Distribution Ubuntu 22.04 Jammy Jellyfish bereitstellt, wobei ein Java-Buildpack verwendet wird, das die JVM und andere Abhängigkeiten zum Ausführen von Java-Anwendungen bereitstellt.

Cloud Foundry hat sich zum Ziel gesetzt, eine schnelle, sichere und innovative Cloud-Plattform mit einer guten Entwicklererfahrung bereitzustellen. Sie spart Zeit und Kosten für die manuelle Konfiguration und Wartung der Infrastruktur zum Ausführen von Anwendungen, sodass sich Entwickler auf die Erstellung ihrer Anwendungen konzentrieren können, während die Plattform komplexe Themen wie die Skalierung übernimmt. Es ist keine Überraschung, dass SAP sich dafür entschieden hat, Cloud Foundry als eine der Umgebungen in BTP zur Verfügung zu stellen.

Was muss ich in Cloud Foundry überwachen? 

Cloud Foundry abstrahiert viele der Infrastrukturprobleme, bei denen die Überwachbarkeit in der Regel ansetzt, aber das bedeutet nicht, dass nie etwas schiefgeht oder dass man das System nicht überwachen muss. Für einen erfolgreichen Betrieb von Cloud Foundry gibt es eine Reihe wichtiger Bereiche, deren Überwachung in Betracht gezogen werden sollte.

Quoten

Kontingente sind ein wichtiges Thema bei der Verwaltung von Cloud Foundry. Sie können Quoten für CPU, Arbeitsspeicher, Routen, Prozesse und Dienste festlegen und diese auf eine gesamte Cloud Foundry-Organisation oder auf einen Bereich innerhalb einer Organisation anwenden.

Quoten sind sinnvoll und sogar unverzichtbar, um sicherzustellen, dass Anwendungen über die benötigten Ressourcen verfügen, während die Kosten unter Kontrolle bleiben. Sie können jedoch auch drastische Auswirkungen haben und verhindern, dass eine Anwendung gestartet oder nach Wartungsarbeiten neu gestartet wird, wenn dadurch eine der konfigurierten Quotengrenzen überschritten würde. Quoten können sowohl Ausfallzeiten verursachen als auch verhindern, und beides kommt häufig vor.

Die Überwachung von CPU und Arbeitsspeicher ist auf Infrastrukturebene zwar nicht mehr unbedingt erforderlich, stellt jedoch nach wie vor einen wesentlichen Bestandteil der Observability in Cloud Foundry dar. Neben der Vermeidung von Kontingentüberschreitungen ist die regelmäßige Überwachung der Kontingentnutzung ein wichtiger Faktor bei der Optimierung und bedarfsgerechten Dimensionierung Ihrer Cloud Foundry-Umgebung im Hinblick auf zukünftiges Wachstum, minimale Kosten und einen geringen CO₂-Fußabdruck.

Laufzeitprobleme und Verfügbarkeit

Cloud Foundry ist so viele Abstraktionsebenen von der Hardware entfernt, dass typische Computerprobleme unmöglich erscheinen mögen, doch in Wirklichkeit handelt es sich bei Cloud-Foundry-Anwendungen um gewöhnlichen Code, der in gewöhnlichen Prozessen auf gewöhnlichen Betriebssystemen läuft – hinter all den Schichten der Cloud-Abstraktion.

Anwendungen lösen Ausnahmen aus, und manchmal stürzen ganze Prozesse ab. Manchmal scheint die Anwendung einwandfrei zu laufen, ist aber einfach nicht verfügbar oder führt nicht die vorgesehenen Aufgaben aus. Die Überwachung von Prozessabstürzen, protokollierten Ausnahmen und der grundlegenden Verfügbarkeit ist ein absolut grundlegendes Merkmal jeder Cloud Foundry-Lösung zur Beobachtbarkeit.

Da Anwendungen in jeder beliebigen Sprache auf Cloud Foundry ausgeführt werden können, liefern die Protokollierungsfunktionen sehr allgemeine Berichte über Probleme, sodass für deren Verständnis und Behebung eine weitere Auswertung unter Berücksichtigung der jeweiligen Sprache erforderlich ist. Wenn eine Observability-Plattform diese Auswertung für Sie übernehmen kann, können die Betriebsteams Probleme schneller lösen.

Skalierbarkeit und Ressourcen

Cloud Foundry sieht für Prozessinstanzen Obergrenzen für die Speicher- und CPU-Auslastung vor und ermöglicht die automatische oder manuelle Skalierung der Prozessinstanzen, um schwankende Anforderungen zu bewältigen. Die Überwachung der Auslastung im Hinblick auf das Erreichen dieser Obergrenzen sowie die aktive Anpassung der konfigurierten Grenzwerte sind entscheidend für leistungsstarke Anwendungen bei minimalen Kosten.

Ein Bereich, in dem Cloud Foundry einer Anwendung eine gewisse Flexibilität gewährt, ist die vorübergehende Überschreitung der festgelegten CPU-Kontingent, was als „Spiking“ bezeichnet wird. Mit der Zeit wird Cloud Foundry beginnen, „schlechte“ Anwendungen zu identifizieren, die durchgehend zu viel CPU-Leistung beanspruchen, und diese Anwendungen drosseln. Eine Drosselung erfolgt auch, wenn die verfügbare CPU-Leistung für alle Anwendungen nicht ausreicht. Die Überwachung der Zeit, die Anwendungen über ihre CPU-Zuteilung hinaus beanspruchen, ist unerlässlich, um sicherzustellen, dass sie nicht gedrosselt werden und für die Benutzer eine gute Leistung erbringen.  

Probleme bei der Bereitstellung und beim Build

Das Bereitstellen oder Aktualisieren einer Anwendung auf Cloud Foundry erfolgt oft mit einem einzigen Befehl, doch dies löst einen komplexen Prozess mit vielen Schritten. Ab dem Zeitpunkt, an dem der Entwickler cf push in seiner Befehlszeile aus: Zunächst wird eine App erstellt, dann werden Dateien zur Erstellung in den Speicher aktualisiert, die App wird bereitgestellt, ein Droplet wird erstellt und gespeichert, und schließlich kann die Anwendung gestartet und auf ihren Laufstatus überprüft werden. 

An jedem dieser Punkte kann etwas schiefgehen. Die Cloud Foundry-Plattform meldet den Status von Droplets, Builds und Anwendungen im Staging- und Laufzeitstatus. All dies sind wichtige Punkte, die überwacht werden müssen, da Probleme dazu führen können, dass sich die Anwendung in einem anderen Zustand befindet, als vom Entwickler erwartet. Im schlimmsten Fall könnte eine Anwendung für Benutzer nach Problemen beim Starten, Beenden, Erstellen oder Staging vollständig nicht mehr verfügbar sein.

Technische Sicherheit

SAP-Cloud-Produkte im Allgemeinen und SAP BTP im Besonderen führen dazu, dass SAP-Betriebsteams – oft zum ersten Mal – außerhalb der Unternehmensfirewall arbeiten. SAP-Anwendungen liefen bisher stets in einem gut geschützten Bereich des Unternehmensnetzwerks, während Cloud-Anwendungen standardmäßig im öffentlichen Internet mit Zero-Trust-Sicherheit betrieben werden.

Cloud Foundry bietet Sicherheitsgruppen an, mit denen der zulässige Netzwerkzugriff für Anwendungen konfiguriert werden kann. Diese müssen im Einklang mit allgemeinen Best Practices (Zugriff auf DNS zulassen, Zugriff auf Cloud-Verwaltungsdienste blockieren) sowie unternehmensspezifischen Richtlinien und Konfigurationen eingerichtet werden. Durch die Überwachung auf Konfigurationsprobleme wird sichergestellt, dass Anwendungen dann kommunizieren können, wenn sie sollen, und nicht, wenn sie es nicht sollen.

Die Überprüfung der Sicherheitsprotokolle war noch nie wirklich optional, ist aber in jeder Public-Cloud-Umgebung zwingend erforderlich, und Abweichungen vom Normalzustand oder potenzielle Bedrohungen sollten untersucht werden. Es könnte sich um einen harmlosen Fehler handeln, wie beispielsweise ein falsch konfiguriertes Integrationssystem, das an sich schon zu einer Betriebsstörung führt, oder aber um einen Angreifer.

Einhaltung

Compliance ist eine etwas andere Art der Sicherheit, bei der Themen wie Audit-Kontrollen bei der Implementierung und die Aufgabentrennung eine Rolle spielen. Cloud Foundry verfügt über Rollen für Administratoren und Entwickler, und es ist ebenso wichtig, zu überprüfen, ob diese korrekt eingerichtet sind, wie die Berechtigungen in einem S/4HANA-Produktionssystem zu überprüfen.

Leider herrschen bei vielen Cloud-Foundry-Bereitstellungen derzeit noch völlig ungeordnete Zustände. Da es sich um eine relativ neue Technologie in der SAP-Welt handelt, werden Anwendungen auf Cloud Foundry entweder als Innovations-Proof-of-Concept oder im Rahmen eines anspruchsvollen S/4HANA-Implementierungsprojekts entwickelt. In beiden Fällen sind Zeit und Fachkenntnisse knapp bemessen, und die Funktionsfähigkeit der Lösung hat höhere Priorität als die Konfiguration aller Komponenten im Hinblick auf die Compliance.

Die Prüfer holen nun auf, und die gängige Praxis, Anwendungen vom Laptop eines Entwicklers direkt in die Produktionsumgebungen von BTP zu übertragen, wird in Großunternehmen nicht mehr lange möglich sein. Eine korrekte Konfiguration von CI/CD bietet einen SAP-Transport-ähnlichen Weg für Anwendungen in die Produktionsumgebung, weshalb die Überprüfung der Cloud-Foundry-Benutzerberechtigungen – um sicherzustellen, dass niemand Anwendungen entwickeln und in die Produktion übertragen kann – zu einer unverzichtbaren Überwachungsmaßnahme wird.

Wie kann ich also alles in Cloud Foundry überwachen? 

Natürlich wird dieser Avantra-Blog die in Avantra 25 eingeführte Cloud Foundry-Überwachungsfunktion empfehlen.

Avantra 25 ermöglicht die vollautomatische Erkennung aller Verzeichnisse und Unterkonten sowie aller Umgebungen und Dienste in einem SAP BTP Global Account, nachdem ein einziger API-Schlüssel in einem einzigen Unterkonto angegeben wurde. Die Erkennung und Einrichtung erfolgt vollautomatisch und erfordert nur einen minimalen Aufwand seitens des Administrators.

Sobald eine Cloud Foundry-Umgebung erkannt wird, werden alle Spaces und Anwendungen erfasst, und es werden automatisch Überwachungsprüfungen für alle in diesem Blog aufgeführten Elemente konfiguriert, darunter über zwanzig Standardprüfungen und fünf benutzerdefinierte Prüfungen für jede Anwendung und Umgebung.

Avantra ist die führende Observability-Plattform für SAP-Betriebsteams und bietet unseren Kunden seit über zwanzig Jahren eine vollständig automatisierte und benutzerfreundliche Transparenz über SAP-Landschaften. Durch die Erweiterung auf wichtige BTP-Dienste wie Cloud Foundry wird es möglich, moderne SAP-Geschäftsprozesse in der Cloud auf einer einzigen, integrierten Plattform zu überwachen und zu betreiben.

Sprechen Sie noch heute mit einem unserer SAP-Experten noch heute, um mehr zu erfahren.