Lesezeit: 5 Minuten

DevOps? Warum APIOps der nächste logische Schritt ist

Die letzten beiden Artikel dieser Serie haben sich mit Team-Topologien und Teamschnitten sowie Kommunikationsmustern und kognitiver Last befasst. Jetzt wollen wir unser Blickfeld noch etwas weiten und uns mit dem Thema APIOps befassen. Im folgenden Artikel stellen wir diesen Begriff vor und erläutern, wie er sich in das Umfeld von DevOps einfügt. Außerdem lernen wir Tools kennen, die uns unterstützen.

APIs als Produkte

APIs genießen heute einen hohen Stellenwert, denn sie sind weit mehr als reine technische Schnittstellen (ursprünglich gedacht zur Ermöglichung einer Point-to-Point-Kommunikation) – sie bilden in ihrer Gesamtheit ein Ökosystem und Fundament für die Zusammenarbeit sowohl mit anderen internen Teams als auch mit Geschäftspartnern des Unternehmens (B2B).

APIs sind digitale Produkte, die auf einer Plattform oder Marktplatz angeboten und verschiedenen Konsumenten zur Verfügung gestellt werden. Eine API kann dabei von mehreren Konsumenten genutzt werden, im Extremfall ist dies sogar eine öffentlich angebotene API mit sehr vielen Endnutzern.

API-Lebenszyklus

Die Sichtweise von APIs als Produkten bringt mit sich, dass APIs einen eigenen Lebenszyklus haben, der getrennt vom Lebenszyklus des dahinterliegenden Services verwaltet wird. Der oft einhergehende API-first-Ansatz besagt, dass nicht nur Entwickler, sondern ein funktionsübergreifendes Team die APIs kollaborativ entwirft. APIs bilden fachlich geeignete Abstraktionen von der dahinter liegenden Service-Implementierung, und veröffentlichte APIs haben einen bindenden Vertragscharakter. Dementsprechend sind Änderungen an bestehenden APIs mit Vorsicht vorzunehmen („Operation am offenen Herzen“), damit deren aktive Basis an Konsumenten weiterhin die integrierten APIs ohne Einschränkungen oder Fehler nutzen kann – es gilt das Prinzip der sicheren Evolution: APIs sind geschlossen für Veränderungen an Bestehendem und offen für Erweiterungen (Open-Closed-Prinzip aus der Software-Architektur).

Einzug von DevOps-Praktiken = APIOps

Auch in dem Bereich rund um APIs finden zunehmend DevOps-Praktiken für das automatisierte Management des gesamten API-Lebenszyklus Anwendung. Wir fassen das unter dem Begriff APIOps zusammen – es handelt sich hierbei um eine Menge an (Entwicklungs-)Prozessen und Praktiken, um sowohl die Auslieferungsgeschwindigkeit als auch die Qualität der zur Verfügung gestellten APIs zu verbessern. Das Produktteam bekommt durch standardisierte, automatisierte Prozesse schneller Feedback zu ihren API-Produkten. Wir wollen schließlich mit Stolz am Ende des Tages sagen können: „So liefern wir APIs aus!“

Erspüren von Anpassungsbedarfen

Diese Systematik der Team-Topologien und ihrer Kommunikationsmodi ermöglicht eine gezielte Strukturierung der Inter-Team-Kommunikation im Hinblick auf das Gesetz von Conway zur Erreichung der gewünschten Systemarchitektur, die Angleichung der tatsächlichen kognitiven Last auf die Teamkapazität und den gleichermaßen effizienten wie effektiven Einsatz von Kommunikationsaufwänden. Das Definieren der Kommunikationsstruktur einer Organisation ist jedoch keine einmalige Aufgabe. Ändern sich Voraussetzungen, die einer gewählten Struktur zugrunde liegen, so muss auch die Struktur dem geänderten Bedarf angepasst werden - entweder temporär oder dauerhaft. Daher muss eine Organisation solche Anpassungsbedarfe aktiv erspüren und systematisch darauf reagieren.

Tooling rund um den OpenAPI-Standard

Das Fundament bildet eine Tool-Umgebung, die in der besten Art und Weise verwendet wird, um Entwicklungsteams unter die Arme zu greifen und zu unterstützen, die also so weit wie möglich in die bestehende CI/CD-Landschaft als Sammlung von Frühwarnsystemen integriert wird.

Pipelines und Automatisierung sind Multiplikatoren: je mehr Teams standardisierte Komponenten und Abläufe einsetzen (z. B. wiederverwendbare GitHub Actions), desto höher ist der Gesamtnutzen.

Die OpenAPI-Spezifikation hat sich als Standard etabliert.

Um diesen Standard herum gibt es ein breites, vielfältiges Angebot an Tools, zur Unterstützung der Automatisierung an den unterschiedlichen Phasen des API-Lebenszyklus:

Contract Testing – Testen und Verifikation von Interaktionen einzelner Consumer mit der API, beispielsweise mittels Pact. So lässt sich frühzeitig feststellen, welche Consumer von Änderungen an der API betroffen sind, und ob sie nach den Änderungen immer noch funktionieren werden. Dabei speichert ein Broker die Verträge und verbindet zwei unabhängig voneinander laufende Pipelines: eine auf Consumer-Seite, um die gewünschten Interaktionen festzuhalten, und die andere auf Provider-Seite, um das von den Consumern erwartete Verhalten tatsächlich gegen eine laufende Instanz des Services zu verifizieren.

Linter – Prüfung der OpenAPI-Spezifikationen auf syntaktische Korrektheit (gültiges YAML/JSON und OpenAPI-Format) sowie gegen einen bestehenden API-Styleguide (Governance), z. B. mittels Spectral, wo man sich aus einem bestehenden Fundus an Regeln bedienen, aber auch eigene Regeln definieren kann.

Einhaltung von Security-Regeln: Tools wie 42Crunch oder die „OWASP Top Ten“-Regelsätze in Spectral ermöglichen es uns, den Entwicklern der API frühzeitiges Feedback zu geben, ob etwaige Security-Regeln verletzt werden. Dieser „Shift-Left“-Ansatz spart potenziell sehr viel Frust und Wartungsaufwände, denn Security-Änderungen gehen aus unserer Erfahrung meist einher mit Breaking Changes.

Diff von OpenAPI-Spezifikationen (Vergleich der geänderten Version gegen die vorherige) bei jeder Codeänderung bzw. jedem Merge Request mit automatisierter Prüfung auf rückwärts-kompatible Änderungen. So wird die sichere Evolution von APIs gewährleistet, und man spart sich Wartungskosten, die durch den Parallelbetrieb zweier Versionen der API anfallen würden.

Beispiel-Anfragen und Interaktionen helfen beim Testen von APIs und können beispielsweise in einer Postman-Collection festgehalten werden.

Auf Basis einer OpenAPI-Spezifikation können durch Tools wie Prism bereits Mock-Server bzw. eine Sandbox-Umgebung bereitgestellt werden.

Viele API-Gateways unterstützen durch Admin- und Self-Service-Endpunkte automatisiert ausgelöste Transitionen im API-Lebenszyklus, z. B. das Veröffentlichen von APIs oder Deprecation und Parallelbetrieb.

Fazit und Ausblick

Nachdem wir nun kennengelernt haben, welche Anforderungen an DevOps-Praktiken im Bereich von APIs bestehen und wie diese mit der richtigen Toolunterstützung umgesetzt werden können, wollen wir uns im nächsten und abschließenden Blog-Artikel dieser Serie einem praktischen Beispiel widmen, das die vorgestellten Themen vereint.

Blogautor

Johannes Brühl
Softwarearchitekt ARS Computer und Consulting GmbH
Ihr Erfolg ist unser Ziel

Stehen Sie vor komplexen IT-Projekten? Mit unserer Expertise bieten wir Ihnen maßgeschneiderte Lösungen. Erfahren Sie mehr.

Werde Teil unseres Teams

Wir suchen ständig nach neuen Talenten. Für dich haben wir genau die richtige Stelle. Schau dir unsere offenen Positionen an.

Noch Fragen? Wir helfen Ihnen gerne!

Kompetenz 29.07.21

DevOps Kulturwandel

Technologischer Wandel und Ideen für neue Geschäftsmodelle entfalten ihr Potenzial ohne die gleichzeitige Einleitung eines Kulturwandels.

Unternehmen

Warum mit synaigy?

Wir leben im Zeitalter des Kunden. Die Veränderungen durch Digitalisierung und Vernetzung haben vor allem eines bewirkt: Der Kunde ist noch mehr in den Fokus gerückt. Er hat bislang nie dagewesene Bedeutung erlangt und ist als Marktteilnehmer mächtiger denn je geworden.

Blog 16.05.24

Angular 18: Das nächste Kapitel

Angular 18 bringt Leistungsverbesserungen, neue Features und Entwicklerwerkzeuge mit sich. Erfahren Sie mehr über Zoneless Angular, verbesserte Bundling-Strategien und Barrierefreiheitsverbesserungen. Entdecken Sie die Zukunft von Angular!

Kompetenz 29.07.21

DevOps und CI / CD

Eine DevOps Einführung gewinnt durch die Begleitung unserer Experten an Fahrt und Focus. Wir nehmen die Initiativen auf und erfassen den Kontext des Unternehmens.

Referenz

Warum Performance ausschlaggebend ist

Um die Leistungsfähigkeit einer Atlassian Toolchain messbar machen zu können, müssen individuelle Untersuchungen durchgeführt werden. catworkx setzt beim Controlling von Performance-Werten auf die Paarung von Open-Source-Software und eigenen, internen Werkzeugen, z.B. catworkx SPIN (Stress-App).

Das Thema IT-Security immer weiter in den Fokus
Blog 07.01.21

Warum der Überwacher überwacht werden muss

Nach dem SolarWinds Hack rückt das Thema IT-Security immer weiter in den Fokus. In unserem Blogbeitrag beschreiben wir alles zum SolarWinds-Hack, deren Folgen und was wir daraus lernen können.

Blog 04.07.24

Warum Shift Left jetzt unverzichtbar ist

Erfahren Sie, warum Shift Left und Feedbackschleifen unverzichtbar für eine erfolgreiche Softwareentwicklung sind. Verbessern Sie Qualität, Sicherheit und Effizienz in Ihrem Unternehmen.

Blog

Warum hat Atlassian die Nase vorn?

Was ist dran - an Atlassian. Warum ist Atlassian cool? Das hast Du Dich als angehender oder berufserfahrender IT'ler schon gefragt? Warum wir an Atlassian nicht vorbeikommen, warum wir uns damals für diese und keine anderen Produkte entschieden haben, das möchten wir Euch heute erzählen.

Blogbeitrag zur Authentifizierung als Schutz von Unternehmen
Blog 17.08.20

Warum Authentifizierung unser ständiger Begleiter ist

Eine der wichtigsten Grundlage zum Schutz Ihres Unternehmens ist die Authentifizierung. Daher wollen wir Ihnen in diesem Blogbeitrag die Bedeutung des Authentifizierungsverfahren vorstellen.

Blog 07.11.24

Warum der Cultural Change so schwer für uns ist

In unserem Gespräch ging es um Wandel und Transformation in Unternehmen. Ein kleiner Spoiler: Veränderungen sind oft unbequem, aber genau da beginnt der spannende Change-Prozess!

Blog 20.04.23

Warum dein Onlineshop ohne Personalisierung scheitern wird

Im Rahmen unseres zweiten gemeinsamen ,,insights!‘‘-Podcasts stürze ich mich gemeinsam mit UX-Expertin Katja Moritz auf das Thema Informationsverarbeitung im menschlichen Gehirn. Aus diesem Wissen lässt sich für Onlineshop-Betreiber ableiten, welche Fehler beim Aufbau einer Seite vermieden werden können, damit der Kunde sich nicht vorzeitig ausklingt. Eine breite Produktpalette mag durchaus seine Vorzüge haben, überfordert sie den Surfer jedoch, winkt der erfahrungsgemäß schnell ab und verabschiedet sich. Damit der Kunde bis zum Check-out an der Stange bleibe, müssten sich Shop-Betreiber etwas einfallen lassen, sagt die für das Kölner Unternehmen brytes tätige User Experience Managerin.

Blog 11.08.23

AWS Lambda: Erste Schritte mit Java

In diesem Artikel lernen wir, was die Vorteile bei der Verwendung von AWS Lambda sind u. wie wir Java-Code in AWS-Lambda installieren und ausführen können.

Blog 16.05.24

In 8 Schritten zu AI-Innovationen im Unternehmen

Künstliche Intelligenz ist längst mehr als ein Schlagwort – sie schafft echten Business Value. Mit unserem achtstufigen Ansatz unterstützen wir Unternehmen auf dem Weg zur erfolgreichen AI-Nutzung.

Blog 28.03.24

Grafana Loki: Die nächste Generation des Log-Managements

Grafana Loki: Erfahren Sie mehr über die innovative Log-Verwaltungslösung für Cloud-native Umgebungen und deren Vorteile im Vergleich zu anderen Tools wie ElasticStack und Splunk.

Blog 24.10.24

DevOps und APIOps in der Praxis: Best Practices

Wie lassen sich DevOps und APIOps erfolgreich kombinieren? In diesem Artikel erfahren Sie, welche Best Practices und Erfolgsfaktoren moderne Softwareentwicklung schneller und skalierbarer machen.

Blog 05.09.24

Effiziente DevOps-Teams: Teamschnitte und Kommunikation

Erfahre, wie durch gezielte Teamschnitte und optimale Kommunikationsmodi die kognitive Last in DevOps-Teams reduziert wird. So erreichst du effizientere Zusammenarbeit und kontinuierlichen Fortschritt.

Blog 23.08.24

"DevOps, quo vadis?" – Team Topologien

Erfahren Sie, wie Team-Topologien in DevOps Silos aufbrechen und erfolgreiche Zusammenarbeit fördern. Entdecken Sie die vier fundamentalen Teamarten.

Blog 19.09.23

Diversifizierung des Vertriebs - warum D2C nur ein Baustein

In der heutigen Zeit ist der Erfolg eines Unternehmens nicht nur vom Angebot und seiner Vielfalt abhängig, sondern auch von seiner Verfügbarkeit auf den verschiedenen Plattformen für die Kundinnen und Kunden. In dieser Folge erfährst du, wie die Nutzung eines Multichannel-Systems dir dabei helfen kann, neue Potenziale zu erschließen und deine Reichweite zu erweitern und warum die Diversifizierung deiner Vertriebswege essenziell für deinen Erfolg ist.

Blog 04.10.23

Warum sollte eine Multi Cloud mit der OVHcloud ergänzt werde

Dieser Blogbeitrag beschreibt das Konzept der Multi Cloud im Cloud Computing, bei dem Dienste und Ressourcen von verschiedenen Cloud-Anbietern kombiniert werden. Wir erläutern dir die Vorteile einer Multi-Cloud-Strategie und stellen verschiedene Cloud-Anbieter wie Amazon Web Services, Microsoft Azure, Google Cloud Platform und OVHcloud vor. Im Anschluss zeigen wir dir ein mögliches Szenario für die Integration von OVH-Leistungen in eine bestehende Multi-Cloud-Umgebung, um deine Datensouveränität zu gewährleisten.

Blog 17.01.25

Warum Barrierefreiheit auch ohne IT-Abteilung relevant ist

Barrierefreiheit ist nicht nur eine gesetzliche Pflicht, sondern eine Chance, neue Zielgruppen zu erschließen und die Nutzererfahrung zu verbessern – unabhängig von IT-Kompetenz.

Bleiben Sie mit dem TIMETOACT GROUP Newsletter auf dem Laufenden!