Jump to section

Cloudnative Anwendungen

URL kopieren

Um auf den sich schnell verändernden softwareorientierten Märkten von heute erfolgreich zu sein, müssen Unternehmen ihren Ansatz für die Planung, Entwicklung und Nutzung von Anwendungen ändern. Die cloudnative Anwendungsentwicklung ist ein Ansatz zur Erstellung, Ausführung und Verbesserung von Anwendungen, der auf bewährten Techniken und Technologien des Cloud Computing basiert.  

Gartner Titelbild

Red Hat als Leader im 2024 Gartner® Magic QuadrantTM for Cloud Application Platforms ausgezeichnet

Red Hat wurde im ersten Gartner Magic Quadrant für Cloud-Anwendungsplattformen als Leader eingestuft. Red Hat OpenShift® wurde als Leader für die Umsetzungsfähigkeit und die Vollständigkeit der Vision anerkannt. 

Cloudnative Anwendungen sind kleine, unabhängige und lose gekoppelte Services. Sie sind darauf ausgelegt, anerkannte Geschäftswerte bereitzustellen, darunter die Fähigkeit zur schnellen Integration von Benutzer-Feedback für kontinuierliche Verbesserungen. Kurz gesagt, haben wir es hier mit einer Methode zur Beschleunigung der Entwicklung neuer bzw. Optimierung bestehender Anwendungen sowie deren Verknüpfung zu tun. Ziel ist die Bereitstellung maßgeschneiderter, auf die Geschwindigkeit des geschäftlichen Wandels ausgerichteter Anwendungen.

Aber was hat es mit der „Cloud“ im Konzept der cloudnativen Anwendung auf sich? Eine Anwendung, die cloudnativ ist, wurde speziell dazu konzipiert, für die einheitliche Entwicklung und automatisierte Verwaltung in Private, Public und Hybrid Clouds zu sorgen. Unternehmen, die auf Cloud Computing setzen, wollen die Skalierbarkeit und Verfügbarkeit ihrer Anwendungen verbessern. Diese Vorteile lassen sich durch die Self Service- bzw. On-Demand-Provisionierung von Ressourcen sowie die Automatisierung des Anwendungs-Lifecycles von der Entwicklung bis zur Produktion erzielen.

Um sie aber vollends ausschöpfen zu können, benötigen Unternehmen eine neue Form der Anwendungsentwicklung.

Und genau dafür ist der cloudnative Ansatz bestens geeignet, denn er ermöglicht das schnelle Entwickeln und Aktualisieren von Anwendungen, verbessert aber gleichzeitig auch die Qualität und mindert Risiken. Genauer gesagt, lassen sich damit responsive, skalierbare und fehlertolerante Anwendungen ausführen, und zwar unabhängig davon, ob in Public, Private oder Hybrid Clouds.

Ein kurzer Überblick über cloudnative Anwendungen

Cloudnative App-Entwicklung, das hört sich wie ein typisches Schlagwort aus der IT-Branche an, dabei ist dies vielleicht genau das revolutionäre Konzept, das Unternehmen zu einer beschleunigten Innovation verhilft. Also haben wir Ashesh Badani, Vice President and General Manager of Cloud Platforms bei Red Hat, darum gebeten, uns seine ganz persönliche Einschätzung der cloudnativen Anwendungsentwicklung zu geben.

Es beginnt mit den Menschen in Ihrem Unternehmen und den Automatisierungsprozessen, die ihre Zusammenarbeit unterstützen. Dies bedeutet, dass Sie mithilfe von DevOps Ihre Entwicklungs- und Operations-Teams zusammenbringen und diese eine gemeinsame Zielsetzung und regelmäßiges Feedback erhalten.

Der Einsatz von Containern unterstützt diese Vorgehensweise, da damit eine ideale Anwendungsbereitstellung und eine eigenständige Ausführungsumgebung ermöglicht werden. Mit DevOps und Containern können Entwicklerinnen und Entwickler Anwendungen als Ansammlung lose gekoppelter Komponenten wie Microservices veröffentlichen und müssen nicht auf das eine große Release warten.

Die cloudnative Entwicklung richtet den Fokus auf eine modulare Architektur, eine lose Kopplung und Unabhängigkeit der Services. Die einzelnen Microservices implementieren Geschäftsfunktionen, führen eigene Prozesse aus und kommunizieren via APIs (Application Programming Interfaces) oder Messaging. Diese Kommunikation kann über eine Service Mesh-Schicht verwaltet werden.

Um cloudnative Anwendungen schneller bereitstellen zu können, müssen Sie nicht unbedingt mit Microservices beginnen. Viele Unternehmen können ihre Legacy-Anwendungen auch mithilfe einer pragmatischen, servicebasierten Architektur optimieren. Dieser Prozess wird durch DevOps-Workflows wie CI/CD (Continuous Integration und Continuous Deployment) sowie vollständig automatisierte Deployment-Abläufe und standardisierte Entwicklungsumgebungen unterstützt.

DevOps

Das DevOps-Konzept schließt die Aspekte Unternehmenskultur, Automatisierung und Plattformdesign ein und hat das Ziel, den geschäftlichen Mehrwert und die Reaktionsfähigkeit zu steigern.

Microservices

Bei einer Microservice-Architektur werden Anwendungen in ihre kleinsten Bestandteile zerlegt, die voneinander unabhängig sind.

APIs

Eine API (Application Programming Interface, Programmierschnittstelle) besteht aus mehreren Tools, Definitionen und Protokollen zur Integration von Anwendungssoftware. Mit APIs können Sie Produkte und Services verknüpfen, ohne wissen zu müssen, wie sie implementiert werden.

Container

Mithilfe von Containern lassen sich Anwendungen mit ihrer gesamten Runtime-Umgebung paketieren und isolieren und bei Erhaltung der vollen Funktionalität zwischen Umgebungen verschieben.

Der primäre Vorteil einer cloudnativen Strategie ist, dass Unternehmen, deren Computing-Ressourcen über mehrere Umgebungen verteilt sind, die Anwendungsentwicklung beschleunigen können. So kann es beispielsweise sein, dass Sie Ressourcen auf Amazon- und Google-Servern hosten und eine Oracle-Datenbank lokal ausführen. Mit einer cloudnativen Entwicklung kann Ihr Unternehmen den Wert dieser Hybrid Cloud-Architektur steigern. Allerdings gibt es da noch einen weiteren Schritt, den Sie im Rahmen einer cloudnativen Strategie durchführen können.

Der Begriff „Serverless“ bezieht sich auf ein Cloud Computing-Modell, bei dem sich die Anwendungsentwicklungsteams nicht um Serverprovisionierung oder die Skalierung ihrer Anwendung kümmern müssen. Stattdessen werden diese routinemäßigen Aufgaben vom Cloud-Anbieter abstrahiert, und der fertige Code wird viel schneller produktiv als bei traditionellen Modellen.

Unabhängig davon, ob Ihre Branche nun Telekommunikation, Bankwesen, Gesundheitswesen oder gar Viehzucht ist: Ab jetzt sind Sie auch ein Softwareunternehmen, und im Fokus Ihrer geschäftlichen Strategie liegen Anwendungen. Diese softwaregestützte Transformation Ihres Unternehmens erfordert eine schnellere Entwicklung und Bereitstellung neuer Anwendungen für Nutzerinnen und Nutzer, die hohe Qualität erwarten. Und das ist eine große Herausforderung. Wir bei Red Hat glauben, dass Sie in Ihre Prozesse, Infrastruktur und Architektur investieren müssen, um auf modernen, sich schnell verändernden Märkten wettbewerbsfähig bleiben zu können.

Wenn Sie Ihre Anwendungen mit Red Hat entwickeln, haben Sie Zugriff auf Lösungen wie Red Hat Service Interconnect, das sichere Kommunikationsverbindungen zwischen Anwendungen und Services bietet, unabhängig davon, wo diese sich befinden und wie sie ausgeführt werden. So können sogar Legacy-Anwendungen weiterhin unabhängig in ihren ursprünglichen Umgebungen ausgeführt werden und gleichzeitig mit den neuen Anwendungen, die sie in Zukunft entwickeln und bereitstellen, verbunden bleiben.

Icon-Red_Hat-Media_and_documents-Quotemark_Open-B-Red-RGB Die meisten Unternehmen wissen, dass sie schnellere Release-Zyklen und größere Zuverlässigkeit erzielen müssen, indem sie Ansätze wie Microservice-Architekturen sowie moderne Entwicklungs- und Operations-Tools einsetzen. Eine der größten Herausforderungen dabei ist traditionell die Roadmap, die für die Veränderung von Legacy-Umgebungen notwendig ist. OpenShift Application Runtimes sorgt für eine einfache Transformation und verringert gleichzeitig Aufwand und Risiko bei den ersten Schritten hin zu einer cloudnativen Entwicklung.

Chris Hart

CTO, Levvel

Weiterlesen

Artikel

Zustandsbehaftet im Vergleich zu zustandslos

Ob etwas zustandsbehaftet oder zustandslos ist, hängt davon ab, wie lange der Zustand der Interaktion erfasst wird und wie diese Informationen gespeichert werden müssen.

Artikel

Was ist Quarkus?

Quarkus ist ein Kubernetes-nativer Java Stack für Java Virtual Machines (JVMs) und native Kompilierung, mit dem Java speziell für Container optimiert wird.

Artikel

Was ist Serverless?

Der Begriff „Serverless“ (serverlos) bezieht sich auf ein cloudnatives Entwicklungsmodell, bei dem Entwicklungsteams Anwendungen erstellen und ausführen können, ohne Server verwalten zu müssen.

Mehr über cloudnative Anwendungen erfahren

Produkte

Eine Plattform, die es Ihnen ermöglicht, Unternehmensanwendungen schnell und effizient über die von Ihnen gewünschte Infrastruktur bereitzustellen.

Ressourcen

Training

Kostenloses Training

Developing Cloud-Native Applications with Microservices Architectures