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 ihre Strategie für das Design sowie die Entwicklung und Nutzung von Anwendungen ändern. Die cloudnative Anwendungsentwicklung ist ein Ansatz zur Erstellung, Ausführung und Verbesserung von Apps, der auf bewährten Techniken und Technologien des Cloud Computing basiert.  

Gartner Titelbild

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

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 eine Ansammlung kleiner, unabhängiger und lose gekoppelter 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 ist mit der „Cloud“ im Konzept der cloudnativen Anwendung? Eine App, die cloudnativ ist, wurde speziell dazu konzipiert, eine einheitliche Entwicklung und automatisierte Verwaltung in Private, Public und Hybrid Clouds zu gewährleisten. Organisationen, die auf Cloud Computing setzen, können die Skalierbarkeit und Verfügbarkeit ihrer Apps verbessern. Diese Vorteile lassen sich durch die Self Service- bzw. bedarfsorientierte 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 Sie eine neue Form der Anwendungsentwicklung.

Und genau dafür ist der cloudnative Ansatz bestens geeignet, denn er ermöglicht die schnelle Entwicklung und Aktualisierung von Anwendungen bei gleichzeitiger Verbesserung der Qualität und Minderung von Risiken. Genauer gesagt, lassen sich mit ihm responsive, skalierbare und fehlertolerante Apps ausführen, und zwar unabhängig davon, ob in Public, Private oder Hybrid Clouds.

Ein kurzer Überblick über cloudnative Apps

Die cloudnative App-Entwicklung klingt zwar wie ein typisches Schlagwort aus der IT-Branche, ist aber vielleicht genau das revolutionäre Konzept, das Organisationen zu einer beschleunigten Innovation verhilft. Also haben wir Ashesh Badani, Vice President und General Manager of Cloud Platforms bei Red Hat, darum gebeten, uns seine ganz persönliche Einschätzung der cloudnativen App-Entwicklung zu geben.

Es beginnt mit den Menschen in Ihrer Organisation 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 Apps 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 Organisationen können ihre Legacy-Apps 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 Implementierungsablä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 Apps 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 Apps 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. Mithilfe 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 die Serverprovisionierung und -skalierung ihrer App kümmern müssen. Stattdessen werden diese routinemäßigen Aufgaben vom Cloud-Anbieter extrahiert, 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 des Business erfordert eine schnellere Entwicklung und Bereitstellung neuer Apps 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 sie 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 Microservices-Architekturen sowie moderne Entwicklungs- und Operations-Tools einsetzen. Die größte Herausforderung 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 oder 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