Die Zukunft liegt in der Cloud, Data Science und Resilienz
Cloud Computing: SAP ERP trifft Google BigQuery mit Machine Learning
Am Horizont ist das Ende von SAP R/3 und ER/ECC 6.0 deutlich zu erkennen. Einen genauen Termin festzulegen scheint jedoch eine Herausforderung für die SAP zu sein. Klar ist aber, dass der Support für die bisherigen SAP-Kernsysteme in wenigen Jahren eingestellt wird. Dass ein konkretes Enddatum für R/3 fehlt, führt im Alltag dazu, dass Unternehmen das Thema immer wieder auf die lange Bank schieben. Dabei macht es Sinn, sich zeitnah mit der Umstellung zu beschäftigen – denn nur so lassen sich die Chancen einer zukunftsfesten Neuausrichtung nutzen.
Sieht es beim Systembetrieb so aus, als gäbe es zukünftig nur eine Zielplattform, nämlich die Cloud, dominieren bei den Anwenderunternehmen noch die On-prem-Modelle, allerdings mit kontinuierlich abnehmender Tendenz. Ebenso verbreitet ist das Hosting in einem externen Rechenzentrum. Doch welche Vorteile ergeben sich bei der Verlagerung des Deployment-Modells in die Cloud? Und welche Cloud ist für den individuellen Anwendungsfall sinnvoll?
SAP Public Cloud
Die Public Cloud von SAP ist auf definierte Szenarien zugeschnitten und spielt bei den meisten Unternehmen eine untergeordnete Rolle. SAP selbst forciert die Umstellung auf cloudbasierte Produkte und Dienstleistungen mit Rise with SAP, dem neuesten Versuch der Walldorfer, Kunden in die Cloud zu portieren. Neben dem Marketingdruck, der von der SAP erzeugt wird, sind natürlich auch die Hyperscaler interessiert, SAP-Workloads zu übernehmen. Derzeit bieten sieben Hyperscaler zertifizierte IaaS-Plattformen für OLAP und OLTP. Für den deutschsprachigen Markt sind Amazon Web Services (AWS), die Google Cloud Platform (GCP) und Microsoft Azure die relevanten Anbieter.
Oft kommt es im laufenden Entscheidungsprozess bei der Wahl des Betriebsmodells zu Überraschungen. Vermeintliche Nach- und Vorteile relativieren sich bei näherer Betrachtung zum Wechsel in die Cloud. Insbesondere beim Thema Sicherheit trifft man in der Praxis auf mehr Vorteile als Einwände. Die Dienste aller drei genannten Hyperscaler stimmen beispielsweise mit dem Cloud Computing Compliance Controls Catalog (C5) des Bundesamtes für Sicherheit in der Informationstechnik (BSI) überein. C5 unterstützt Unternehmen dabei, den Betrieb bei der Nutzung von Cloud-Services gegen gängige Cyberangriffe abzusichern.
Ein Aspekt, der zu Projektbeginn – und auch in den RfP-Prozessen (Request for Proposal) der Anwenderunternehmen insgesamt – kaum beleuchtet wird, ist, wie sich ein neu ausgerichteter SAP-Betrieb auf die Innovationskraft und Wettbewerbsfähigkeit des Anwenderunternehmens auswirkt. Dass viele Unternehmen ein Kernsystem der unternehmerischen Wertschöpfung am Fragenkatalog der Vergangenheit ausrichten, ist erstaunlich – speziell in einer Zeit dramatischer Umbrüche. Agilität, Marktnähe und Nachhaltigkeit sind die Paradigmen der Zukunft.
Ebenso werden neue Geschäftsmodelle, etwa Direct-to-Consumer-Konzepte (DTC) und Abonnementdienste, immer beliebter. Obwohl der Anteil des E-Commerce am Gesamtumsatz derzeit noch gering ist, beschleunigt sich das Wachstum hier deutlich. Künstliche Intelligenz (KI) und maschinelles Lernen, das Internet der Dinge (IoT) und die Blockchain versprechen, den geschäftlichen Erfolg grundlegend zu verändern. Branchenführer nutzen diese neuen Technologien bereits, um auf Verbrauchertrends zu reagieren und deren Abläufe effizienter zu gestalten.
Business Technology Platform
Das Warenwirtschaftssystem bleibt die zentrale Datenhaltungseinheit (Source of Authority). Daneben stellen Hyperscaler Datenbanksystem und Technologien bereit, mit denen Unternehmen effizienter und schneller auf die Anforderungen am Markt reagieren können (Source of Agility). Die Brücke zum Übergang bildet die SAP Business Technology Platform (BTP).
Bei den drei genannten Hyperscalern ist BTP eine etablierte Plattform, um intelligente Unternehmensanwendungen mit Datenbank- und Datenmanagement-, Analyse-, Integrations- und Erweiterungsfunktionen zu verbinden. Dabei sollen die Kunden die richtige Kombination an Cloud-Lösungen nach ihren individuellen Anforderungen frei wählen – und bei Bedarf schnell neue Funktionen einführen können.
Source of Agility
Was leistet die Source of Agility? Dies verdeutlicht ein Beispiel: Google BigQuery ist ein Serverless Multi-Cloud-Data-Warehouse für datengestützte Innovationen in Unternehmen, das über den beschriebenen Weg ans SAP ERP angebunden wird und hier „System of Agility“ ist. Als Kernsystem unterstützt es die Datentransformation. Eigene Daten aus SAP werden dabei mit externen Datasets und Streamingdaten in Echtzeit angereichert. BigQuery wird so zur zentralen Lösung für Datenanalysten und Data Scientists, mit der diese alle Datentypen abfragen können: strukturierte, semistrukturierte und unstrukturierte Daten.
Mit Dataplex, einer intelligenten Datenstruktur, können Unternehmen in großem Umfang auf vertrauenswürdige Daten und hilfreiche Analysen zugreifen. Sie können diese dann über Data Lakes, Data Warehouses und Data Marts hinweg mit einheitlichen Steuerelementen erfassen, verwalten, überwachen und bereitstellen. Im nächsten Schritt kann das Ergebnis für BigQuery integriertes Machine Learning (ML) genutzt werden. BigQuery ML ermöglicht es Unternehmen, mithilfe von Standard-SQL-Abfragen Modelle für maschinelles Lernen in BigQuery zu erstellen und auszuführen.
Data Science mit BigQuery
Maschinelles Lernen mit großen Datasets erfordert umfangreiche Programmier- und ML-Frameworks-Kenntnisse. Diese Anforderungen beschränken die Lösungsentwicklung in den meisten Unternehmen auf einen sehr kleinen Personenkreis. Datenanalysten gehören nicht dazu, da sie die Daten zwar üblicherweise verstehen, aber ihre Programmierkenntnisse und ihr Wissen im Hinblick auf maschinelles Lernen begrenzt sind. Beim Einsatz von BigQuery ML müssen sie sich hingegen kein neues Wissen aneignen und können bereits vorhandene SQL-Tools verwenden, um maschinelles Lernen zu nutzen. Mit BigQuery ML lassen sich ML-Modelle in BigQuery erstellen und bewerten. So kann sich das SAP-Betriebsteam um seine Aufgaben kümmern und die kundennahen Einheiten können auf hochverdichtete und visualisierte Echtzeitdaten zugreifen, um die richtigen Entscheidungen zu treffen.
Google Cloud Cortex Framework
Mit dem Google Cloud Cortex Framework bietet Google eine Sammlung von Tools und Services von Google Cloud speziell für die Sicherheit und Compliance von cloudbasierten Anwendungen und Infrastrukturen an. Das Framework gehört zur Google-Cloud-Security-Plattform und unterstützt Sicherheits- und Compliance-Teams mit Diensten wie:
Security Command Center, ein zentralisiertes Dashboard, das umfassende Einblicke in die Sicherheit und Compliance von Google Cloud bietet, einschließlich Schwachstellen-Management, Risikoanalyse und Compliance-Bewertungen.
Event Threat Detection, ein Dienst, der die Google-Cloud-Logs automatisch überwacht und Anomalien, Bedrohungen und potenzielle Sicherheitsvorfälle identifiziert.
Binary Authorization, ein Dienst, der die Ausführung von Anwendungen in der Cloud kontrolliert und sicherstellt, dass nur genehmigte und vertrauenswürdige Software ausgeführt wird.
Forseti Security, ein Open-Source-Tool, das auf Google Cloud läuft und die Sicherheit und Compliance von Cloud-Infrastrukturen überwacht und automatisiert.
Als Teil der umfassenderen Google–Cloud-Plattform hilft das Google Cloud Cortex Framework Unternehmen dabei, die Cloud-Sicherheitsstrategie von SAP-Bestandskunden in der Google Cloud zu verbessern und Compliance-Anforderungen zu erfüllen.
Google Apigee
Google Apigee ist eine API-Management-Plattform, die Unternehmen dabei unterstützt, APIs (Application Programming Interfaces) zu entwerfen, bereitzustellen, zu überwachen und zu skalieren. APIs sind Schnittstellen, die es Anwendungen ermöglichen, miteinander zu kommunizieren und Daten auszutauschen. Zu den wichtigsten Funktionen von Apigee gehören:
API-Design: Apigee hilft Unternehmen dabei, APIs mit Industriestandards und Best Practices zu entwerfen, um eine konsistente Entwicklererfahrung und eine einfachere Integration zu gewährleisten. Das führt zu einer schnelleren Markteinführung neuer Anwendungen und macht Unternehmen agiler.
API-Management: Apigee ermöglicht es Unternehmen, ihre APIs effektiv zu verwalten, einschließlich des Zugriffs, der Sicherheit und der Überwachung. Das bedeutet, dass Unternehmen den Zugriff auf ihre APIs kontrollieren und dadurch sicherstellen können, dass sie stabil laufen.
API-Analyse: Apigee bietet eine umfassende Überwachung und Analyse von APIs, um Verhaltensmuster zu erkennen und Trends zu identifizieren. Dadurch können Unternehmen schnell auf Probleme reagieren und die Leistung ihrer APIs verbessern.
Skalierbarkeit: Apigee ermöglicht Unternehmen, ihre APIs auf globalem Niveau zu skalieren und den Datenverkehr auf verschiedene Server und Standorte zu verteilen. Dadurch können Unternehmen ihre Kundenbasis erweitern und die Verfügbarkeit ihrer Anwendungen verbessern.
Integration: Apigee bietet eine nahtlose Integration mit anderen Google-Cloud-Diensten wie Kubernetes, Cloud Functions, Cloud Pub/Sub und Cloud Storage. Das erleichtert Unternehmen die Entwicklung und Bereitstellung von Anwendungen auf der Google-Cloud-Plattform.
Insgesamt bietet Apigee Unternehmen somit einen Mehrwert, indem es ihnen hilft, die APIs effektiver zu entwerfen, zu verwalten, zu überwachen, zu skalieren und zu integrieren, was zu einer höheren Agilität, Effizienz und Kundenzufriedenheit führen kann.
Anwendungsausfallzeiten reduzieren
Wie oft haben Anwender eine Anwendung geschlossen, wenn sie auf das „Spinning Wheel of Death“ gestoßen sind? Zugegeben: eine recht melodramatische Art zu sagen, dass eine Anwendung zu lange zum Laden braucht! In der aktuellen digitalen Wirtschaft, in der Anwendungen die Haupt-einnahmequelle vieler Unternehmen sind, kann dieses sich drehende Todesrad (oder eine schlechte Anwendungsleistung) jedoch zu verlorenen Benutzern oder Umsätzen führen. Und nahezu jede moderne Anwendung verlässt sich auf APIs als Nervensystem zwischen verteilten Systemen, Drittanbieterdiensten und Microservice-Architekturen. Während die Anforderungen an schnelle Release-Zyklen und häufige API-Updates erfüllt werden, ist es für IT-Teams darüber hinaus auch unerlässlich, sicherzustellen, dass die API-SLOs und Leistungsanforderungen erfüllt und Probleme proaktiv gemindert werden.
Wenn Tausende oder sogar Millionen von Benutzern mehrere Anfragen an ein API stellen, reicht es für präzise Diagnosen oder nützliche Forensik aber häufig nicht, sich nur auf synthetische Überwachungstools zu verlassen. Denn diese stützen sich zumeist nur auf Stichproben oder begrenzte API-Verfügbarkeitsinformationen.
Gleichzeitig erhöht die Überwachung jedes einzelnen Aspekts nur den Aufwand und die mittlere Zeit bis zur Diagnose. Die API-Überwachung ist als „Kunst und Wissenschaft“ für Betriebsteams absolut entscheidend. Nur so können diese sicherstellen, dass alle APIs wie beabsichtigt ausgeführt werden und funktionieren.
Jeder Techniker kann über die Gemeinkosten informieren, die durch falsch priorisierte Warnungen entstehen. Stellt man sich eine verteilte Anwendung mit 20 APIs vor: Selbst wenn für diese APIs grundlegende Warnungsmonitore für Latenz, Fehler und Datenverkehr existieren, müssen am Ende etwa 60 Warnungsdefinitionen überwacht und verwaltet werden – ein hoher Aufwand. Um ein Gleichgewicht zwischen der Vermeidung von Totwinkeln bei der Überwachung und gleichzeitiger Warnungsermüdung herzustellen, müssen Betriebsteams daher ein klares Verständnis aller Ereignisse entwickeln und die Konfiguration von Warnungen für Ereignisse, die kritischen Verkehr unterstützen, priorisieren.
Jede erstellte Alarmbedingung sollte ferner auch Informationen enthalten, die das aktive Engagement eines Benutzers erfordern – im Gegensatz zu einer bloßen Roboterreaktion. Die API-Überwachung von Apigee ermöglicht es, Warnbedingungen auf der Grundlage von Metriken oder Protokollen zu erstellen, und stellt gleichzeitig umsetzbare Informationen (z. B. Status-
code, Rate usw.) und Playbooks für die Diagnose bereit.
In den vielschichtigen Systemen ist das Symptom eines Teams („Was ist kaputt?“) die Ursache eines anderen nachgelagerten Systems („Warum?“). Selbst wenn einige Ereignisse nicht für umsetzbare Warnungen geeignet sind, muss ein Fehler eine Informationsübertragung an ein nachgelagertes System auslösen, um die Auswirkungen der vorgelagerten Abhängigkeit zu mindern. In solchen Fällen sollte die SAP-Basis-Mannschaft in automatisierte Warnmeldungen, die Gruppierung mehrerer Vorfälle in Benachrichtigungskanälen und die Nachverfolgung von Vorfällen investieren. Mit Apigee kann die IT-Abteilung beispielsweise die Warnmeldungen in Kanäle wie Slack, Pagerduty und Webhooks integrieren und gruppieren.
Moderne Produktionssysteme entwickeln sich ständig weiter, wobei eine derzeit seltene Warnung häufig und automatisierbar werden kann. Analog zur Bereinigung des Ticketrückstands müssen Warnrichtlinien regelmäßig überprüft werden, um sicherzustellen, dass neue Bedingungen identifiziert und vorhandene Warnmeldungen mit neuen Schwellenwerten, Priorisierungen und Korrelationen verfeinert werden. Kontrollen wie Advanced API Ops nutzen KI und ML, um anomalen Datenverkehr zu erkennen, der von zufälligen Schwankungen unterschieden wird, um genaue Warnungs-definitionen festzulegen.
Site Reliability Engineering
Das Buch „Site Reliability Engineering“ von Google präsentiert Argumente für eine effiziente Diagnose durch den Aufbau von Dashboards, die grundlegende Fragen zu jedem Dienst beantworten, normalerweise einschließlich einer Form der vier goldenen Signale: Latenz, Verkehr, Fehler und Sättigung.
Selbst wenn nur diese goldenen Metriken erfasst werden, kann sich der Informationsumfang dabei schnell summieren. Wie alle Softwaresysteme wird die Überwachung dann zu einem endlosen komplexen Loch, das kompliziert anzupassen und mühsam zu warten ist. Das Buch empfiehlt für die effektivsten und praktikabelsten Systeme daher, grundlegende Metriken zu sammeln und zu aggregieren, gepaart mit Warnungen und Dashboards.
Sofern der SAP-Bestandskunde ein umfangreiches API-Programm mit einem engagierten Basisteam zur Überwachung der APIs betreibt, können die sofort einsatzbereiten Überwachungs-Dashboards in der API-Verwaltungslösung (wie die API-Überwachung von Apigee) genutzt werden, um Echtzeiteinblicke in die APIs zu erhalten. Alternativ lassen sich auch Lösungen wie Cloud-Monitoring verwenden. Dadurch gewinnt man einen Überblick über den gesamten Anwendungsstapel – einzelne Metriken, Ereignisse und Metadaten lassen sich dort in einer reichhaltigen Abfragesprache für eine schnelle Analyse visualisieren. Die Quintessenz daraus: Die Nutzung eines einzigen Systems für den Anwendungsstapel bietet die Möglichkeit, dieses im Kontext zu beobachten, und beschleunigt das Navigieren zwischen Systemen.
Auch nachdem die Metriken gesammelt und aggregiert wurden, ist es wichtig, über aussagekräftige Datenvisualisierungen zu verfügen, um das Problem schnell verstehen und Korrelationen während der Dia-gnose identifizieren zu können. Wer sich bei Datenvisualisierungen auf zu viele Dashboards konzentriert, hat jedoch oft eine steile Lernkurve und erhöht die durchschnittliche Zeit für jede Diagnose. Deshalb bietet beispielsweise Apigee-API-Monitoring standardmäßig einige vordefinierte Visualisierungen, die gleichzeitig einfach und effizient sind.
End-to-End-Beobachtung
Die moderne Anwendungsentwicklung hat die Einführung von Praktiken wie Cloud, Container, APIs, Microservice-Architekturen, DevOps und SRE beschleunigt. Dies erhöht zwar die Release-Geschwindigkeit, macht einen Anwendungsstapel aber auch komplexer und fehleranfälliger. Beispielsweise erstreckt sich eine langsame Antwort auf eine Kundenanfrage dann über mehrere Mikrodienste, die verschiedene Teams organisieren und verwalten und möglicherweise keine individuellen Leistungsprobleme feststellen.
In solchen Fällen ist die verteilte Ablaufverfolgung der beste Weg für DevOps, Operations und SREs, um Antworten auf Fragen wie den Dienstzustand, die Grundursache von Fehlern oder Leistungsengpässe in einem verteilten System zu erhalten. SAP-Bestandskunden sollten dafür in die Instrumentierung ihrer verteilten Anwendungen mit Open-Source-Standards wie OpenCensus und Zipkin investieren. Die Verwendung von Tools wie Cloud Trace mit einer breiten Plattform-, Sprach- und Umgebungsunterstützung trägt dazu bei, Daten aus jeder Quelle einfach aufzunehmen.
Während die verteilte Ablaufverfolgung dabei hilft, das Problem auf einen bestimmten Dienst einzugrenzen, benötigt man in einigen Fällen möglicherweise weiteren Kontext, um die eigentliche Ursache zu ermitteln. Ein Beispiel dafür: Selbst wenn die Quelle eines Leistungsproblems auf einem API-Proxy isoliert wird, ist es immer noch ein mühsamer Prozess, den richtigen Engpass unter mehreren ausgeführten Richtlinien zu identifizieren. Mit Tools wie Apigee Debug kann die SAP-Basis-Mannschaft in einen API-Proxy-Flow hineinzoomen und die Details jedes Schritts untersuchen, um interne Details wie Richtlinienausführungen, Leistungsprobleme und Routing etc. anzuzeigen.
Die API-Überwachungsfunktionen von Apigee (basierend auf Metriken, die von den Interna des Systems offengelegt werden) arbeiten daher mit vorhandener Überwachungsinfrastruktur zusammen, um die mittlere Zeit bis zur Diagnose zu verkürzen und die Anwendung widerstandsfähiger zu machen. Die API-Überwachung von Apigee zu verwenden hilft dabei, eine hohe Resilienz mit umfassenden Kontrollen aufrechtzuerhalten, um die mittlere Zeit bis zur Diagnose und Lösung zu verkürzen. Insbesondere Betriebsteams können davon profitieren.
Die Wahl des Betriebsmodells:
Für die Wahl des Betriebsmodells gibt es eine Reihe von Entscheidungskriterien, dazu gehören unter anderem:
- Sicherheitsaspekte
- regulatorische Anforderungen
- Steuerbarkeit im Betrieb
- technische Anforderungen (Latenz, Bandbreite etc.)
- spezifische Service-Level