Wettbewerbsfähig bleiben

Wie Cloud-Native Ihr Business befeuert

04.08.2022
Von 
Lee Atchison ist Experte in Sachen Cloud Computing und Applikationsmodernisierung mit mehr als 30 Jahren Berufserfahrung. Er schreibt unter anderem für die US-Schwesterpublikation Infoworld.com.
Bei Cloud-Native-Architekturen geht es darum, die Flexibilität zu erreichen, die Sie brauchen um in einem extrem wandelbaren Markt wettbewerbsfähig zu bleiben.
Cloud-Native-Architekturen können Ihrem Geschäft den entscheidenden Schub verleihen.
Cloud-Native-Architekturen können Ihrem Geschäft den entscheidenden Schub verleihen.
Foto: Iaroslav Neliubov - shutterstock.com

Von der Fertigung über das Transportwesen bis hin zum Einzelhandel unterstützen Unternehmen aus praktisch allen Branchen ihre digitale Transformation durch den Umstieg auf Cloud-basierte Infrastrukturen. Der Wechsel von On-Premises-Software zu Cloud-Diensten hat den Prozess der Anwendungsentwicklung und -bereitstellung revolutioniert, insbesondere im Bereich der SaaS-Anwendungen. Doch die Cloud zu nutzen, reicht oft nicht aus. Um von optimierter Flexibilität, Verfügbarkeit, Skalierbarkeit und Gesamtleistung zu profitieren, müssen Sie auf Cloud-Native-Anwendungen setzen.

Cloud-native Architekturen sind im Bereich der Softwareentwicklung zum Standard geworden. Doch mit dieser Popularität sind auch Unsicherheiten verbunden: Was genau bedeutet es, wenn eine Anwendung Cloud-nativ ist? Die Definitionen des Begriffs sind so vielfältig wie die Anzahl der Cloud-nativen Anwendungen, die heute in Betrieb sind. Es gibt jedoch einige standardmäßige, leicht verständliche Grundsätze, die bei der Entwicklung Cloud-nativer Applikationen nützlich sind.

Was Cloud-Native bedeutet

Cloud-native Anwendungen sind Softwaresysteme, die gemäß den Leitprinzipien der Cloud (dynamisch, skalierbar und hochverfügbar) entwickelt werden. Die Cloud-native Anwendungsarchitektur ist eine Antwort auf die Herausforderungen, mit denen Softwareentwickler konfrontiert sind, wenn sie mit Legacy-Ansätzen arbeiten. Cloud-native Applikationen:

  • nutzen die dynamische Ressourcenzuweisung in der Cloud. Das bedeutet, dass die Größe der Anwendung in Abhängigkeit von den aktuellen Anforderungen variiert und die verbrauchten Ressourcen an die zum jeweiligen Zeitpunkt benötigten angepasst werden.

  • nutzen Service- oder Microservice-Architekturen. Durch den Einsatz von Microservices lassen sich Größe und Komplexität von Anwendungen leicht und auf überschaubare Weise skalieren.

  • sind containerisiert. Durch die Verwendung von Containern können Dienste schnell und einfach in verschiedenen Umgebungen eingesetzt werden, ohne komplexes Abhängigkeitsmanagement.

  • orchestrieren Services mit Kubernetes. Der De-facto-Standard für die Container-Orchestrierung und -Verwaltung startet Container, richtet die Kommunikation zwischen Containern ein, überwacht auf Fehler, startet Container bei Bedarf neu und passt die Größe der Anwendung an die aktuellen Anwendungsfälle an. Kubernetes arbeitet eng mit der Cloud zusammen, um dynamisch dimensionierte Anwendungen und Services zu erstellen.

  • speichern und verwalten Daten in Cloud-managed Datenbanken und anderen Datendiensten. Cloud-optimierte Datenservices, die automatisch skaliert werden, um den Anforderungen der Anwendung gerecht zu werden und große Datenmengen schnell verfügbar zu machen, sind Standardanforderungen für Cloud-native Anwendungen.

  • nutzen moderne Entwicklungs- und Betriebs-Workflows. Dazu gehören DevOps, Continuous Integration und Continuous Delivery (CI/CD), Git Source Code Management und ähnliche Prozesse und Verfahren.

Darüber hinaus sind viele, aber nicht alle Cloud-nativen Anwendungen so konzipiert, dass sie Cloud-agnostisch sind oder zumindest in angemessener Weise zu neuen Cloud-Anbietern migriert werden können. In einigen Fällen funktionieren Cloud-native Anwendungen in hybriden Cloud- oder Multi-Cloud-Umgebungen.

Wozu eine Cloud-Native-Architektur?

Cloud-Native-Prozesse und -Verfahren für die Entwicklung und den Betrieb von Anwendungen schaffen moderne, erstklassige Applikationen, weil sie wichtige Aspekte des modernen Anwendungserlebnisses betonen:

Automatisierung

Manuelle und repetitive Aufgaben können viele IT-Ressourcen fressen. Dazu gehören Tasks wie Deployment Management, Test-Suiten und diverse Aufgaben in Zusammenhang mit Hardware. Indem sie diese automatisieren, sparen Unternehmen viel Zeit und Geld. Wenn Sie Anwendungen nach Cloud-nativen Prinzipien erstellen, ist die Automatisierung Ihrer Entwicklungs- und Betriebsumgebungen eine Selbstverständlichkeit.

Agilität

Agilität ist die Fähigkeit, Veränderungen schnell zu erkennen und darauf zu reagieren. In der modernen Unternehmenslandschaft ist dies eine entscheidende Fähigkeit. Organisationen, die Cloud-Native-Anwendungen entwickeln und betreiben, sind flexibler und können schneller und effektiver auf veränderte geschäftliche und technologische Rahmenbedingungen reagieren. Das liegt größtenteils an der dynamischen Natur von Cloud-nativen Architekturen.

Skalierbarkeit

Wenn Ihr Unternehmen wächst, wachsen auch die Ressourcenanforderungen Ihrer Anwendung. Lastspitzen können herkömmliche Anwendungsinfrastrukturen stark beeinträchtigen. Eine hochdynamische Cloud-Infrastruktur ermöglicht eine automatisierte und besser zu managende Skalierung von Anwendungen. Aber diese Cloud-Dynamik gibt es nicht umsonst: Ihre Applikation muss so aufgebaut sein, dass die dynamische Ressourcenzuweisung richtig funktioniert. Cloud-native Anwendungen sind darauf konzipiert.

Verfügbarkeit

Die Verfügbarkeit ist ein Maß für den prozentualen Anteil der Zeit, in der Ihre Anwendung den Kunden zur Verfügung steht. Im Gegensatz dazu steht die Zeit, in der sie aufgrund von Anwendungsausfällen, Wartungs- oder Upgrade-Verfahren nicht verfügbar ist. Eine niedrige Verfügbarkeit wirkt sich in der Regel negativ auf die Kundenzufriedenheit aus. Eine hohe Verfügbarkeit aufrechtzuerhalten ist demnach entscheidend für die Kundenzufriedenheit und damit für das Unternehmenswachstum.

Automatisierte Resilience

Wenn Anwendungsfehler und -ausfälle auftreten, müssen Sie in der Lage sein, die Probleme zu beheben und schnell zum Normalbetrieb zurückzukehren. Je automatisierter die Wiederherstellung abläuft, desto schneller kann Ihre Anwendung zum normalen Betrieb zurückkehren und desto weniger störend wirkt sich das Problem auf Mitarbeiter, Kunden und das gesamte Unternehmen aus. Eine automatisierte Wiederherstellung trägt dazu bei, den Kunden ein hohes Serviceniveau bieten zu können.

Sie können zwar nicht vorhersagen, wann Ausfälle auftreten werden, aber Ihre Anwendung darauf vorbereiten. Mit fehlertoleranten Designs und Failover-Mechanismen - sowohl in Ihrer Anwendung als auch in der Anwendungsinfrastruktur - lassen sich Ausfallsicherheit und Verfügbarkeit signifikant verbessern. Cloud-native Architekturen fördern und nutzen die automatische Ausfallsicherheit in modernen Anwendungen.

Continuous Integration/Continuous Delivery (CI/CD)

CI/CD ist ein Softwarebereitstellungsprozess, der Builds, Tests und Deployment automatisiert und es ermöglicht, Software schneller und zuverlässiger von Entwicklungssystemen auf Live-Produktionssysteme zu übertragen. Darüber hinaus werden bei einer guten CI/CD-Bereitstellungsstrategie Änderungen an Anwendungen sofort und ohne Ausfallzeiten bereitgestellt. Das erhöht die geschäftliche Flexibilität, die Softwarequalität und die Reaktionsfähigkeit gegenüber den Kunden.

Ohne CI/CD vergehen in manchen Fällen Wochen oder gar Monate zwischen der Bereitstellung neuer Softwareversionen. Mit einem hochwertigen CI/CD-System können Cloud-native Anwendungen täglich, stündlich oder sogar noch schneller bereitgestellt werden. Unternehmen wie Amazon sind bekannt dafür, Änderungen an ihren Applikationen besonders rasant vorzunehmen (einer Messung zufolge stellt Amazon alle 1,6 Sekunden neue Software bereit). Das ist nur möglich, wenn Cloud-native Anwendungen eingesetzt werden und solide, automatisierte CI/CD-Prozesse vorhanden sind, bei denen die Anwendung nicht heruntergefahren werden muss, um die Bereitstellung abzuschließen. (fm)

Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation Infoworld.