• Micha Boller

Was bedeutet eigentlich Cloud Native?

Aktualisiert: 20. Jan.

Der Begriff Cloud Native Development taucht immer häufiger auf. Was versteht man darunter?


Eine formelle Definition vom Begriff gibt es nicht. Die Cloud Native Computing Foundation (CNCF) pflegt ein Glossar und definiert den Begriff folgendermassen:


Cloud Native Technologien erlauben es Unternehmen, skalierbare Applikationen für verschiedene Cloud Umgebungen (public, private, hybrid) zu erstellen und zu betreiben. Die Technologien nutzen die Vorteile der Cloud Umgebung wie Skalierung, Fehlertoleranz, self-healing und effiziente Ressourcennutzung aus.

Was bedeutet der Cloud Native Ansatz nun für die Software Entwicklung?


Cloud Native Applications werden als eine Sammlung von unabhängigen, lose gekoppelten und nach Business Capabilities orientierten Services (Microservices) geplant und entwickelt. Diese Microservices werden dann in dynamischen Cloud Umgebungen betrieben. Die Microservice Architektur ist also zentral für Cloud Native Applications.


Die einzelnen Microservices werden in der Regel von verschiedenen Teams entwickelt und betrieben. Die Microservices kommunizieren via spezifizieren Schnittstellen (API) miteinander. Jedes Team kann selber entscheiden, mit welchen Technologien der Microservice entwickelt wird. Für ein Team kann Java Spring Boot am besten geeignet sein, für ein anderes Team Go. Auf zentrale Komponenten wie z.B. einem Enterprise Service Bus in SOA Architekturen wird verzichtet.