Unterschied zwischen Cloud-nativ und Cloud-agnostisch
Der Begriff „Cloud-nativ“ wird ziemlich lose verwendet, aber meistens um Anwendungen zu beschreiben, die gebaut werden, um die Vorteile des Cloud-Delivery-Models zu nutzen, d.h. Multi-Tenancy, elastische Skalierung sowie einfache Integration und Verwaltung. Laut der Cloud Native Computing Foundation (CNCF) ermöglichen “cloud-native Technologien Unternehmen, skalierbare Anwendungen in modernen, dynamischen Umgebungen wie öffentlichen, privaten und hybriden Clouds zu erstellen und auszuführen”.
Dan Kohn, ehemaliger Executive Director der CNCF, erklärt: “Die Kernidee ist, dass Sie, anstatt eine Anwendung auf einer Maschine laufen zu lassen und zu sagen ‚OK, das ist mein Datenbankserver, das ist mein Webserver, das ist mein Middleware-Server‘, alle Ihre Anwendungen in Container packen, eine Reihe von Anforderungen für sie festlegen und sie dann automatisch auf Ihren Maschinen für Sie orchestrieren lassen.”
Eine Cloud-native Architektur beinhaltet jedoch typischerweise Dienste und Komponenten, die ausschließlich an einen bestimmten Cloud-Service-Provider (CSP) gebunden sind. Unternehmen entscheiden sich also für einen Cloud-Anbieter und bleiben in Zukunft bei eben diesem Partner. Der Begriff “Cloud-agnostisch” hingegen bezieht sich in der Regel auf Anwendungen und Workloads, die nahtlos zwischen Cloud-Plattformen verschoben werden können. Das bedeutet, dass Unternehmen beispielsweise ein Tool problemlos von Microsoft Azure zu AWS – oder umgekehrt – verschieben können, ohne Unannehmlichkeiten aufgrund von Abhängigkeiten befürchten zu müssen, da das Tool nicht auf die speziellen Funktionen einer bestimmten Plattform angewiesen ist.
Schauen wir uns also die Vor- und Nachteile der beiden Ansätze näher an und finden heraus, welcher für Ihr Unternehmen besser geeignet ist.
Vor- und Nachteile des Cloud-nativen Ansatzes
Mit einem Cloud-nativen Ansatz können Unternehmen die Vorteile der zugrunde liegenden Plattform nutzen, d.h. sie können alle vom Cloud-Anbieter bereitgestellten Dienste verwenden. Dies führt in der Regel zu schnellen Implementierungen, die Unternehmen dabei helfen, die Zeit bis zur Markteinführung ihrer Produkte und Dienstleistungen zu verkürzen. Weitere Vorteile, die regelmäßig genannt werden, sind eine höhere Effizienz und niedrigere Kosten – zumindest anfangs. Nicht zuletzt ist erwähnenswert, dass native Dienste problemlos untereinander kommunizieren können, da keine Abhängigkeiten von Dritten bestehen.
Doch wo immer es einen Vorteil gibt, gibt es auch einen Nachteil. Die Verwendung nativer Dienste bindet Unternehmen an einen bestimmten CSP. Folglich ist ein Wechsel zu einem anderen Anbieter entweder nicht möglich, ohne zumindest auf einen Teil der bisher genutzten Dienste zu verzichten, oder er erfordert viel Aufwand und das Neuschreiben von Code.
Und es kann immer Gründe geben, den Cloud-Anbieter zu wechseln. Bestimmte Dienste, die nicht mehr unterstützt werden, sind ein Beispiel. Fehlende Funktionen, die Ihr Unternehmen gerne nutzen würde, ein anderes. Ein möglicherweise sehr überzeugendes Angebot eines anderen Cloud-Anbieters ein weiteres. Ganz zu schweigen von der Notwendigkeit, sehr schnell zu skalieren, wenn eine Situation dies erfordert.
Vor- und Nachteile des Cloud-agnostischen Ansatzes
Die Vorteile einer Cloud-agnostischen Entwicklung sind mehr oder weniger das genaue Gegenteil der Nachteile, die mit Cloud-nativen Entwicklungen einhergehen. Zunächst einmal hilft eine Cloud-agnostische Strategie Unternehmen, die Bindung an einen Anbieter zu vermeiden, was ein Problem sein kann, wenn der Anbieter sein Produktangebot ändert, seine Dienstleistungen einstellt, die Preise erhöht oder – noch schlimmer – den Betrieb aufgibt.
Ein weiteres Argument ist, dass die Verwendung eines Cloud-agnostischen Ansatzes Unternehmen viel mehr Flexibilität und Skalierbarkeit und, nicht zu vergessen, die Möglichkeit zur Anpassung bietet, da sie je nach ihren spezifischen Geschäftsanforderungen die für sie besten Funktionen verschiedener Cloud-Plattformen auswählen können.
Auch das Risikomanagement lässt sich leicht verbessern, allein schon wegen der Redundanz, aber auch, weil der Einsatz von Systemen in verschiedenen Clouds bedeutet, dass verschiedene Lösungen für ein breites Spektrum an Diensten zur Verfügung stehen. Ein weiterer Grund, sich für einen Cloud-agnostischen Ansatz zu entscheiden, sind die besonderen Anforderungen an Datenschutz und Datenpersistenz, die viele Unternehmen haben.
Doch auch in diesem Fall haben die genannten Vorteile ihren Preis. Für mehr Flexibilität etwa müssen Unternehmen eine höhere Komplexität in Kauf nehmen. Letztere macht Implementierungen häufig schwieriger, was wiederum die anfängliche Entwicklung von Apps teurer macht. Ein weiterer möglicher Nachteil kann sein, dass ein Cloud-agnostischer Ansatz die Fähigkeit eines Unternehmens einschränkt, die Stärken und Möglichkeiten eines einzelnen Cloud-Anbieters voll auszuschöpfen, zum Beispiel, weil bestimmte Apps einige der eingebauten Funktionen, die eine Cloud-Plattform bietet, nicht nutzen können. Last but not least kostet es Zeit, wenn vieles von Grund auf neu entwickelt werden muss. Daher ist eine manchmal gehörte Beschwerde, dass es Unternehmen zu lange dauert, bis sie ihre Angebote auf den Markt bringen können.
Der richtige Ansatz hängt von den individuellen Anforderungen ab
Letztlich ist “Cloud-agnostisch versus Cloud-nativ” keine Frage von richtig oder falsch. Beide Ansätze haben ihre Vor- und Nachteile und im Endeffekt hängt die richtige Wahl immer von den individuellen Anforderungen des jeweiligen Unternehmens sowie dessen Strategie ab.
Es gibt sogar Fälle, in denen es für Unternehmen sinnvoll sein kann, beide Wege gleichzeitig zu gehen und ihre Anwendungen in zwei Gruppen zu unterteilen: Apps, die besser von einer Cloud-nativen Architektur bedient werden, und solche, die besser auf einem Cloud-agnostischen Ansatz basieren. Auf diese Weise profitieren einige der Anwendungen von einer konsistenten und leicht skalierbaren Leistung, während andere die einzigartigen Dienste eines bestimmten Cloud-Anbieters in Anspruch nehmen können.