Was bedeutet „Cloud-nativ“?
Unter „Cloud-nativ“ versteht man eine Anwendung oder ein Produkt, die bzw. das speziell für die Cloud entwickelt wurde und bei der es sich nicht um eine Desktop-Anwendung handelt, die lediglich für die Cloud-Nutzung abgeändert wurde.
Fragt man nach der Definition von „Cloud-nativ“, erhält man wahrscheinlich viele unterschiedliche Antworten. Cloud-native Technologien haben jedoch eine ganz spezifische Definition, werden auf eine ganz bestimmte Art und Weise entwickelt und bieten praktisch unendlich viele Anwendungsmöglichkeiten.
Die Cloud Native Computing Foundation (CNCF), die 2015 – als viele Unternehmen Cloud-native Systeme einführten – von der Linux Foundation gegründet wurde, beschreibt es wie folgt:
Cloud-native Technologien sind gezielt auf Skalierbarkeit ausgelegt. Mit anderen Worten: Sie sind für schnelle, groß angelegte Änderungen gedacht und zeichnen sich durch ihre Ausfallsicherheit aus.
Cloud-native Anwendungen werden in modernen, dynamischen Umgebungen – wie Public, Private und Hybrid Clouds – und nicht in einzelnen Instanzen von lokalen Betriebssystemen ausgeführt.
Cloud-native Anwendungen verfügen über eine Microservices-Architektur. Die Softwareanwendung besteht also aus kleineren, in Containern verpackten (Mikro-)Teilen, die sich für jede beliebige Infrastruktur eignen.
Da die Microservices in Containern untergebracht sind, kann die Softwareanwendung nach den Prinzipien der kontinuierlichen Integration und Bereitstellung (CI/CD) aktualisiert werden. Mit CI/CD können die Microservices in einem einzigen Container ohne Ausfallzeiten aktualisiert, getestet und livegeschaltet werden.
Vergleichen Sie das mit einer monolithischen Architektur, die:
als eine einzige Einheit entworfen und entwickelt wurde.
über eine einzige, logische ausführbare Datei für die ihr zugrunde liegende Infrastruktur verfügt. Anstelle von mehreren beweglichen Teilen besteht sie aus einer einzigen Einheit, also einem Monolithen.
Die molithische Anwendungsarchitektur besteht aus 1) einer serverseitigen Anwendung, 2) einer clientseitigen Benutzeroberfläche und 3) einer Datenbank. Softwareentwicklungs-Updates werden auf der Server-Ebene durchgeführt, daher sind Ausfallzeiten unvermeidlich.
Warum sind Cloud-native Anwendungen wichtig?
Der Cloud-native Ansatz bringt viele Vorteile mit sich, darunter Ausfallsicherheit, Portabilität und Flexibilität. Diese Vorteile gehen jedoch weit über die IT-Teams hinaus.
Betriebliche Flexibilität
Mit Cloud-nativen Anwendungen erhalten Unternehmen zusätzliche Flexibilität, wenn es darum geht, wie sie ihre unterstützenden Business-Programme ausführen – sei es in Hybrid, Public und Private Clouds oder in Multi-Cloud-Umgebungen. Daher sind Unternehmen nicht gezwungen, eine bestimmte Plattform zu verwenden, denn bei „Cloud-nativ“ geht es darum, wie die Anwendung erstellt wird – und nicht, auf welcher Plattform sie ausgeführt wird.
Senkung der Gemeinkosten durch Vermeidung von Ungenauigkeiten
Einer der Vorteile der heutigen Unternehmenstechnologie ist die Möglichkeit, Geschäftsprozesse zu automatisieren. Die Automatisierung kann in jede Cloud-Umgebung integriert werden und hilft Unternehmen dabei, schlanke, konzentrierte Teams zu bilden. Anstatt Arbeitsstunden mit wiederkehrenden, manuellen Verwaltungsaufgaben zu verschwenden, können diese automatisiert werden, damit sich Mitarbeiter auf das Wichtigste konzentrieren können: Lead-Generierung, Kundenservice und Kundenbindung.
Keine Ausfallzeiten
Dank Container-Orchestratoren wie Kubernetes können Sie Softwareupdates über das Ökosystem Ihres Unternehmens verteilen, ohne Ihre Systeme herunterfahren zu müssen. Auf diese Weise kann die IT-Abteilung Updates testen, optimieren und bereitstellen, während der Geschäftsbetrieb weiterläuft.
Innovation
Die Einführung neuer digitaler Produkte und Dienste lässt sich dank der Automatisierung, die in Cloud-nativen Anwendungen integriert ist, viel einfacher und schneller erreichen. Und da diese Anwendungen automatisch Daten aus dem gesamten Ökosystem Ihres Unternehmens erfassen, erhalten Sie bessere Einblicke und können so fundiertere Entscheidungen treffen.
Leicht zu verwalten
Da diese Anwendungen gezielt auf einfache Wartung und Verwaltung ausgelegt sind, können sie in Ihre Geschäftsabläufe integriert werden und weniger kompatible, weniger flexible Programme ersetzen.
Niedrigere Kosten
Geringere Ausfallzeiten, weniger Fehler, zufriedenere Kunden – all das führt zu niedrigeren Gemeinkosten. Aber ein wichtiger Kostenfaktor, der oft verschwiegen wird, besteht darin, dass Systeme ganz einfach zu groß für Ihr Unternehmen sind. Lokale Anwendungen sind in der Regel mit hohen Vorlaufkosten verbunden. Hierfür müssen die Infrastruktur und das Rechenzentrum des Systems aufgebaut werden. Dabei werden nur etwa zwei Drittel der Rechenzentrumskapazität genutzt. Dies führt zu höheren Gesamtbetriebskosten. Cloud-native Anwendungen werden nutzungsbasiert abgerechnet – Sie zahlen also nur für das, was Sie auch verwenden. Wenn Sie also nur 30 % eines Rechenzentrums nutzen, zahlen Sie dementsprechend auch nur so viel.
Ein einzigartiger Branchenbericht, den Sie unbedingt lesen müssen
Erfahren Sie, wie Leistungsträger einen 8,5-fachen ROI für ihre Automatisierungsprogramme erzielen und wie Branchenführer ihre Unternehmen umgestalten, um globale Herausforderungen zu meistern und ihren Erfolg mit intelligenter Automatisierung auszubauen.
Der Unterschied zwischen einer monolithischen und einer Microservices-Architektur
Die moderne Cloud-Technologie schreitet schnell voran und bei der geschäftsorientierten Anwendungsentwicklung wird immer häufiger eine Cloud-native Architektur eingesetzt.
Diese Entwicklung hin zu einer Cloud-nativen Umgebung geht weit über neue Anwendungen hinaus. Ein gutes Beispiel dafür ist die Microsoft Office Suite. Microsoft Office wird von Tausenden von Unternehmen – von KMUs bis hin zu Großunternehmen – genutzt und hat sich von ein paar makrogesteuerten Workflows in Microsoft Excel zu einer vollständigen Cloud-Infrastruktur mit Office 365 entwickelt. Jetzt kann jeder online gehen, ein Abonnement erwerben und das Produkt buchstäblich in Minutenschnelle in seinem Browser nutzen.
Die Unterschiede zwischen dem herkömmlichen Office und Office 365 mögen unbedeutend erscheinen. Was jedoch im Hintergrund geschieht, erforderte ein komplettes Umdenken und eine neue Prozessentwicklung.
Bei der herkömmlichen Softwareentwicklung ist es nicht unüblich, dass mehrere Teams an einem einzigen Softwareprodukt arbeiten. Auf den ersten Blick mag das wie ein Rezept für eine schnelle Entwicklung und Freigabe erscheinen. Oft kommt es jedoch vor, dass niemand in den Teams die Anwendung in ihrer Gesamtheit versteht. Wie Sie sich vorstellen können, kann die Aktualisierung dieser Anwendung zu einem Albtraum werden.
DevOps (Entwicklung und Betrieb) ist eine Kombination aus Strategien, Tools und Praktiken, mit denen neue Funktionen, Anwendungen und Dienste schneller bereitgestellt werden können. Dank DevOps werden die verschiedenen Teams zu einem einzigen kleineren Team zusammengeführt. Die Entwickler sind am gesamten Lebenszyklus beteiligt, statt wie bisher in Entwicklungs-, Betriebs-, Qualitätssicherungs- und Sicherheitsteams unterteilt zu sein.
Wie können Sie das System kleiner gestalten, ohne seine Qualität zu beeinträchtigen? Die Antwort lautet: Automatisierung. Die Automatisierung ermöglicht es Cloud-Anbietern wie BPaaS- und SaaS-Unternehmen, mit kleineren DevOps-Teams leistungsstarke Business-Anwendungen zu entwickeln.
Häufig gestellte Fragen zu „Cloud-nativ“
Business-Cloud-Plattformen müssen nicht unbedingt in einer Public-Cloud-Umgebung genutzt werden. Anstatt Ihr Unternehmen wie viele andere mit einer Cloud-Lösung auszustatten, stehen Ihnen auch Private-Cloud-Plattformen und Hybrid-Cloud-Lösungen (eine Mischung aus lokalen und Cloud-Lösungen) zur Verfügung.
Dafür gibt es mehrere Gründe. Cloud-native Anwendungen lassen sich schnell entwickeln und bereitstellen. Die entsprechenden Teams sind klein und darauf spezialisiert. Die Cloud-Plattform ist skalierbar und bietet somit eine größere Flexibilität und Portabilität in Multi-Cloud-Umgebungen. All das führt zu zahlreichen kosteneffizienten Business-Anwendungen, sodass Anwendungen mit einer monolithischen Architektur im Vergleich zu Cloud-Anbietern und -Plattformen allmählich an Bedeutung verlieren.
Natürlich. Aufgrund von Microservices, Container-Technologien und der Möglichkeit, Geschäftsprozesse zu automatisieren, sind Cloud-native Dienste in Bezug auf Funktionalität und Skalierung so flexibel, dass sie für Unternehmen jeder Größe geeignet sind.
Cloud-native Programme zeichnen sich eher dadurch aus, wie sie aufgebaut sind, und weniger dadurch, wo sie sich befinden. Dienste wie Amazon Web Services, Google Cloud Platform und IBM Cloud sind Cloud-Plattformen, auf denen die Cloud-nativen Anwendungen ausgeführt werden.
Docker mit Kubernetes zu vergleichen, ist wie der Vergleich zwischen und Orangensaft. Es geht nicht um das eine oder das andere – beide sind wichtig. Obwohl es sich um unterschiedliche Technologien handelt, eignen sie sich gut für die Erstellung, Bereitstellung und Skalierung containerisierter Anwendungen.
Bei Docker handelt es sich um eine Open-Source-Technologie, die Anwendungen so containerisiert, dass sie portierbar sind. Dank ihrer Portabilität können diese Anwendungen sowohl in der Cloud als auch lokal eingesetzt werden.
Kubernetes bietet hingegen eine Open-Source-Container-Orchestrierung. Die Lösung gruppiert die Docker-Container in Pods und ermöglicht die Kontrolle über deren Ausführung per APIs. Das ist eine äußerst nützliche Funktion, da die Systeme immer komplexer werden. Mit Kubernetes können Sie Cluster aus virtuellen Maschinen zusammenstellen und die Pods auf Grundlage ihrer jeweiligen Ressourcenanforderungen und verfügbaren Rechenressourcen ausführen.
Cloud-basierte Anwendungen sind fest integriert, ähnlich wie ein einzelner Stack bei herkömmlicher Software. Dadurch sind Cloud-basierte Anwendungen umständlicher, wenn es um Updates geht, und kommen ohne Ausfallzeiten nicht aus.
Bei Cloud-nativen Anwendungen sind sie alle lose miteinander verbunden, wofür jedoch keine Hardware oder Software bereitgestellt werden muss. Updates werden über kleinere, containerisierte Dienste (Microservices) ausgeführt und lassen sich daher viel schneller und einfacher implementieren.
Wie schaffe ich den Einstieg in Cloud-native Anwendungen?
Um Cloud-native Anwendungen einzuführen, sollten Sie sich zunächst überlegen, welche Prozesse Sie in die Cloud verlagern möchten. Besprechen Sie dann mit Ihrem Anbieter, wie Sie diese am besten in Ihre derzeitigen Systeme integrieren können.
Nur, weil ein Anbieter Cloud-Dienste bereitstellt, heißt das nicht, dass er auch Cloud-native Dienste anbietet. Deshalb ist es wichtig, immer zu hinterfragen, ob eine Geschäftslösung Cloud-nativ ist.
Zusätzliche Ressourcen entdecken
Was ist
Automatisierungssoftware?
Was ist
OCR?
Was sind
Software-Bots?
Was ist robotergesteuerte Prozess-
automatisierung (RPA)?