Getty Images/iStockphoto

Eine Einführung in die Cross-Cloud-Strategie

Cross-Cloud-Architekturen ermöglichen das gleichzeitige Hosting von Workloads in verschiedenen Cloud-Umgebungen, was mehr Flexibilität, Zuverlässigkeit und Kosteneffizienz bietet.

Üblicherweise besteht der Zweck der meisten Multi-Cloud-Architekturen darin, Unternehmen die Möglichkeit zu geben, eine Cloud für die Bereitstellung einer Reihe von Workloads zu nutzen, während andere Workloads in einer anderen Cloud ausgeführt werden.

Was aber, wenn Unternehmen denselben Workload gleichzeitig in mehreren Clouds hosten möchten? Hier kommt eine Cross-Cloud-Strategie ins Spiel. Cross Cloud oder auch Cloud-übergreifende Bereitstellung ist eine einzigartige Art von Multi-Cloud-Architektur, die besondere Vorteile bietet, die mit herkömmlichen Multi-Cloud-Ansätzen nicht möglich sind.

In diesem Artikel wird erläutert, was Cross Cloud bedeutet, wie es funktioniert und wie Sie mit einer Cross-Cloud-Strategie beginnen können.

Was ist Cross Cloud?

Cross Cloud ist eine Art Cloud-Computing-Architektur, bei der ein Unternehmen eine oder mehrere Workloads über mehrere Clouds hinweg hostet. Mit anderen Worten: Bei einer Cross-Cloud-Strategie wird eine Anwendung gleichzeitig in mehr als einer Cloud ausgeführt.

Beispielsweise könnte ein Unternehmen im Rahmen einer Cross-Cloud-Strategie eine Amazon-EC2-Cloud-Serverinstanz zum Hosten des Frontends einer Anwendung verwenden, während das Backend einer Anwendung auf Azure-VMs gehostet wird.

Cross-Cloud-Architekturmuster

Unternehmen können eine Anwendung mit zwei grundlegenden Methoden Cloud-übergreifend bereitstellen:

1. Hosting redundanter Instanzen derselben App in mehr als einer Cloud: Diese Strategie ist nützlich, um die Zuverlässigkeit und Verfügbarkeit von Anwendungen zu erhöhen, da die App in der anderen Cloud verfügbar bleibt, wenn eine der Clouds ausfällt.

2. Hosting verschiedener Teile einer App in separaten Clouds: Dieser Ansatz trägt zur Optimierung der Anwendungsleistung und Kosteneffizienz bei, indem jeder Teil der App in der Cloud bereitgestellt wird, die die beste Leistung oder die besten Kosten bietet.

Beachten Sie, dass diese Bereitstellungsmuster sich nicht gegenseitig ausschließen. Ein Unternehmen könnte eine Anwendung Cloud-übergreifend bereitstellen, indem es redundante Instanzen darüber betreibt und gleichzeitig ein Teil einer anderen Anwendung in einer Cloud und einen weiteren Teil in einer anderen Cloud bereitstellt.

Wichtige Merkmale einer Cross-Cloud-Architektur

Effektive Cross-Cloud-Bereitstellungen hängen von den folgenden drei wichtigen Merkmalen ab:

1. Integration: Die Komponenten von Workloads, die über Clouds hinweg ausgeführt werden, müssen eng miteinander integriert sein. Dies ist wichtig, um sie synchron zu halten und eine angemessene Leistung sicherzustellen.

2. Einheitliche Verwaltung: Um Cloud-übergreifende Anwendungen effizient zu verwalten, benötigen Unternehmen eine Verwaltungsebene oder eine Steuerungsebene, mit der Anwendungen, die über Clouds hinweg ausgeführt werden, zentral verwaltet werden können.

3. Interoperabilität: In den meisten Fällen erfordern Cross-Cloud-Strategien Anwendungen, die Cloud-unabhängig sind und überall ausgeführt werden können.

Cross Cloud und Multi Cloud im Vergleich

Cross Cloud kann als eine Art Multi-Cloud-Architektur betrachtet werden, da sie die Nutzung mehrerer Clouds beinhaltet. Allerdings unterscheidet sich Cross Cloud von dem, was man normalerweise unter Multi Cloud versteht.

Traditionell bezieht sich Multi Cloud auf eine Cloud-Computing-Strategie, bei der ein Unternehmen mehr als eine Cloud-Plattform nutzt, dabei jedoch alle Workloads innerhalb einer bestimmten Cloud belässt. Multi Cloud könnte beispielsweise das Hosting einer Anwendung mit EC2 und einer weiteren, separaten Anwendung mit Azure-VMs umfassen.

Dies unterscheidet sich von einem Cross-Cloud-Ansatz, bei dem dieselbe Anwendung gleichzeitig in mehreren Clouds ausgeführt wird.

Vorteile der Cross-Cloud-Strategie

Die Vorteile einer Cross-Cloud-Strategie variieren je nachdem, welche Art von Cloud-übergreifender Bereitstellungsarchitektur Unternehmen verwenden.

Wenn ein Unternehmen redundante Instanzen einer Anwendung in mehr als einer Cloud bereitstellt, besteht der Hauptvorteil in einer höheren Zuverlässigkeit.

Wenn verschiedene Teile der Dienste einer Anwendung in unterschiedlichen Clouds bereitgestellt werden, besteht der Hauptvorteil in einer höheren Flexibilität. Bei dieser Art der Cross-Cloud-Bereitstellung kann ausgewählt werden, welche Clouds welche Teile der Anwendung hosten.

Diese Flexibilität kann zu einer besseren Leistung und geringeren Kosten führen, da eine Cloud-Plattform möglicherweise besser auf die Anforderungen eines Teils der Anwendung zugeschnitten ist, während eine andere Cloud besser für den anderen Teil geeignet ist. Beispielsweise könnte ein Unternehmen über eine Anwendung mit Diensten verfügen, die in verschiedenen Programmiersprachen geschrieben sind. Ein Dienst ist in einer Sprache geschrieben, die von AWS Lambda, einem Dienst zum Ausführen serverloser Funktionen, nativ unterstützt wird. Ein anderer Dienst ist in einer anderen Sprache geschrieben, die von Lambda nicht direkt unterstützt wird.

Die einzige Möglichkeit für das Unternehmen, den Dienst auf Lambda auszuführen, besteht in der Verwendung einer Laufzeit-API, was jedoch komplizierter ist. Daher entscheidet sich das Unternehmen, den ersten Dienst auf Lambda zu hosten und den anderen auf einer anderen Cloud mit einer serverlosen Funktion auszuführen, die die Programmiersprache des Dienstes nativ unterstützt.

Herausforderungen bei der Cloud-übergreifenden Nutzung

Cloud-übergreifende Strategien bieten zwar mehr Flexibilität, bringen jedoch auch einige Herausforderungen mit sich, darunter die folgenden:

  • Komplexität: Die Cross-Cloud-Nutzung erhöht die Komplexität, da mehrere Clouds gleichzeitig verwaltet werden müssen, anstatt jede Cloud-Umgebung separat zu verwalten. Administratoren müssen entsprechend geschult sein.
  • Leistungsmanagement: Das Leistungsmanagement bei der Cloud-übergreifenden Nutzung erfordert die Fähigkeit, Leistungsdaten aus mehreren Clouds zu erfassen und zu analysieren sowie die Ursache von Leistungsproblemen bis zu einer bestimmten Cloud zurückzuverfolgen.
  • Synchronisierungsprobleme: Die Synchronisierung von Anwendungen, die über Clouds hinweg ausgeführt werden, kann eine Herausforderung darstellen, da Anwendungskomponenten, die in verschiedenen Clouds gehostet werden, auf das Netzwerk angewiesen sind, um synchron zu bleiben. Netzwerkverzögerungen können diesen Prozess stören.
  • Sicherheit: Die Komplexität von Cloud-übergreifenden Anwendungen in Verbindung mit der Tatsache, dass sie mehreren Clouds ausgesetzt sind, kann ihre Sicherheit erschweren.

Erste Schritte mit Cross-Cloud-Lösungen

Unternehmen, die eine Cross-Cloud-Strategie für sich in Betracht ziehen, können die folgenden Schritte ausführen, um loszulegen.

1. Cross-Cloud-Ziele und -Strategie definieren

Zunächst sollten Sie festlegen, warum sie eine Cloud-übergreifende Strategie verfolgen möchten. Möchten Sie Kosten sparen, die Leistung verbessern, die Zuverlässigkeit erhöhen oder alles zusammen? Unterschiedliche Ziele und Anwendungsfälle erfordern unterschiedliche Cross-Cloud-Bereitstellungsmuster. Wählen Sie daher eine Strategie, die Ihre Geschäftsziele unterstützt.

2. Umgebung und Architektur bewerten

Überprüfen Sie die Cloud-Plattformen und -Services, die Ihrem Unternehmen zur Verfügung stehen, und stellen Sie sicher, dass die erforderliche Kombination vorhanden ist, um das angestrebte Bereitstellungsmuster zu unterstützen. Wenn ein Unternehmen beispielsweise plant, Instanzen derselben Anwendung in verschiedenen Clouds zu hosten, muss sichergestellt werden, dass die Anwendung mit mehr als einer Cloud kompatibel ist.

3.Verwaltungsebene implementieren

Legen Sie fest, wie die Anwendung über Clouds hinweg bereitgestellt und verwaltet werden soll. Ein Ansatz besteht darin, eine Plattform wie Kubernetes zu verwenden, um einen Cluster von Servern und Anwendungsdiensten zu erstellen, der sich über mehrere Clouds erstreckt. Ein anderer Ansatz besteht darin, die Anwendung so zu konzipieren, dass sie sich in die APIs von Multi-Cloud-Anbietern integrieren lässt, anstatt die zugrunde liegenden Cloud-Plattformen von der Anwendung zu abstrahieren.

4. Anwendung bereitstellen und verwalten

Nachdem die oben genannten Komponenten eingerichtet sind, können Unternehmen die Anwendung bereitstellen und verwalten. Stellen Sie sicher, dass Sie die Überwachungs- und Beobachtungsdaten erfassen können, die für die Verwaltung der Leistung und Sicherheit einer über mehrere Clouds verteilten App erforderlich sind. Hier eignet sich maschinelles Lernen für die Optimierung der Workload-Verteilung.

Erfahren Sie mehr über Cloud Computing