CI, CD, DevOps und die Cloud

Kurz erklärt: Was ist eigentlich Cloud-native Anwendungsentwicklung?

Brian Dawson

© Shutterstock / chanchai howharn

Der Begriff „Cloud Native“ ist bei den Mitgliedern der DevOps-Community beliebter denn je. Wer sich derzeit mit den Konzepten der Continuous Integration (CI) und der Continuous Delivery (CD) beschäftigt, hat bestimmt auch von „Cloud-nativer Anwendungsentwicklung“ gehört. Worum handelt es sich hierbei genau?

Cloud-native Anwendungen formen die grundlegenden Elemente, deren Dienste von DevOps-Teams gemäß des Microservices-Design-Ansatzes in Containern orchestriert werden. Im DevOps-Bereich setzt man dabei auf Automatisierung und kontinuierliche Verfügbarkeit. Daher wird alles in der Cloud so konzipiert, entwickelt und bereitgestellt, dass die Anwendungen aus fehlertoleranten Blöcken bestehen können, die eine größere Agilität und schnellere Einsetzbarkeit garantieren.

Die Cloud Native Computing Foundation (CNCF) definiert Cloud-Native-Anwendungen wie folgt:

  • Cloud-Native-Technologien ermöglichen es Unternehmen, skalierbare Anwendungen in modernen dynamischen Umgebungen zu entwickeln und auszuführen, beispielsweise in öffentlichen, privaten und hybriden Clouds;
  • dieser Ansatz basiert auf Containern, vernetzten Services, Microservices, einer fixen Infrastruktur und deklarativen APIs;
  • diese Techniken führen zu lose gekoppelten Systemen, die belastbar, handhabbar und kontrollierbar sind. Dank Automatisierung können Entwickler häufig, mühelos und vorhersehbar signifikante Änderungen vornehmen.
IT Security Camp
IT Security Camp

Interview mit Christian Schneider zum Thema „DevSecOps“.

DevSecOps ist, bezogen auf Security-Checks, die logische Fortführung der Automatisierung im DevOps-Sinne

Die 3 Kriterien für eine Cloud-Native-Anwendung

Entwickler müssen die Grundlagen der Cloud-Native-Anwendungen verstehen, um sie entwickeln zu können. Hier sind die drei wesentlichen Kriterien:

  1. Belastbarkeit: Cloud-native Anwendungen müssen unter allen Umständen zuverlässig Services bereitstellen. Daher muss die Architektur dieser Anwendungen derart gestaltet sein, dass Ausfälle selbst im schlimmsten vorhersehbaren Fall vermieden werden;
  2. wiederverwendbare Services: Die Service-Architektur muss die Zugänglichkeit von Anwendungen und Services gewährleisten. Der Entwickler muss daher deutlich definierte Schnittstellen bereitstellen und die Sichtbarkeit der Services gewährleisten;
  3. Skalierbarkeit: Die horizontale Skalierbarkeit ist eine Voraussetzung für den reibungslosen Betrieb. Um die Nachfrage zu befriedigen, muss sichergestellt werden, dass die zugrundeliegenden Rechen-, Speicher-, Datenbank- und Netzwerkressourcen sowie die Anwendungslogik mehrere Instanzen von Diensten unterstützen.

Cloud-native Anwendungen basieren, wie der Name schon sagt, auf entsprechenden Technologien und eignen sich daher besonders für den Einsatz im dezentralen Datenspeicher. Entwickler schätzen vor allem ihre Skalier- und Belastbarkeit.

In der CI/CD-Welt kann die Entwicklung nativer Cloud-Anwendungen einen intensiven Prozess darstellen, bei dem verschiedene Tools zum Einsatz kommen. Ein DevOps-Ansatz, bei dem die Bedürfnisse der Entwickler sowie die des Betriebs aufeinander abgestimmt sind und sich wechselseitig ergänzen, ist unerlässlich. Die Zusammenarbeit von Dev und Ops ermöglicht, die Pipeline, die Infrastruktur und die Tools zur Entwicklung des gesamten Stacks zu nutzen – wobei die Entwickler ohne Abhängigkeiten Code programmieren, entwickeln, testen und einsetzen können.

Diese Technologie erfordert zudem Mikroservices, die individuell tendenziell kleiner und überschaubarer sind als traditionelle Anwendungen. Die Kommunikation zwischen den Diensten sowie das Management ihrer Lebenszyklen kann jedoch komplex sein.

Nachdem native Cloud-Anwendungen nun klar definiert und verstanden sind, gilt es jetzt, die richtigen Werkzeuge zu finden, um diese Applikationen zu entwickeln – und zwar in Wochen statt in Monaten.

Geschrieben von
Brian Dawson
Brian Dawson
Brian Dawson ist DevOps-Evangelist bei CloudBees.
Kommentare

Hinterlasse einen Kommentar

avatar
4000
  Subscribe  
Benachrichtige mich zu: