Cloud-Native Architektur

Cloud Technologien haben auch in der Welt der Anwendungsentwicklung Änderungen mit sich gebracht - aber was steckt hinter dem Begriff "Cloud-Native"?

Durch die Ankunft von neuen, optimierten Möglichkeiten im Umfeld der Kollaboration und Produktivität in der Cloud ist auch eine neue Art der Entwicklung von Applikationen notwendig geworden. Eine, mit der man seine Anwendungen mit der, für diese neue Welt der Hybrid-Umgebungen notwendigen Flexibilität und Portabilität ausrüsten kann. Dieser neue Ansatz zur Applikationsentwicklung heißt Cloud-Native Architektur.

Trotz der Bezeichnung geht es in diesem Ansatz nicht alleine darum, Applikationen in der Cloud lauffähig zu gestalten. In Wirklichkeit ist das Gegenteil der Fall: es geht darum, Applikationen in jeder beliebigen Umgebung (also nicht nur in der Cloud, sondern auch on-premises und an virtuellen Maschinen) betreiben zu können, und bei Bedarf diese auch Flexibel zwischen den unterschiedlichen Umgebungen verschieben zu können. Dieser Ansatz erfordert eine ganz neue Denkweise in der Entwicklung, im Deployment und in der laufenden Verwaltung der Applikationen. 

In dem „traditionellen“ Ansatz wurden Applikationen für Langlebigkeit und Stabilität konzipiert. Obwohl diese weiterhin essenzielle Eigenschaften einer modernen Anwendung sind, sind solche sogenannten monolithischen Applikationen längst nicht flexibel genug. Denn in einer cloud-betriebenen Geschäftswelt reichen Langlebigkeit und Stabilität nicht mehr aus: Applikationen müssen rasch auf den Markt gebracht werden, die Funktionen dieser müssen voneinander abgrenzbar und wiederverwendbar sein und Prozesse müssen zum höchstmöglichsten Grad automatisiert werden.

Um das Ziel, Cloud-Native zu werden zu erreichen, muss man die genutzten Tools und auch die Prozesse im gesamten Unternehmen unter die Lupe nehmen und neu denken. Die Änderungen betreffen also nicht nur das interne Entwicklerteam.  

Überblick - Traditionell vs. Cloud-Native Ansatz

Development 

In der cloud-native Anwendungsentwicklung stehen Portabilität und Wiederverwendbarkeit im Mittelpunkt. Im Gegensatz zum traditionellen, „monolitischen“ Ansatz, in dem Applikationen „gebündelt“ programmiert und deployed wurden, wird im Fall von cloud-native eine microservicebasierte Architektur erzielt.

Aber wie sieht das in der Praxis aus? 

Im traditionellen Entwicklungsansatz wird eine Software, wie etwa ein Webshop so programmiert, dass Funktionen, z.B. Katalog, Bestellkorb, Zahlungsabwicklung und „Watchlist“ alle in einem, quasi als Paket programmiert und deployed werden. Wenn aber der gleiche Webshop auf Basis der Cloud-Native-Methodik entwickelt wird, werden all diese Funktionen jeweils als alleinstehende Services programmiert, die untereinander mittels APIs oder Messaging kommunizieren können. 

Anschließend können diese Microservices – oder eben auch Prozesse oder ganze Anwendungen – in Containers verpackt werden. Das macht es möglich, einzelne Updates oder Bugfixes zu Funktionen einzeln ausrollen zu können, ohne dass dabei die anderen Funktionen der Applikationen betroffen sind. Außerdem werden solche Komponenten dadurch einfach wiederverwendbar und können in anderen Applikationen einfach wieder zum Einsatz gebracht werden.  

Container sind praktisch überall ausführbar. Dies vereinfacht die Bereitstellung und den Betrieb auf virtuellen Maschinen, in Bare-Metal-Umgebungen via Docker oder auf Kubernetes-Clustern, im lokalen Rechenzentrum oder auch in der Public Cloud.

Prozesse

Wenn man cloud-native Prozesse auch im eigenen Unternehmen anwenden möchte, müssen nicht nur das Entwicklerteam, sondern auch IT-Operations, Qualitätsmanagement und auch die IT-Security-Abteilung darin involviert werden. Denn bei diesem Ansatz gehört die Praxis, in der Teams verteilt und isoliert voneinander arbeiten abgeschafft, und es muss eine DevOps-Kultur adaptiert werden. Das heißt, dass Development, Operations, QM und Security in enger Abstimmung und mit integrierten Prozessschritten arbeiten. Dies ist erforderlich, sodass auch entsprechende Automatisierungsmaßnahmen zur Optimierung des Applikation-Lifecycles umgesetzt werden können.

Eine dieser ist die Automatisierung von Integration- und Deployment-Prozessen. Die Delivery-Pipeline einer cloud-native Anwendung kann durch Continuous Integration/Continuous Deployment vollständig automatisiert werden. Das heißt, dass jede vom Entwicklerteam implementierte Änderung im Source-Code automatisch von der Development- in die Testumgebung verschoben, dort für eventuelle Fehler überprüft und bei fehlerfreiem Code automatisch zum produktiven Einsatz gebracht wird. Dies verkürzt Rollout-Prozesse und erspart Mitarbeitern wertvolle Zeit.

Auch in der Skalierung von Cloud-Native-Anwendungen werden neue, effektivere Methoden eingesetzt: statt vertikales Skalieren werden solche Applikationen bei erhöhtem Nutzungsbedarf horizontal skaliert. Das bedeutet, statt die Kapazität einzelner Nodes durch Hardwareverbesserungen zu erhöhen, werden hier zusätzliche Nodes gestartet, die der gewünschten Funktion bessere Verfügbarkeit gewährleisten. Ein großer Vorteil der Methodik ist es, Verfügbarkeit im laufenden Betrieb optimieren zu können. 

Die zwei bekanntesten Automatisierungsplattformen für Container-Management sind Kubernetes und OpenShift, wobei Kubernetes eine Open-Source-Option darstellt und in vielen verschiedenen Distributionen auffindbar ist. OpenShift ist hingegen eine, für Enterprise-Anforderungen optimierte Lösung von Red Hat mit erweiterten Verwaltungs- und Sicherheitskapazitäten.

People

Die Umstellung auf eine Cloud-Native-Strategie erfordert Offenheit und Kollaboration seitens Ihrer Mitarbeiter: die Tools und Prozesse, die zum Einsatz gebracht werden, müssen von jedem akzeptiert und verstanden sein. Es muss klar definiert und kommuniziert werden, welche Vorteile und Verbesserungen mit dem neuen Ansatz angestrebt und wie diese erreicht werden. Um die allgemeine Akzeptanz Ihrer Mitarbeiter zu erhöhen, ist ein umfangreicher Change-Prozess im Unternehmen empfehlenswert, der auch Workshops und Trainings für die Mitarbeiter enthält. 

Die oben beschriebenen Maßnahmen werden in den meisten Fällen Schritt für Schritt eingeführt, sodass diese den Alltagsbetrieb des Unternehmens nicht spürbar beeinflussen und dass Mitarbeiter sich zwischenzeitlich auch das notwendige Knowhow dieser Tools und Prozesse aneignen können. 

Mehr Fragen und Antworten rund um die Cloud im Blog.

Blog

Was ist die Cloud? 3 Use Cases zur Cloud-Transformation

Cloud ist mehr als nur Daten und Anwendungen in der Public Cloud. Erfahren Sie in unserem Blogbeitrag, welche Konzepte und Technologien wirklich hinter dem Begriff stecken – kompakt und verständlich!

Blog 24.11.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 3

Gedanken zu Möglichkeiten von Cloud-native-Architekturen und Kriterien zur Auswahl der Technologie: Standard nehmen oder sich dem Cloud-Anbieter ergeben?

Blog 24.11.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 3

Gedanken zu Möglichkeiten von Cloud-native-Architekturen und Kriterien zur Auswahl der Technologie: Standard nehmen oder sich dem Cloud-Anbieter ergeben?

Blog 10.11.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 2

Aufgaben von Softwarearchitekten im Cloud-native-Umfeld, benötigte Skills und ihr Arbeitsalltag zwischen Kundenanforderungen, Zieldefinition und Deadlines.

Blog 10.11.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 2

Aufgaben von Softwarearchitekten im Cloud-native-Umfeld, benötigte Skills und ihr Arbeitsalltag zwischen Kundenanforderungen, Zieldefinition und Deadlines.

Blog 27.10.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 1

Die beschleunigte Digitalisierung und ihr Einfluss auf Softwarearchitekturen und IT-Teams beschreibt der Autor. Sind Cloud-native-Strategien sinnvoll?

Blog 27.10.22

Architekturarbeit im Zeitalter Cloud-nativer Architekturen 1

Die beschleunigte Digitalisierung und ihr Einfluss auf Softwarearchitekturen und IT-Teams beschreibt der Autor. Sind Cloud-native-Strategien sinnvoll?

Blog 18.04.24

Cloud-Native Netzwerksouveränität mit Cilium und Kubernetes

Erfahren Sie alles über die revolutionäre Cloud-Native Netzwerksouveränität mit Cilium und Kubernetes. Optimieren Sie Ihre Netzwerkinfrastruktur für mehr Sicherheit und Leistung.

Blog 18.04.24

Cloud-Native Netzwerksouveränität mit Cilium und Kubernetes

Erfahren Sie alles über die revolutionäre Cloud-Native Netzwerksouveränität mit Cilium und Kubernetes. Optimieren Sie Ihre Netzwerkinfrastruktur für mehr Sicherheit und Leistung.

Blog 08.12.22

Teil 4: Eigenschaften einer Cloud-native Architektur

Beitrag zu Cloud-native Architekturen, ihre Möglichkeiten und Zielsetzungen sowie die Philosophie und Arbeitsweise, die daraus folgt.

Blog 08.12.22

Teil 4: Eigenschaften einer Cloud-native Architektur

Beitrag zu Cloud-native Architekturen, ihre Möglichkeiten und Zielsetzungen sowie die Philosophie und Arbeitsweise, die daraus folgt.

Blog 22.12.22

Teil 5 - Einfluss von Cloud-native auf die Architekturarbeit

Wir beleuchten technische Aspekte von cloud-native Architekturen, die Vorteile verteilter Systeme und wie wichtig API-Management-System ist.

Blog 22.12.22

Teil 5 - Einfluss von Cloud-native auf die Architekturarbeit

Wir beleuchten technische Aspekte von cloud-native Architekturen, die Vorteile verteilter Systeme und wie wichtig API-Management-System ist.

Kompetenz 26.02.25

Cloud-native Architektur

Digitale Services erfordern einen hohen Reifegrad in der Architekturarbeit! Service-Qualität, Verfügbarkeit, Stabilität und Vernetzung mit angrenzenden Ökosystemen sind die Spitze des Eisbergs, der von Ihren Kunden in der Verwendung Ihrer Services maßgeblich wahrgenommen wird.

Blog 01.08.24

Migration von HOST-Anwendungen zu AWS: Modernisierung

Legacy-Systeme bieten oft wertvolle Funktionen für Unternehmen. Dieser Artikel beschreibt, wie HOST-Anwendungen in die Cloud migriert werden können, ohne dass die Datensicherheit leidet. Lernen Sie, wie moderne AWS-Services nahtlos in bestehende Host-Landschaften integriert werden und profitieren Sie von den Vorteilen von Serverless-Technologien.

Blog 01.08.24

Migration von HOST-Anwendungen zu AWS: Modernisierung

Legacy-Systeme bieten oft wertvolle Funktionen für Unternehmen. Dieser Artikel beschreibt, wie HOST-Anwendungen in die Cloud migriert werden können, ohne dass die Datensicherheit leidet. Lernen Sie, wie moderne AWS-Services nahtlos in bestehende Host-Landschaften integriert werden und profitieren Sie von den Vorteilen von Serverless-Technologien.

Service

Cloud Transformation & Container Technologien

Public, Private oder Hybrid? Wir helfen Ihnen bei der Ausarbeitung Ihrer Cloud-Strategie, sodass Sie die Vorteile der Technologie komplett ausnutzen können.

Haderbild zu IBM Cloud Pak for Application
Technologie

IBM Cloud Pak for Application

Mit dem IBM Cloud Pak for Application existiert ein solides Fundament, um „Cloud-Native“ Applikationen zu entwickeln, zu deployen und zu modernisieren. Da agiles Arbeiten für einen schnelleren Release-Zyklus unerlässlich ist, kommen unter anderem vorgefertigte DevOps Prozesse zum Einsatz.

Haderbild zu IBM Cloud Pak for Application
Technologie

IBM Cloud Pak for Application

Mit dem IBM Cloud Pak for Application existiert ein solides Fundament, um „Cloud-Native“ Applikationen zu entwickeln, zu deployen und zu modernisieren. Da agiles Arbeiten für einen schnelleren Release-Zyklus unerlässlich ist, kommen unter anderem vorgefertigte DevOps Prozesse zum Einsatz.

Haderbild zu IBM Cloud Pak for Application
Technologie

IBM Cloud Pak for Application

Mit dem IBM Cloud Pak for Application existiert ein solides Fundament, um „Cloud-Native“ Applikationen zu entwickeln, zu deployen und zu modernisieren. Da agiles Arbeiten für einen schnelleren Release-Zyklus unerlässlich ist, kommen unter anderem vorgefertigte DevOps Prozesse zum Einsatz.