Cloudnative Anwendungen

menu icon

Cloudnative Anwendungen

Lernen Sie cloudnative Anwendungen kennen und erfahren Sie, wie sie Innovation und Geschwindigkeit innerhalb Ihres Unternehmens vorantreiben.

Was ist cloudnativ?

„Cloudnativ“ betrifft weniger den Standort einer Anwendung als die Art und Weise, wie diese erstellt und bereitgestellt wird.

  • Eine cloudnative Anwendung besteht aus diskreten, wiederverwendbaren Komponenten, die als Mikroservices bezeichnet werden und für die Integration in eine beliebige Cloudumgebung konzipiert sind.
  • Diese Microservices fungieren als Bausteine und werden häufig in Container gebündelt.
  • Microservices arbeiten nahtlos zusammen und bilden so eine Anwendung, die jedoch unabhängig voneinander skaliert, kontinuierlich verbessert und durch Automatisierungs-und Orchestrierungsprozesse schnell iteriert werden kann.
  • Die Flexibilität jedes Microservices steigert die Agilität und kontinuierliche Verbesserung cloudnativer Anwendungen.

In dem Video: "Was ist cloudnativ?" (4:36) gibt Andrea Crawford einen Überblick über einige der Schlüsselkonzepte:

Sie können auch den IBM Cloud Podcast und die siebenteilige Miniserie mit dem Titel "Everything Cloud Native" anhören.

Microservices und Container

Microservices (auch als Microservices-Architektur bezeichnet) ist eine Architekturlösung, bei der eine einzelne Anwendung aus vielen lose miteinander verknüpften und unabhängig voneinander einsetzbaren Services zusammengesetzt ist. Diese Services (auch Microservices genannt) verfügen in der Regel über einen eigenen Technologiestack, einschließlich Datenbank-und Datenmodell, und kommunizieren über eine Kombination aus REST-APIs, Event-Streaming und Message Brokern.

Da Microservices unabhängig voneinander implementiert und neu implementiert werden können, ohne sich gegenseitig zu beeinträchtigen oder die Endbenutzerfunktionalität zu stören, bieten sie vollständige Übereinstimmung für automatisierte, iterative Bereitstellungsmethoden wie kontinuierliche Integration/kontinuierliche Implementierung (CI/CD) oder DevOps.

Zusätzlich zur Erstellung neuer cloudnativer Anwendungen können Mikroservices zur Modernisierung herkömmlicher monolithischer Anwendungen verwendet werden.

In einer aktuellen IBM-Umfrage unter IT-Managern, Entwicklern und Entwicklern waren sich 87 % der Nutzer von Microservices darüber einig, dass die Einführung von Microservices die Kosten und den Aufwand wert ist. Verwenden Sie das folgende interaktive Tool, um mehr über ihre Perspektive in Bezug auf die Vorteile und Herausforderungen von Microservices zu erfahren:

(Quelle:„Microservices im Unternehmen 2021: Echte Vorteile, die die Herausforderungen wert sind" [Microservices in the enterprise 2021: Real benefits, worth the challenges].)

Entwickler implementieren häufig Microservices innerhalb von Containern- das sind leichte, ausführbare Anwendungskomponenten, die Anwendungsquellcode - in diesem Fall den Microservice-Code - mit allen Betriebssystembibliotheken und Abhängigkeiten kombinieren, die zum Ausführen des Codes in einer beliebigen Umgebung erforderlich sind. Cointainer sind kleiner, ressourceneffizienter und portabler als virtuelle Maschinen (VMs), und können somit als die de facto-Recheneinheiten der modernen cloudnativen Anwendungen bezeichnet werden.

Container verstärken die Vorteile von Microservices, indem sie ein konsistentes Bereitstellung-und Management-Erlebnis in einer Hybrid-Multicloud-Umgebung ermöglichen - in öffentliche Clouds, in der Private Cloud und in der lokalen Infrastruktur. Aber in gleicher Weise, wie cloudnative Anwendungen zunehmen, werden auch Container zahlreicher und ihre Verwaltung komplexer. Die meisten Unternehmen, die containerisierte Microservices verwenden, setzen gleichzeitig auch eine Container-Orchestrierungsplattform ein, wie z. B.Kubernetes, um die Containerbereitstellung und -verwaltung im Maßstab zu automatisieren.

Weitere Informationen zu Containern und Containern finden Sie unter " Container: ein umfassender Überblick" und "Containerisierung: ein umfassender Überblick".

Weitere Informationen darüber, weshalb Sie Microservices und Container als Architekturkonstrukt verwenden sollten.

Vorteile und Nachteile

IBM Kunden werden zunehmend damit beauftragt, bestehende Anwendungen zu verbessern, neue Anwendungen zu erstellen und das Benutzererlebnis zu verbessern. Cloudnative Anwendungen erfüllen diese Anforderungen, indem sie Leistung der App verbessern und Flexibilität und Erweiterbarkeit erhöhen.

Vorteile

  • Im Vergleich zu herkömmlichen monolithischen Apps können native Cloud-Anwendungen einfacher verwaltet werden, da iterative Verbesserungen mit Hilfe von Agile und DevOps Prozessen durchgeführt werden.
  • Aus einzelnen Microservices können cloudnative Anwendungen schrittweise und automatisch verbessert und so kontinuierlich neue und verbesserte Anwendungsfunktionen hinzugefügt werden.
  • Verbesserungen können nicht-intrusiv vorgenommen werden, wodurch weder Ausfallzeiten entstehen noch das Benutzererlebnis gestört wird.
  • Die elastische Infrastruktur, die cloudnativen Apps zugrundeliegt, erleichtert die Skalierung nach oben oder unten.
  • Der cloudnative Entwicklungsprozess entspricht eher dem Tempo und der unternehmerischen Innovation im modernen Geschäftsumfeld.

Nachteile

  • Obwohl Microservices einen iterativen Ansatz für die Anwendungsverbesserung ermöglichen, müssen durch sie sie auch mehr Elemente verwaltet werden. Statt einer großen Anwendung müssen wesentlich mehr kleine, diskrete Services verwaltet werden.
  • Cloudnative-Apps erfordern zusätzliche Toolsets zur Verwaltung der DevOps-Pipeline, zum Ersetzen herkömmlicher Überwachungsstrukturen und zur Steuerung der Microservices-Architektur.
  • Cloud-native Anwendungen ermöglichen eine schnelle Entwicklung und Bereitstellung, aber sie erfordern auch eine Unternehmenskultur, die mit dem Tempo dieser Innovation mithalten kann.

Anwendungsbeispiele

Cloudnative Anwendungen haben oft ganz bestimmte Funktionen. Überlegen Sie, wie cloudnative Anwendungen auf einer Reise-Website verwendet werden können. Jedes Thema, das von der Website abgedeckt wird-Flüge, Hotels, Autos, Sonderaktionen - ist ein eigener Microservice. Jeder Microservice kann unabhängig von anderen Microservices neue Funktionen umsetzen. Sonderaktionen und Rabatte können auch unabhängig voneinander horizontal skaliert werden. Während die Reise-Website den Kunden als Ganzes präsentiert wird, bleibt jeder Microservice unabhängig und kann beliebig skaliert oder aktualisiert werden, ohne dass andere Services betroffen sind. Im Folgenden sind einige Beispiele für weitere cloudnative Anwendungen aufgeführt.

IBM Cloud Garage bietet IBM Kunden Beratungskompetenz für die schnelle Erstellung skalierbarer, innovativer, cloudnativer Apps. Es bietet einen Innovations-Hub, in dem Unternehmen aller Größenordnungen Apps konzipieren und erstellen können, die eine Lösung für reale Geschäftsanforderungen darstellen.

American Airlines (2:50) arbeitete mit IBM zusammen, um eine dynamische Rebooking-App zu erstellen, die während Unwetterbedingungen gestartet wurde. Die App verbesserte das Kundenerlebnis, indem sie den Nutzern mehr Informationen und einen verbesserten Umbuchungsprozess ermöglichte.

XComP-Analytics (1:56), eine Analyseplattform für allgemeine und berufliche Bildung, musste ein Analyseproblems lösen, aber im Korrekturverlauf eines Problems war das Unternehmen nach der Interaktion mit IBM Cloud Garage in der Lage, sechs neue Produkte entwickeln. Bestandteil der Lösung war die Verwendung von Microservices-Architektur und das Plug-in in IBM Watson, um bestimmte Analyseprobleme zu lösen.

UBank (2:45) stand vor der unternehmerischen Anforderung, das Immobilienkreditangebot zu verbessern und Kunden beim Abschluss des Immobiliendarlehensprozesses zu unterstützen. Die Smart Assistant-App des Unternehmens, RoboChat, stellte die Lösung des Problems dar und wurde mithilfe der IBM DevOps-Toolchain erstellt. Kunden, die RoboChat nutzten, hatten eine um 15 Prozent höhere Abschlussquote bei Immobiliendarlehen.

Ein kritischer Punkt der medizinischen Forschung ist die Beratung von Ärzten über bewährte Praktiken für die Patientenversorgung. Allerdings benötigt medizinische Forschung zu bewährten Praktiken 17 Jahre, um sich in der medizinischen Praxis zu etablieren. ThinkResearch (2:06) verwendet IBM Cloud, um die besten medizinischen Informationen am Point of Care bereitzustellen. Durch die Nutzung von IBM Cloud-Infrastruktur und Managed Kubernetes-Services kann sich das ThinkResearch DevOps-Team auf Innovation und Patientenversorgung konzentrieren und muss sich nicht um die Infrastruktur kümmern.

Entwicklungsprinzipien

Unabhängig davon, ob eine neue cloudnative Anwendung erstellt oder eine vorhandene Anwendung modernisiert wird, halten sich die Entwickler an eine festgelegte Reihe von Prinzipien:

  • Befolgen Sie den Architektur-Ansatz von Microservices: Anwendungen bis zu den als Microservices bekannten Single-Function-Services herunterbrechen. Microservices sind lose gekoppelt, bleiben jedoch unabhängig, damit die inkrementelle, automatisierte und kontinuierliche Verbesserung einer Anwendung ohne Ausfallzeiten ermöglicht wird.
  • Setzen Sie auf Container für maximale Flexibilität und Skalierbarkeit: Container bündeln Software mit sämtlichem Code und Abhängigkeiten an einem Ort, so dass die Software überall ausgeführt werden kann. Dies ermöglicht maximale Flexibilität und Portierbarkeit in einer Multicloud-Umgebung. Container ermöglichen zudem die schnelle Skalierung nach oben oder unten anhand benutzerdefinierter Kubernetes-Orchestrierungsrichtlinien.
  • Agile Methoden anwenden: Agile Methoden beschleunigen den Erstellungs-und Verbesserungsprozess. Entwickler können Updates basierend auf Benutzerfeedback schnell iterieren, damit die Anwendungsversion im Betrieb die Benutzererwartungen bestmöglich erfüllt.

Speicher

Cloudnative Anwendungen setzen häufig auf Container. Was Container attraktiv macht, ist ihre Flexibilität, Leichtigkeit und Portierbarkeit. Bei früherer Verwendung von Containern konzentrierte man sich auf statusunabhängige Anwendungen, bei denen keine Notwendigkeit dafür bestand, Benutzerdaten von einer Benutzersitzung zur nächsten zu speichern.

Da jedoch mehr Kerngeschäftsfunktionen in die Cloud übertragen werden, muss das Problem des persistenten Speichers in einer cloudnativen Umgebung behoben werden. Hierfür müssen Entwickler neue Methoden für Cloudspeicher-Lösungen in Betracht ziehen.

In gleichem Maße, wie die cloudnative Anwendungsentwicklung Microservices und einen modularen Ansatz übernimmt, gilt dies für den cloudnativen Speicher. Cloudnative Daten können sich an einer beliebigen Anzahl von Orten befinden - z. B. Ereignis-oder Systemprotokolle, relationale Datenbanken und Dokument-oder Objektspeicher.

Datenposition, Anforderungen an die Aufbewahrungsdauer, Portierbarkeit, Plattformkompatibilität und Sicherheit sind nur einige der Aspekte, die Entwickler bei der Planung für cloudnativen Speicher berücksichtigen müssen.

Erfahren Sie, wie IBM Cloud Object Storage einen persistenten Datenspeicher für cloudnative Anwendungen erstellt.

Cloudnative Anwendungen im Vergleich zu traditionellen Anwendungen

Cloudnativ im Vergleich zu Cloud-fähig

Eine cloudfähige Anwendung ist eine Anwendung, die für die Bereitstellung in einem herkömmlichen Rechenzentrum entwickelt, aber später dahingehend geändert wurde, dass sie auch in einer Cloudumgebung ausführbar war. Cloudnative Anwendungen sind jedoch nur für den Betrieb in der Cloud erstellt. Entwickler konzipieren cloudnative Anwendungen so, damit sie skalierbar, plattformunabhängig und aus Microservices bestehen können.

Cloudnativ im Vergleich zu Cloud-fähig

In der kurzen Geschichte des Cloud-Computing hat sich die Bedeutung von "cloudfähig" mehrmals verschoben. Zunächst wurde der Begriff für Dienstleistungen oder Software verwendet, die für die Arbeit über das Internet bestimmt sind. Heute wird der Begriff häufiger verwendet, um eine Anwendung zu beschreiben, die in einer Cloudumgebung arbeitet, oder eine traditionelle App, die für eine Cloudumgebung umkonfiguriert wurde. Der Begriff "cloudnativ" weist eine viel kürzere Historie auf und bezieht sich auf eine Anwendung, die von Anfang an dafür entwickelt wurde, nur in der Cloud zu arbeiten und die Merkmale der Cloud-Architektur oder eine vorhandene App nutzen zu können, die umstrukturiert und gemäß cloudnativen Prinzipien rekonfiguriert wurde.

Cloudnativ im Vergleich zu Cloudbasiert

Ein cloudbasierter Service oder eine cloudbasierte Anwendung wird über das Internet bereitgestellt. Es ist ein allgemeiner Begriff, der auf eine beliebige Anzahl von Cloud-Angeboten angewandt wird. Cloudnativ ist eine spezifischere Bezeichnung. Cloudnativ beschreibt Anwendungen, die für die Arbeit in Cloud-Umgebungen konzipiert sind. Der Begriff bezeichnet Anwendungen, die auf Microservices, Continuous Integration und Continuous Delivery (CI/CD) angewiesen sind und über jede Cloud-Plattform genutzt werden können.

Cloudnativ im Vergleich zu Cloud First

Cloud First beschreibt eine Geschäftsstrategie, in der sich Unternehmen verpflichten, beim Start neuer IT-Services, bei der Aktualisierung bestehender Services oder dem Ersetzen traditioneller Technologien zuerst Cloud-Ressourcen zu verwenden. Diese Strategie wird angetrieben durch Kosteneinsparungen und effiziente Geschäftsabläufe. Cloudnative Anwendungen passen sehr gut zur Cloud-First-Strategie, da sie nur Cloud-Ressourcen verwenden und darauf ausgelegt sind, die Vorteile der positiven Eigenschaften der Cloud-Architektur zu nutzen.

Cloudnativ und IBM

Anspruchsvollere Nutzererwartungen zu erfüllen, bedeutet, die richtigen Architekturen, Praktiken und Technologien zu übernehmen. Während Sie die Benutzererfahrung verbessern möchten, indem Sie neue Anwendungen erstellen und bestehende Anwendungen auf Ihrer Reise in die Cloud modernisieren, kann ein cloudnativer Ansatz Ihr Unternehmen durch Verbesserung von Leistung, Flexibilität und Erweiterbarkeit der App unterstützen.

Machen Sie den nächsten Schritt:

  • Erfahren Sie, wie Sie Ihr Unternehmen mit IBM für cloudnative Lösungen weiterbringen können.
  • Hier erfahren Sie, wie IBM mit cloudnativen, professionellen Services den Weg für Ihr Unternehmen ebnen kann.
  • Versuchen Sie, eine vorhandene App für die cloudnative Implementierung mit diesem Lernprogramm zu modernisieren.
  • Erfahren Sie mehr über den Cloudnativ-und Multicloud-Kurs und den Ausweis, der Bestandteil der rollenbasierten IBM Cloud Associate Solution Advisor-Zertifizierung ist.
  • Entwickeln Sie Know-how durch moderne Integrations-, Sicherheits-und Identitätskurse, wie zum Beispiel "Cloudnative Architekturen und Anwendungen bereitstellen" und "Für cloudnative Sicherheit vorbereiten", die Bestandteile der rollenbasierten IBM Cloud Professional Developer-Schulung und -Zertifizierung sind.

Beginnen Sie noch heute mit einem IBM Cloud-Konto.