Cloud Native ist einer dieser Begriffe, die auf der Welle des Hypes in der Tech-Presse mitschwimmen. Der Begriff ist derzeit so angesagt, dass manche Unternehmen ihre Produkte und Dienste einem „Cloud-Native-Washing“ unterziehen, um auf der Cloud-Native-Welle mitzureiten.
Leider verstehen viele von ihnen nicht, was Cloud Native ist oder worin seine wesentlichen Vorteile liegen. Doch wie Haie, die Blut im Wasser wittern, erkennen diese Unternehmen durchaus, dass eine zweite Cloud-Computing-Revolution bevorstehen könnte.
Beginnen wir mit der Klärung der Begriffe. Viele verstehen den Ausdruck „Cloud-Native-Entwicklung“ genau so, wie er klingt: die Entwicklung von Softwaresystemen, die nativ für einen bestimmten Cloud-Anbieter wie AWS, Microsoft oder Google sind. Dadurch können sie die nativen Sicherheits-, Governance- und Datenbankdienste dieses Anbieters nutzen und der Anwendung ermöglichen, das Maximum aus dieser Cloud-Plattform herauszuholen.
Im Gegensatz dazu sind nicht native Systeme von einem bestimmten Cloud-Anbieter entkoppelt. Die Systeme können zwar ausgeführt werden und funktionieren, nutzen aber keine nativen Cloud-Dienste. Daher können ihre Betriebskosten etwas höher ausfallen, und sie profitieren nicht von nützlichen nativen Cloud-Diensten, die die Leistung der Anwendung verbessern würden. Da sie keine Dienste des nativen Cloud-Anbieters nutzen, müssen Sie diese Dienste selbst entwickeln oder integrieren.
Trotz derjenigen, die den Begriff wörtlich nehmen, betrachtet eine wachsende Zahl von Menschen und Organisationen Cloud Native als ein sich herausbildendes Architekturmodell.
Siehe auch: Gewinner und Verlierer im Cloud-Native-Bereich
Welchen Wert hat „Cloud Native“?
Die sich herausbildende Definition von Cloud Native kann als die eigentliche Revolution in der zukünftigen Konzeption, Entwicklung, Bereitstellung und dem Betrieb von Systemen verstanden werden. Anders gesagt: Dieser neue Cloud-Native-Ansatz überdenkt, wie wir mehr Wert aus den von uns entwickelten Softwaresystemen schöpfen und wie wir diese Ansätze auf allen Plattformen einsetzen – nicht nur in öffentlichen Clouds.
Diese neue Betrachtungsweise des Werts von Cloud Native umfasst die Erklärung der Cloud Native Computing Foundation (CNCF): „Cloud-Native-Technologien ermöglichen es Unternehmen, skalierbare Anwendungen in modernen, dynamischen Umgebungen wie öffentlichen, privaten und hybriden Clouds zu entwickeln und auszuführen.“ Vielleicht treffender formuliert: Cloud-Native-Anwendungen lassen sich in mehreren Cloud-Umgebungen, einschließlich herkömmlicher Plattformen, bereitstellen. Das ist ein zentraler Bestandteil des sich herausbildenden Cloud-Native-Konzepts und erklärt, worum es bei dem ganzen Wirbel geht.
Die CNCF verfolgt einen umfassenderen Gedanken: Wenn Sie Cloud Native richtig umsetzen, ermöglichen Sie dynamisches und skalierbares Anwendungsverhalten auf vielen Plattformen, darunter öffentliche Clouds, private Clouds und sogar Legacy-Systeme. Dass dabei auch Legacy-Systeme und ältere private Clouds unterstützt werden, überrascht viele. Es geht jedoch darum, eine Methode zu fördern, mit der sich etwas umsetzen lässt, ohne sich auf die zugrunde liegende Technologie zu konzentrieren.
Siehe auch: Die führenden Cloud-Unternehmen
Container und Microservices
Typischerweise erfordert ein Cloud-Native-Ansatz den anspruchsvollen Einsatz von Containern, Container-Orchestrierung und Microservices, um eine Anbieterbindung zu vermeiden – ein wünschenswertes Ergebnis des Wechsels zu Cloud Native.
Neue Cloud-Native-Systeme definieren in der Regel einen gemeinsamen Stack, in dem private und öffentliche Clouds die Grundlage bilden und auf beliebigen Plattformen betrieben werden können. Zu diesen Plattformen gehören Legacy-Computing, Edge-Computing und alle künftig möglicherweise entstehenden Plattformen. Auch hier geht es darum, Dinge anders zu entwickeln und den „großen Zusammenhang“ sowie die übergeordneten Ziele des in Entwicklung befindlichen Systems in den Mittelpunkt zu stellen. Würde der Fokus lediglich auf einer bestimmten Technologie liegen, wäre der Nutzen nur von kurzer Dauer.
All dies vorausgesetzt, lässt sich Cloud Native als ein Ansatz mit den folgenden Vorteilen definieren:
- Er nutzt die von öffentlichen Clouds gebotenen architektonischen Vorteile, ohne dass die Ausführung in bestimmten Clouds erforderlich ist.
- Die Architektur besteht aus einer Sammlung unabhängiger Microservices, die in einem oder mehreren schlanken Containern.
- Die grundlegenden Plattformen, einschließlich Clouds, stellen der Anwendung typischerweise keine Dienste direkt bereit, sondern verwenden eine Abstraktionsschicht.
- Diese Cloud-Native-Container ermöglichen eine vereinfachte Bereitstellung auf jeder Plattform, einschließlich Legacy-Systemen, Cloud-Computing-Plattformen und sogar entfernten Geräten.
- Die Cloud-Native-Container können von den Plattformen bereitgestellte allgemeine Dienste nutzen – im Rahmen der jeweiligen Plattform, etwa für Skalierbarkeit.
- Allgemeine Dienste wie Sicherheit, Governance, und Betrieb lassen sich containerübergreifend definieren und mit oder ohne direkten Kontakt zur Host-Plattform nutzen.
- Cloud-Native-Container können ohne wesentliche Beeinträchtigung des Softwareverhaltens und der Muster der Datenspeicherung von einer Plattform auf eine andere verschoben werden, etwa von Cloud zu Cloud oder von der Cloud zu einem Legacy-System.
Siehe auch: Warum Cloud Cloud Native bedeutet
Was ist die Cloud-Native-Revolution?
Viele der oben aufgeführten Vorteile finden sich in früheren Architekturansätzen, etwa bei der Container-Entwicklung und -Orchestrierung, oder in aktivierenden Technologien wie den von den meisten öffentlichen Cloud-Anbietern angebotenen Diensten.
Neu ist hier, dass wir Cloud Native als ein Konzept des „Wie“ und nicht des „Was“ betrachten. Bei Cloud Native geht es nicht um Technologie, sondern darum, wie wir Systemdesign, Entwicklung und Bereitstellung angehen – unabhängig davon, welche Technologie und/oder Plattform wir einsetzen.
Der Fokus von Cloud Native liegt nicht auf den neuesten und angesagtesten Cloud-Technologien zur Entwicklung und Bereitstellung von Anwendungen. Cloud Native nutzt mehrere offene Technologien, die für sich genommen keine vollständigen Lösungen darstellen. In Kombination mit den oben aufgeführten spezifischen Architekturmustern lässt sich jedoch eine Vielzahl von Technologien nutzen, um den Cloud-Native-Designmustern gerecht zu werden.
Das Ziel von Cloud Native besteht darin, Softwaresysteme bereitzustellen, die mit größerer Wahrscheinlichkeit die anstehenden Geschäftsprobleme lösen und langfristig beständiger sind als herkömmlichere Ansätze der Anwendungsentwicklung. Cloud Native bedeutet außerdem, dass wir uns nicht länger auf die Entwicklungstechnologie oder die Plattformen konzentrieren. Ein Nebeneffekt des Wechsels zur Cloud-Native-Entwicklung besteht darin, dass wir nun definieren, wie etwas umgesetzt wird – und nicht, welche Technologie dafür verwendet werden soll.
Cloud Native wird für diejenigen Anbieter ein verwirrendes Dilemma darstellen, Cloud-Anbieter ebenso wie andere, die ihre Technologie als Quelle eines bestimmten, von ihren Wettbewerbern abweichenden Nutzens positionieren wollen. Der Cloud-Native-Ansatz wird viele Technologieanbieter und Cloud-Service-Provider dazu zwingen, Wege zu finden, wie sie gut zusammenarbeiten können, um Cloud-Native-Entwicklung und -Bereitstellung zu ermöglichen. Dabei werden zahlreiche unterschiedliche Technologiekonfigurationen und Lösungen Teil der letztendlichen Cloud-Native-Lösung.
Notwendige Elemente der Cloud-Native-Revolution
Diese Revolution funktioniert nur, wenn einige wenige Bausteine zusammenkommen.
Erstens muss Cloud Native von denjenigen angenommen werden, die mit der Entwicklung und Bereitstellung von Systemen betraut sind. So überzeugend Cloud Native auch sein mag, die Akzeptanz wird am schwierigsten zu erreichen sein, da die Richtung des Technologiemarkts stets schwer vorherzusagen ist.
Zweitens müssen Anbieter und Cloud-Service-Provider zusammenarbeiten, um austauschbare und weitgehend offene Technologien bereitzustellen. Sie dürfen sich nicht weiterhin auf einzigartige Vorgehensweisen konzentrieren, die außerhalb der Grenzen von Cloud Native liegen. Stattdessen müssen sie sich darauf konzentrieren, wie ihre Kunden Systeme entwickeln möchten und welche übergeordneten Ziele diese Systeme verfolgen.
Sind diese beiden Bausteine vorhanden, wird der Begriff „Cloud-Native-Revolution“ seine wahre Bedeutung annehmen. Cloud Native stellt einen grundlegenden Wandel in der zukünftigen Entwicklung und Bereitstellung von Systemen dar. Darüber hinaus geht es darum, die Technologieabhängigkeit aus der Gleichung zu entfernen. Das war in der Vergangenheit nie möglich. Sehen wir also, ob wir Cloud Native jetzt zum Erfolg führen können, damit uns eine bessere Zukunft bevorsteht.
Siehe auch: Technologieprognosen für 2022: Cloud, Daten, Cybersicherheit, KI und mehr

