Blog-Übersicht > > Was ist Cloud-native?

Unter Cloud-native versteht man eine agile, konzeptionelle Methode, um Anwendungen vollständig in der Cloud zu entwickeln und zu betreiben.

Bei Cloud-native geht es darum, in welcher Form Anwendungen erstellt und bereitgestellt werden, nicht an welchem Ort. Entsprechend konzipierte Applikationen laufen nicht mehr in der klassischen Serverfarm im hauseigenen Rechenzentrum, sondern von Anfang an in einer Cloud-Umgebung. Zum Einsatz kommen Container und Microservices als wesentliche Technologien. Hinzu kommen agile Methoden und DevOps-Konzepte im Sinne einer Prozessstrategie.

Cloud-native - DevOps, Microservices, Container und Continuous Delivery

Die Definition von Cloud-native beschreibt Anwendungen, die quasi in der Cloud geboren werden und umfasst eine Reihe von Technologien sowie Strategien. Bildquelle: Pivotal

Das besondere an Cloud-native ist also das Zusammenspiel aller Beteiligten sowie die Applikationsentwicklung allein für die Cloud. Dabei arbeiten Entwickler (Developers=Dev) und IT-Betrieb (Operations=Ops) von Beginn an eng zusammen (DevOps-Kultur), um gemeinsam optimale Lösungen zu liefern. Im ständigen Austausch und auf Basis einer gemeinsamen Ziel- und Wertvorstellung werden Produkte oder funktionsfähige Produkt-Features über automatisierte Prozesse kontinuierlich ausgeliefert (Continuous Delivery). Entwickler können somit deutlich schneller als zuvor auf produktive Umgebungen deployen. Ermöglicht wird dieses Vorgehen durch eine komplett neue Architektur.

Wie ist Cloud-native genau definiert?

Die Definition der Cloud Native Computing Foundation (CNCF) lautet wie folgt:

Cloud native Technologien ermöglichen es Unternehmen, skalierbare Anwendungen in modernen, dynamischen Umgebungen zu implementieren und zu betreiben. Dies können öffentliche, private und Hybrid Clouds sein. Best-Practises, wie Container, Service-Meshs, Microservices, immutable Infrastruktur und deklarative APIs unterstützen diesen Ansatz.

Die zugrunde liegenden Techniken ermöglichen die Umsetzung entkoppelter Systeme, die belastbar, handhabbar und beobachtbar sind. In Kombination mit einer stabilen Automatisierung können Software-Entwickler mit geringem Aufwand flexibel und schnell auf Änderungen reagieren. Die Ausführung dieser Anwendungen findet dabei auf einer containerisierten, dynamisch orchestrierten Plattform statt. Somit können Unternehmen die Vorteile des Cloud Computings voll ausschöpfen.

Cloud-native setzt auf Microservices

Der Cloud-native-Ansatz konzentriert sich auf das Erstellen von Anwendungen in Form so genannter Microservices. Diese Microservices werden von Grund auf als unabhängig voneinander konzipiert und für die Cloud-Skalierung optimiert. Dadurch kann eine kontinuierliche Bereitstellung gewährleistet werden, die für bessere Performance, Zuverlässigkeit und schnellere Time-to-Market sorgt.

Wie sorgt Cloud-native für bessere Wettbewerbschancen? KPIs, Strategien und Tipps im kostenfreien Whitepaper

Das übergeordnete und langfristige Ziel besteht darin, Geschwindigkeit, Skalierbarkeit und schließlich die Gewinnspanne zu verbessern. Im Fokus trägt der agile DevOps-Ansatz dazu bei, Risiken zu reduzieren. Denn es wird in kurzen Abständen entwickelt, getestet, verifiziert oder bei Bedarf korrigiert. Aus den einzelnen Microservices wiederum werden Bündel erstellt, die in (Docker-)Containern organisiert, in Kubernetes orchestriert und mit DevOps- und GitOps-Workflows gemanagt werden.

Microservices ersetzen Monolithen

Bei traditionellen Applikationen sind Funktionen häufig in einer einzigen Applikation (Monolith) gebündelt. Wird ein Feature angepasst, ist die gesamte Applikation betroffen. Performance und Flexibilität leiden. Microservices hingegen erlauben es aufgrund ihrer leichtgewichtigen Architektur, flexibel und autark auf Änderungen einzugehen. Eine Anwendung besteht somit aus vielen kleinen Einzelkomponenten. Jede dieser Komponenten führt jeweils nur eine Funktion aus, z. B. Authentifizierung, Benachrichtigung oder Zahlungsverarbeitung. Somit lassen sich Updates und Änderungen an einer Funktion jederzeit ganz gezielt umsetzen, ohne dass die Entwickler das ganze System anfassen müssen.

Ein Microservice stellt immer genau einen Funktionsblock zur Verfügung, der in jeder Cloud-Umgebung funktioniert. Container wiederum ermöglichen es, diese Anwendungen in kleinen, kompakten Umgebungen isoliert darzustellen und dennoch auf einen gemeinsamen „Betriebssystemkern“ zuzugreifen. Der Vorteil von Containern: Sie verbrauchen deutlich weniger Ressourcen als virtuelle Maschinen und werden nahezu umgehend gestartet. 

Kultureller Wandel im Unternehmen: agil, schrittweise, reversibel

Die Art und Weise, wie Software-Entwicklung und -Deployment inzwischen erfolgen bzw. erfolgen können, hat sich fundamental gewandelt. Was nicht mehr funktioniert, ist die jahre- oder jahrzehntelange Gewohnheit, in großen (Wasserfall-)Projekten zu denken und zu agieren. Das gelernte, tendenziell bedächtige und vorsichtige Vorgehen zur Risikovermeidung bedient der Cloud-native-Ansatz nicht. Es geht darum, durch kleine und reversible Schritte in kurzen Zeitabständen schneller in der Entwicklung voranzukommen. Der Umgang mit technischen Risiken erhält somit eine flexiblere Basis, um auf Markt- oder Kundenanforderungen zeitnah antworten zu können.

Cloud-native und traditionelle Applikationen im Vergleich

Der Hauptunterschied zwischen traditionellen und Cloud-native-Applikationen liegt in ihrer Architektur.

Cloud-native Applikationen Traditionelle Applikationen
Vorhersagbar Unberechenbar
Stateless/shared state Sticky
unabhängig vom Betriebssystem abhängig vom Betriebssystem
Kapazität in der richtigen Größe Überkapazität
Kollaborativ Silo-Denken
Continuous Delivery Wasserfall
Automatisiertes Skalieren Manuelle Skalierung
Schnelle Wiederherstellung/Neustart VMs werden nur langsam gestartet/wiederhergestellt

Schnell, ausfallsicher, autark

Die Vorteile von Cloud-nativen Applikationen ermöglichen es, skalierbare Anwendungen schneller zu entwickeln und zu aktualisieren. Fehlertolerant und responsiv können sie in jedem Cloud-Modell abgebildet werden, ob Private, Public oder Hybrid Cloud.

Die Top-3-Gründe für Cloud-native

  • Schneller als der Wettbewerb
    Applikationen werden speziell für die Cloud entwickelt: Kleine, unabhängige Feature/Funktionsblöcke lassen sich problemlos anpassen und verschieben. Kundenanforderungen können umgehend umgesetzt, auf Marktveränderungen kann direkt geantwortet werden.
  • Ausfallsichere Systeme und Microservices
    Ein Cloud-nativer Fokus hilft Entwicklern und Architekten, ausfallsichere Systeme zu entwerfen, die funktionsfähig und somit online bleiben, auch wenn es in der Umgebung zu Problemen kommt.
  • Anbieterunabhängig und flexibel
    Anwendungen laufen anbieterunabhängig auf jeder Cloud-Plattform. So kann ein Team Apps und Dienste genau dort ausführen, wo es für das Unternehmen am sinnvollsten ist.

Ist ein Unternehmen von den langfristigen Vorteilen Cloud-nativer Applikationen überzeugt und möchte das entsprechende Know-how aufbauen, findet es Unterstützung in der unabhängigen Beratung durch einen Managed Cloud Service Provider wie plusserver. Auf Basis einer intensiven, detaillierten Bestandsaufnahme werden Konzept und Strategie entwickelt, um alle Vorteile des Cloud-native-Ansatzes erfolgreich nutzen zu können.

Jetzt Artikel teilen:

  •  
  •  
  •  
  •  
  •  

Jetzt Blog abonnieren



pls_Whitepaper-Wettbewerbsvorteile-durch-Containertechnologien-DE_mockup

Business-Erfolg durch Cloud-native

Agile Unternehmen haben im Wettbewerb die Nase vorn - so können auch Sie von Cloud-nativen Technologien profitieren.

Hallo, wie kann ich Ihnen helfen?