Thema

Cloudnative Anwendungen

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.

Was sind cloudnative Anwendungen?

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 Bereitstellung 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 egal ob in Public, Private oder Hybrid Clouds.

Ein kurzer Überblick über cloudnative Apps

Cloudnative App-Entwicklung, das hört sich wie ein typisches Schlagwort aus der IT-Branche an, dabei ist vielleicht genau das revolutionäre Konzept, das Organisationen 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 App-Entwicklung zu geben.

Public, Private oder Hybrid-Bereitstellung?

Kein Problem. Red Hat® OpenShift® 4 ist die unternehmensfähige Kubernetes-Plattform für die Container-Orchestrierung. Wenn Sie cloudnative Anwendungen entwickeln, erhalten Sie mit OpenShift 4 die zentralen Management- und Visualisierungs-Tools, die Sie für vereinheitlichte Operationen benötigen, und zwar egal wo.

Wie kann ich cloudnative Apps entwickeln?

Alles 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 Sie 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. Jeder Microservice implementiert eine Geschäftsfunktion, führt seine eigenen Prozesse aus und kommuniziert via API 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 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.

Mehr zum Thema DevOps

Microservices

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

Microservices

APIs

Eine API (Application Programming Interface) besteht aus mehreren Tools, Definitionen und Protokollen, mit denen Anwendungssoftware entwickelt werden kann. Mit ihr können Produkte und Services verknüpft werden, ohne dass Sie wissen müssen, wie diese implementiert werden.

APIs

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.

Container

Was ist einer serverlose Architektur?

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 „serverlos" bezieht sich auf ein Cloud Computing-Modell, bei dem Anwendungsentwickler für ihre App weder Server provisionieren noch eine Skalierung durchführen müssen. Stattdessen werden diese routinemäßigen Aufgaben vom Cloud-Anbieter abstrahiert, wodurch der fertige Code viel schneller produktiv wird als bei traditionellen Modellen.

Warum cloudnative Apps mit Red Hat entwickeln?

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 softwaregesteuerte Transformation des Business erfordert eine schnellere Entwicklung und Bereitstellung neuer Apps an die Benutzer, 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.

Um diese Anpassung zu unterstützen, benötigen Organisationen nach Meinung von Red Hat eine neue Plattform, die Verbesserungen für Ihre gesamte Architektur, Infrastruktur und alle Prozesse ermöglicht. Unser Ziel ist die Fähigkeit, hochwertige Apps mit noch größerer Agilität zu liefern.

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.

Nützliche Tipps für IT-Leader, direkt in Ihrem Posteingang

Erhalten Sie wichtige technische Einblicke (wie diese Informationen zur cloudnativen App-Entwicklung) − mit dem Red Hat Shares Newsletter.

Aktuell nur in englischer Sprache verfügbar

Ihre Basis für cloudnative Apps

Cloud Computing

Eine Container- und Kubernetes-Plattform für eine schnellere Entwicklung cloudnativer Anwendungen.

Cloud Computing

Red Hat OpenShift Application Runtimes

Eine Auswahl an Anwendungs-Runtimes und -Frameworks, die für die Entwicklung cloudnativer Anwendungen bestens geeignet sind.

Middleware

Red Hat Application Runtimes

Ein Satz schlanker Runtimes und Frameworks für stark verteilte Cloud-Architekturen wie z. B. Microservices.

Cloudnative Apps haben noch viel mehr zu bieten