Mobile-Menu

Definition Was ist Cloud-native?

Anbieter zum Thema

Cloud-native ist die Bezeichnung für einen Softwareentwicklungsansatz. Anwendungen werden dabei für den Einsatz auf einer Cloud-Infrastuktur entwickelt und erstellt. Sie schöpfen die Möglichkeiten des Cloud Computings und verteilter Cloud-Plattformen voll aus. Die Anwendungen bestehen aus einer Vielzahl einzelner, in Containern paketierten Microservices, die die benötigten Funktionen und Services bereitstellen.

Die wichtigsten IT-Fachbegriffe verständlich erklärt.(Bild:  © aga7ta - stock.adobe.com)
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - stock.adobe.com)

Wird Software speziell für das Cloud Computing entwickelt und erstellt, bezeichnet man diesen Softwareentwicklungsansatz und dieses Konzept als Cloud-native. Mit diesem Ansatz entwickelte Anwendungen werden häufig Native Cloud Applications (NCAs) genannt.

NCAs schöpfen die Möglichkeiten verteilter Cloud-Computing-Architekturen voll aus. Sie sind nicht an ein bestimmtes Betriebssystem oder an spezifische Hardware gebunden und setzen sich aus einem verteilten System vieler einzelner Microservices zusammen, die die von den Anwendungen benötigten Funktionen bereitstellen. Die Services sind in Containern paketiert und werden von einer Orchestrierungssoftware verwaltet. Durch den Cloud-native-Ansatz entstehen lose gekoppelte Softwaresysteme, die von der Skalierbarkeit, Flexibilität und Ausfallsicherheit der Cloud-Computing-Plattformen profitieren. Cloud-native unterstützt die verschiedenen Liefermodelle des Cloud Computings wie private, öffentliche und hybride Clouds sowie Multi-Clouds.

Die 2015 gegründete Cloud Native Computing Foundation (CNCF), ein Projekt der Linux Foundation, fördert Cloud-native Computing, Microservices und Containervirtualisierung. Die Organisation unterstützt Unternehmen bei der Entwicklung von Native Cloud Applications. Viele Einzelprojekte fasst die CNCF zu einem Cloud-native Stack zusammen, der die Grundrichtung für Cloud-native Anwendungen vorgibt. Der CNCF gehören über 500 Hersteller und Cloud-Computing-Betreiber an. Zu den von der CNCF verwalteten Projekten gehört auch Kubernetes, ein Open-Source-System zum Orchestrieren (Verwalten, Bereitstellen und Skalieren) von Container-Anwendungen.

Grundkonzept des Cloud-native-Ansatzes

Microservices und Container sind elementare Bestandteile des technologischen Grundkonzepts des Cloud-native-Ansatzes. Microservices lassen sich in einer Cloud-Architektur an verschiedenen Standorten auf unterschiedlichen Servern oder komplett serverlos betreiben. Sie sind lose gekoppelt, funktionieren in beliebigen Cloud-Umgebungen und stellen jeweils einzelne spezifische Funktionen für Cloud-native Anwendungen zur Verfügung.

Native Cloud Applications bestehen aus einer Sammlung vieler Microservices, die über APIs und Messaging-Protokolle miteinander kommunizieren. Die einzelnen Microservices lassen sich unabhängig von anderen Microservices starten, anhalten, skalieren, verändern oder upgraden. Sie sind in Containern paketiert, die wiederum über eine Container-Orchestrierungssoftware verwaltet, bereitgestellt und skaliert werden. Im Gegensatz zu herkömmlichen monolithischen Anwendungen sind bei Änderungen nicht mehr die kompletten Anwendungen, sondern nur einzelne Microservices betroffen. Die Aufspaltung monolithischer Anwendungen in Cloud-native Anwendungen bestehend aus vielen unabhängigen Microservices unterstützt zudem das DevOps-Konzept. DevOps sorgt für eine engere Verzahnung der Softwareentwicklung und des Betriebs und verbessert die Zusammenarbeit der Teams. Software lässt sich dank DevOps schneller und mit höherer Qualität entwickeln und bereitstellen. Die Auslieferung der Microservices erfolgt kontinuierlich und automatisiert im Rahmen von Continuous-Delivery- und -Integration-Prozessen (CI/CD).

Typische Merkmale und Vorteile

Mit dem Cloud-native-Ansatz entwickelte Anwendungen besitzen typische Merkmale und bieten gegenüber herkömmlichen monolithischen Anwendungen zahlreiche Vorteile. Zu diesen Merkmalen und Vorteilen zählen:

  • hoher Abstraktionsgrad gegenüber Hardware, Servern und Betriebssystemen
  • unabhängig von der zugrundeliegenden Infrastruktur
  • unabhängig funktionierende, in großem Umfang skalierbare Microservices
  • hohe Flexibilität und Agilität in der Softwareentwicklung und -bereitstellung
  • schnelle Bereitstellung von Anwendungen
  • direkte, schnelle Implementierung von Anpassungen und Änderungen - schnelles Ausrollen von Updates ohne Ausfallzeiten
  • hoher Automatisierungsgrad
  • schnellen kleine, unabhängige und flexible Entwicklerteams verantworten die einzelnen Microservices
  • gute Beobachtbarkeit des Anwendungssystems
  • elastische Anpassung an die tatsächlichen und aktuellen Workload-Anforderungen (keine Überprovisionierung)
  • auf beliebige Cloud-Plattformen portierbar
  • Cloud-Umgebung und -Anbieter mit bestem Preis-Leistungs-Verhältnis frei wählbar
  • keine Abhängigkeit von einem einzelnen Anbieter
  • anwendungsinterne Redundanz durch Unabhängigkeit der Microservices - hohe Fehlertoleranz und Verfügbarkeit der Anwendung
  • Einsatz von weit verbreiteten, etablierten Open-Source-Technologien

(ID:48741525)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Netzwerktechnik, IP-Kommunikation und UCC

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung