Was bedeutet eigentlich Cloud-Native?
Cloud-Native beschreibt eine Applikation, die absichtlich für eine Cloud-Umgebung entwickelt wurde, sowie die Eigenschaften solcher Applikationen.
Die Definition von Cloud-Native
Laut Google Trends wurde der Begriff in den frühen 2000er-Jahren, den Anfangstagen des Cloud Computing, häufig verwendet und gewann im Jahr 2015 Momentum als industrielles Modewort. Jeder scheint eine andere Vorstellung davon zu haben, was genau Cloud-Native bedeutet. In einem Versuch, den Begriff zu vereinheitlichen, definierte die Cloud Native Computing Foundation Cloud Native als «Technologien, [die] Unternehmen erlauben, skalierbare Applikationen in modernen, dynamischen Umgebungen wie öffentlichen, privaten und hybriden Clouds zu erstellen und auszuführen. Container, Service Meshes, Microservices, unveränderliche Infrastruktur und deklarative APIs sind Beispiele für diesen Ansatz. Diese Techniken produzieren lose gekoppelte Systeme, die widerstandsfähig, verwaltbar und beobachtbar sind. In Kombination mit einer robusten Automatisierung ermöglichen sie Entwicklern, Änderungen mit hoher Auswirkung häufig und vorhersehbar mit minimalem Aufwand durchzuführen.» Abbildung 1: Google-Suchanfragen für den Begriff ‹Cloud Native›Cloud-Native Architektur
Applikationen werden durch verschiede Modernisierungsstufen differenziert. Traditionelle Applikationen wie Luware LUCS werden on-premise mit einer monolithischen Architektur aufgebaut, d. h. sie benutzen eine singuläre Codebasis für alle Funktionen. In einer monolithischen Architektur sind die Entwicklungsteams auf eine oder zwei Programmiersprachen beschränkt, Codeänderungen müssen sorgfältig koordiniert werden und die Bereitstellung neuer Funktionen erfordert einen hohen Testaufwand im Vorfeld. Der nächste Schritt im Modernisierungsprozess besteht darin, die Applikation in die Cloud zu migrieren. Das bedeutet, dass die Applikation nicht mehr auf dem Server eines Unternehmens vor Ort läuft, sondern in ein externes Rechenzentrum verlagert wird, worauf Unternehmen über das Internet Zugriff haben. Luware Stratus war ein Beispiel für eine solche Infrastructure-Ready-Applikation. Der Höhepunkt der Modernisierung ist eine Cloud-Native Applikation wie Luware Nimbus, die explizit mit einer Microservice-Architektur entwickelt wurde, um in einer Cloud-Umgebung optimal zu funktionieren und zu skalieren.
Abbildung 2: Unterschiedliche Modernisierungsstufen am Beispiel der Luware-Produkte [Grafik von Microsoft adaptiert]
Microservices sind ein integraler Bestandteil von Cloud-Nativen Applikationen. Microservices teilen die Codebasis in autonome Subsysteme auf, die ihre eigene Funktionalität und ihren eigenen Verantwortungsbereich haben. Diese Microservices werden dann containerisiert, was im Grunde bedeutet, dass der Code und alles, was er zur Ausführung benötigt, gebündelt und von der Betriebsumgebung isoliert wird. So gibt es keinen Konflikt zwischen verschiedenen Programmiersprachen oder Frameworks und man kann Container einfach in verschiedene Umgebungen verschieben. Container können hinzugefügt, ersetzt oder aktualisiert werden, ohne die Applikation zu beeinträchtigen, wodurch die Applikation agil und hyper-skalierbar wird. Orchestratoren, wie z.B. Kubernetes, werden eingesetzt, um Container bedarfsgerecht zu verwalten und eine optimale Ressourcenverteilung zu gewährleisten. Solche Plattformen erleichtern auch die Identifizierung eines Containers mit einem Fehler und ermöglichen so eine unterbrechungsfreie und einfache Fehlersuche. Dies erleichtert die kontinuierliche Aktualisierung der Software. Während in einer monolithischen Applikationen wie LUCS Updates halbjährlich bereitgestellt werden, werden neue Funktionen in einer Cloud-Nativen Applikationen wie Nimbus wöchentlich oder sogar noch häufiger ausgerollt.
Cloud-Native Entwicklung
Cloud-Native ist mehr als nur eine Ansammlung von Technologien. Die Umstellung auf Cloud-Native Software ist mit erheblichen Entwicklungskosten sowie kulturellen und organisatorischen Veränderungen verbunden. Software-Anbieter müssen sich komplett neu organisieren und eine Cloud-Native Denkweise adaptieren. Der traditionelle monolithische Ansatz fördert eine konservative und vorsichtige Arbeitsweise, da ein fehlendes Semikolon ein ganzes System ausser Gefecht setzen kann. Eine Cloud-Native Philosophie hingegen unterstützt eine konstruktive Fehlerkultur, erhöht die Risikobereitschaft und bietet Entwicklern die Chance, mit neuen Funktionen zu experimentieren. Prozesse werden beschleunigt und für eine kontinuierliche Bereitstellung optimiert. Schnelle Innovationen sind daher erforderlich, um mit den sich schnell ändernden Kundenbedürfnissen Schritt zu halten. Eine Cloud-Native Denkweise umfasst alle architektonischen Möglichkeiten der Cloud in Bezug auf Flexibilität, Agilität und Skalierbarkeit.Zusammengefasst
- Cloud-Native kann sich auf die Tatsache beziehen, dass eine Applikation in einer Cloud-Umgebung optimal skaliert und funktioniert. Ausserdem kann sich Cloud-Native auf die Hauptmerkmale von Cloud-Native-Applikation wie eine Microservice-Architektur beziehen.
- Cloud-Native Applikationen sind auf Microservices aufgebaut. Microservices werden in Container verpackt und mit z.B. Kubernetes dynamisch orchestriert, um die Ressourcen optimal zu verteilen.
- Zu den Vorteilen einer Microservice-Architektur gehören die praktisch unbegrenzte Skalierbarkeit sowie die erhöhte Agilität, um auf Marktanforderungen zu reagieren.
- Microservices erleichtern die Wartbarkeit von Applikationen. Updates können durchgeführt werden, ohne die Applikation herunterzufahren. So wird die Resilienz gegenüber Ausfällen verbessert.
- Die Umstellung zur Cloud-Nativen Softwareentwicklung erfordert eine andere Denkweise, um alle architektonischen Möglichkeiten der Cloud zu nutzen.
Stay Up to Date With Customer Service Trends
Blog
Finanzsicherheit: Die Macht der Überwachung
Erfahren Sie, wie Finanzinstitute Fehlverhalten aufdecken und verhindern, die Einhaltung von Vorschriften gewährleisten und sensible Daten schützen können.
Wir feiern den hundertsten Luware Nimbus Release
Entdecken Sie die hundertste Version von Luware Nimbus! Neue Attendant Console, erweiterte Funktionen und nahtloser Übergang. Erfahren Sie mehr.
Die Übernahme von Intelligent Voice durch Verint: Ein Game-Changer für Luware Recording und unsere Kunden
Entdecken Sie, wie die Übernahme von Intelligent Voice durch Verint die Luware-Aufzeichnung revolutioniert. Profitieren Sie von verbesserter KI, Spracherkennung und mehrsprachiger Unterstützung für he...