2023 07 12 Rausausdercloud 1

Wolkig bis heitere Aussichten in der IT? Eine „Wetterprognose“ zum Potenzial cloud-nativer Software von Andreas Keßler

Ein Hebel für die digitale Transformation“, „Die Grundlage für die IT der Zukunft“ oder „The Next Big Thing“ – Bei der Bewertung cloud-nativer Software spart die Fachwelt nicht mit Superlativen. Doch ist „Software born in the cloud“ tatsächlich der Schlüssel für eine neue Digitalisierungswelle oder besteht auch für cloud-native Softwarelösungen die Gefahr, in Luftschlössern zu enden? Einige Gedanken zu den Chancen und Herausforderungen von Cloud Native nehmen die Aussichten am IT-Himmel genauer in den Blick.

Cloud, Cloud Native und orchestrierte Microservices – Aufziehende Verwirrung?

Glaubt man den Studien der International Data Cooperation, hängt der Cloud-Himmel tatsächlich voller Geigen: So besagt die Prognose des IDC, dass in den kommenden drei Jahren weltweit rund 750 Millionen neue cloud-native Softwareapplikationen entstehen. Das sind rund 30 % mehr Anwendungen als in den letzten 40 Jahren insgesamt entwickelt wurden. Es herrscht also eine wahre Goldgräberstimmung am Markt. Doch mit den Chancen wachsen auch die begrifflichen Unklarheiten.
Eine Begriffsklärung scheint daher geboten:

  • Die Cloud als ein Speicherort „irgendwo im Nirgendwo“ ist an sich noch keine Verbesserung zum klassischen lokalen Server. Allerdings können Cloud-Server die Verfügbarkeit von Daten verbessern, da sie meist leistungsfähiger und schneller angebunden sind als lokale Server.
  • Cloud-native Software beschreibt Softwarelösungen, die von Anfang an als eigenständiges System auf einem (Cloud-)Server gehostet werden und von Nutzer*innen und Nutzern bequem online genutzt werden. Sie müssen also nicht erst lokal installiert oder konfiguriert werden.
  • Microservices sind kleine, kompakte Softwaretools, die nicht zwingend cloud-native sein müssen, es aber sehr häufig sind. Im Gegensatz zur klassischen monolithischen Software, bei der alle Prozesse in einem System miteinander verzahnt sind, weist eine Microservice-Architektur viele kleine eigenständige Services auf, die mit Hilfe von Schnittstellen zu einem Gesamt-System verbunden werden.
  • Managed Services sind Microservices, die von Softwareanbietern in aller Regel kostenpflichtig zur Verfügung gestellt werden, um eine spezifische Aufgabe in einer System-Architektur zu lösen (z. B. Datenbanken, Caches, etc.)
  • Als Orchestrierung bezeichnet man die Koordinierung der unterschiedlichen Services eines Gesamtsystems. Dabei spielt es zunächst keine Rolle, ob die einzelnen Services lokal, in der Cloud und/oder hybrid verwaltet werden.
  • Container sind, wie in der Logistik, nützliche Transportmittel. Sie helfen, eine gut geschnürte Softwarelösung an unterschiedliche Arbeitsorte und -systeme intelligent auszuliefern. Container spielen vor allem bei cloud-basierten Softwarelösungen ihre Stärke aus. Sie dürfen jedoch nicht darauf reduziert werden.

Aktuell werden die Begriffe „Cloud Native“, „Microservices“ und „Managed Services“ oft synonym verwendet. Das kann jedoch gerade in Fachdiskussionen für hinderliche Verwirrungen sorgen. Die Begrifflichkeiten sollten daher möglichst gut unterschieden und präzise verwendet werden.

Schnell, aktuell, skalierbar: Die Chancen cloud-nativer Softwareprojekte

Für den deutschen Cloud-Services-Markt sagen die Datenexperten des IDC ein Wachstumspotenzial von 23 % pro Jahr voraus. Grund für diesen Boom dürften ohne Zweifel die vielen Vorzüge cloud-nativer Services gegenüber klassischen Softwarelösungen sein.

  • Verbesserte Reaktionsfähigkeit:  Cloud-basierte Microservices lassen sich meist schnell und flexibel bündeln und  neusortieren, ganz wie dies den jeweiligen Anforderungen und Bedürfnissen entspricht. Dadurch können Anpassungen oft schneller erfolgen als bei monolithischen Softwaresystemen.
  • Bessere Skalierbarkeit: Durch das Zu- und Abbuchen von Ressourcen oder Services können Unternehmen ihre Systeme in der Regel deutlich unkomplizierter an Markterfordernisse anpassen, als dies bei der Anschaffung oder auch Abschaltung von eigenen Servern der Fall ist.
  • Größere Flexibilität: Cloud-native Softwarelösungen sind (in den allermeisten Fällen) weder orts- noch hardwaregebunden. Sie erhöhen so nicht nur die Freiheit der Anwenderinnen und Anwender, sondern auch die Flexibilität von Unternehmen bei der Um- und Neugestaltung ihrer Software.
  • Erleichterte Testmöglichkeiten: Clever designte Microservices lassen sich aufgrund ihrer Beschaffenheit vergleichsweise einfach in unterschiedliche Test- und Entwicklungssysteme integrieren. Sie bringen dadurch weniger Aufwand mit sich als das Aufsetzen lokaler vollumfänglicher Testumgebungen. Entwicklungsteams können deutlich agiler vorgehen.
  • Höherer Automatisierungsgrad: Kubernetes und Co. ermöglichen nicht nur eine übersichtliche Orchestrierung, sondern auch eine Automatisierung von verschiedenen Applikationen. Dadurch kann auch bei der Einbindung unterschiedlicher cloud-nativer Services das Risiko von manuellen Bedien- und Konfigurationsfehlern reduziert werden.

Durch seine vielfältigen Vorzüge bietet Cloud Native die Möglichkeit, Software flexibel und schnell an unternehmensinterne Veränderungen und Markterfordernisse anzupassen.
In einer Welt der immer schnelleren Wetterumschwünge in der Marktlandschaft können cloud-native Microservices somit die Reaktionsfähigkeit und damit auch die Überlebensfähigkeit von Unternehmen erheblich steigern.

Raus aus der Cloud

Jede Wolke kann auch ein Unwetter bringen: Die Herausforderungen von Cloud Native

In seiner Komödie „Die Vögel“ beschrieb der griechische Schriftsteller Aristophanes bereits 414 v. Chr. eine Traumstadt in den Wolken und legte damit den Grundstein für den heutigen Begriff des „Wolkenkuckucksheims“. In der Tat können auch cloud-native Softwareprojekte trotz ihres großen Potenzials in wenig tragfähigen Luftschlössern enden, wenn ihre Herausforderungen und Problemstellungen vor lauter Trendgläubigkeit nicht kritisch mitbedacht werden.

Der unterschätzte Verwaltungsaufwand
Die Verwaltung von Softwareprojekten in der Cloud kann zwar häufig sehr einfach und unkompliziert gestaltet werden. Das sollte jedoch nicht darüber hinwegtäuschen, dass Hostinglösungen in der Cloud oder der großflächige Einsatz von Managed Services neue Abhängigkeiten mit sich bringen. Verändert beispielsweise ein Hosting-Anbieter die Spezifikationen seiner Schnittstellen, kann dies weitreichende Anpassungen an der Software erforderlich machen. Zudem sollte auch die Gefahr eines Vendor Lock-in  mitbedacht werden, der einen Umzug der Software von einem Anbieter zu einem anderen oder auch auf einen eigenen Server erheblich erschweren kann.

Die komplexere Sicherheitsarchitektur
Der Schutz von Daten, die auf unterschiedlichen Cloud-Servern gespeichert werden, bringt komplexere Anforderungen im Blick auf die Datensicherheit mit sich als Anwendungen, die im unternehmensinternen Netzwerk gehostet werden. Der entsprechende Aufwand zur Gewährleistung der Systemsicherheit muss daher vor allem bei komplexen cloud-basierten Softwareprojekten gründlich analysiert und permanent überwacht werden.

Die komplexere Kostenkalkulation
Im Blog des Softwareentwicklers Basecamp beschreibt CTO David Heinemeier Hansson eindrücklich und ehrlich, warum sein Team beim Hosting der Kommunikationssoftware HEY nach einigen Experimenten die Cloud wieder verlassen hat. Als Hauptargument nennt er dabei die hohen Kosten. So hätte sich das Unternehmen Absicherungen für Belastungsspitzen eingekauft, die es auch nach mehreren Monaten Betrieb nie gegeben habe. Dazu Hansson: "Es ist, als ob Sie ein Viertel des Wertes Ihres Hauses für eine Erdbebenversicherung zahlen würden, obwohl Sie nicht in der Nähe einer Verwerfungslinie wohnen."
Derzeit erscheint es unklar, ob die Kosten für Cloud-Hosting aufgrund des wachsenden Marktes und immer variablerer Vertragsmodelle sinken werden oder ob diese im Hinblick auf die Gefahr wachsender Hosting-Monopole weiter steigen. Der mögliche Kostendruck muss daher gerade bei komplexen Softwarelösungen kontinuierlich mitbedacht werden.

Die ethische Fragestellung
In seinen Überlegungen spricht Hansson eine weitere Fragestellung an: Ist es im Blick auf das Internet bedenklich, „dass dieses dezentrale Weltwunder heute größtenteils auf Computern läuft, die einer Handvoll Megakonzernen gehören.“?
In einer Zeit, in der Wissen und Daten mehr denn je Macht bedeuten, erscheint die Frage, wie und wo Datenmaterial gespeichert werden sollte, längst nicht mehr als eine abstrakte Fragestellung für Idealisten. Denn ihre Beantwortung kann durchaus weitreichende und äußerst konkrete Auswirkungen für viele Menschen mit sich bringen.

Ein Blick in die Aussichten: Cloud Native ja, cloud-naiv besser nicht!

Schon die dargestellten Kennzahlen unterstreichen, wie aussichtsreich das Potenzial von Cloud-native für die IT, für Unternehmen und die gesamte Digitalisierung sein kann. Software „born in the cloud“ bietet die notwendige Flexibilität, um den ständig wechselnden Umweltbedingungen unserer Zeit adäquat zu begegnen.
Die Aussichten am Cloud Native-Himmel erscheinen daher zurecht rosig.

Dennoch bleibt ein beständiges Unwetterrisiko. Denn auch das chancenreichste Cloud-Projekt kann baden gehen, wenn vor lauter Trendgläubigkeit der Blick auf die konkreten Anforderungen und Bedürfnisse zu kurz kommt. In der Welt von Cloud Native gewinnen zudem sicherheitsrelevante Fragestellungen, die Frage der Kostenplanung sowie wertethische Herausforderungen an Bedeutung. Bei aller Attraktivität von Cloud Native sollte vor allen technischen Diskussionen daher auch zukünftig der Blick auf die konkreten Kundenbedürfnisse im Fokus bleiben. Denn mitunter lassen sich die Ansätze und Technologien aus dem Cloud Native-Universum auch lokal nutzen, um deren Potenzial zu entfalten und gleichzeitig Kosten und Sicherheitsrisiken zu senken.

 

Über Andreas

Noch mehr Artikel