Beim Architekturmuster partitionierte Multi-Cloud werden mehrere öffentliche Cloud-Umgebungen kombiniert, die von verschiedenen Cloud-Dienstanbietern betrieben werden. Diese Architektur bietet die Flexibilität, eine Anwendung in einer optimalen Rechenumgebung bereitzustellen, die die im ersten Teil dieser Reihe beschriebenen Multi-Cloud-Antriebskräfte und -Überlegungen berücksichtigt.
Das folgende Diagramm zeigt ein partitioniertes Multi-Cloud-Architekturmuster.
Dieses Architekturmuster kann auf zwei verschiedene Arten aufgebaut werden. Der erste Ansatz basiert auf der Bereitstellung der Anwendungskomponenten in verschiedenen Public-Cloud-Umgebungen. Dieser Ansatz wird auch als zusammengesetzte Architektur bezeichnet und entspricht dem Ansatz des Architekturmusters gestaffeltes Hybrid. Anstatt eine On-Premises-Umgebung mit einer öffentlichen Cloud zu verwenden, werden jedoch mindestens zwei Cloud-Umgebungen verwendet. In einer zusammengesetzten Architektur werden für eine einzelne Arbeitslast oder Anwendung Komponenten aus mehr als einer Cloud verwendet. Beim zweiten Ansatz werden verschiedene Anwendungen in verschiedenen Public-Cloud-Umgebungen bereitgestellt. In der folgenden unvollständigen Liste werden einige der Geschäftstreiber für den zweiten Ansatz beschrieben:
- Vollständige Integration von Anwendungen, die in unterschiedlichen Cloud-Umgebungen gehostet werden, bei einer Fusion oder Übernahme zwischen zwei Unternehmen.
- Sie möchten Flexibilität fördern und den unterschiedlichen Cloud-Präferenzen in Ihrer Organisation gerecht werden. Mit diesem Ansatz können Sie die Organisationseinheiten dazu anregen, den Cloud-Anbieter auszuwählen, der ihren spezifischen Anforderungen und Präferenzen am besten entspricht.
- Für die Nutzung in einer multiregionalen oder globalen Cloud-Bereitstellung. Wenn ein Unternehmen die Bestimmungen zum Datenstandort in bestimmten Regionen oder Ländern einhalten muss, muss es einen der verfügbaren Cloud-Anbieter an diesem Standort auswählen, wenn sein primärer Cloud-Anbieter dort keine Cloud-Region hat.
Mit dem Muster der partitionierten Multi-Cloud-Architektur können Sie optional die Möglichkeit beibehalten, Arbeitslasten nach Bedarf von einer öffentlichen Cloud-Umgebung in eine andere zu verschieben. In diesem Fall ist die Portabilität Ihrer Arbeitslasten eine wichtige Anforderung. Wenn Sie Arbeitslasten in mehreren Rechenumgebungen bereitstellen und möchten, dass diese umgebungsübergreifend verschoben werden können, müssen Sie die Unterschiede zwischen den Umgebungen abstrahieren. Mit GKE Enterprise können Sie eine Lösung entwerfen und erstellen, um die Komplexität von Multi-Cloud-Umgebungen mit einheitlichen Governance-, Betriebs- und Sicherheitsstandards zu bewältigen. Weitere Informationen finden Sie unter GKE Multi-Cloud.
Wie bereits erwähnt, kann es sowohl geschäftliche als auch technische Gründe geben, Google Cloud mit einem anderen Cloud-Anbieter zu kombinieren und Arbeitslasten auf diese Cloud-Umgebungen aufzuteilen. Multi-Cloud-Lösungen bieten Ihnen die Flexibilität, Anwendungen in Multi-Cloud-Umgebungen zu migrieren, zu erstellen und zu optimieren, ohne dabei den Anbieter zu minimieren. Außerdem können Sie damit behördliche Anforderungen erfüllen. Sie können beispielsweise Google Cloud mit Oracle Cloud Infrastructure (OCI) verbinden, um eine Multi-Cloud-Lösung zu erstellen, die die Funktionen beider Plattformen nutzt. Dazu wird eine private Cloud Interconnect-Verbindung verwendet, um Komponenten in OCI mit Ressourcen in Google Cloud zu kombinieren. Weitere Informationen finden Sie unter Google Cloud und Oracle Cloud Infrastructure – Multi-Cloud optimal nutzen. Darüber hinaus ermöglicht Cross-Cloud Interconnect eine dedizierte Verbindung mit hoher Bandbreite zwischen Google Cloud und anderen unterstützten Cloud-Dienstanbietern. So können Sie Multi-Cloud-Lösungen entwerfen und erstellen, um ein hohes Inter-Cloud-Traffic-Volumen zu verarbeiten.
Vorteile
Die Verwendung einer Multi-Cloud-Architektur bietet zwar mehrere geschäftliche und technische Vorteile, wie im Abschnitt Treiber, Überlegungen, Strategie und Ansätze erläutert, ist es jedoch wichtig, eine detaillierte Machbarkeitsbewertung für jeden potenziellen Vorteil durchzuführen. Bei Ihrer Bewertung sollten Sie alle damit verbundenen direkten oder indirekten Herausforderungen oder potenziellen Hindernisse und Ihre Fähigkeit, diese effektiv zu bewältigen, sorgfältig berücksichtigen. Berücksichtigen Sie auch, dass das langfristige Wachstum Ihrer Anwendungen oder Dienste zu Komplexitäten führen kann, die die anfänglichen Vorteile überwiegen.
Hier einige entscheidende Vorteile des partitionierten Multi-Cloud-Architekturmusters:
In Szenarien, in denen Sie die Bindung an einen einzelnen Cloud-Anbieter minimieren möchten, können Sie Anwendungen auf mehrere Cloud-Anbieter verteilen. So können Sie die Anbieterbindung relativ reduzieren, da Sie die Möglichkeit haben, die Tarife (bis zu einem gewissen Grad) bei Ihren Cloud-Anbietern zu ändern. Open Cloud hilft dabei, Google Cloud-Funktionen wie GKE Enterprise an verschiedenen physischen Standorten bereitzustellen. Durch die Erweiterung der Google Cloud-Funktionen lokal, in mehreren öffentlichen Clouds und am Edge bietet sie Flexibilität, Agilität und treibt die Transformation voran.
Aus regulatorischen Gründen können Sie Anwendungen für einen bestimmten Teil Ihrer Nutzerbasis und Daten aus einem Land zur Verfügung stellen, in dem Google Cloud keine Cloud-Region hat.
Das Architekturmuster partitionierte Multi-Cloud kann dazu beitragen, die Latenz zu reduzieren und die Gesamtqualität der Nutzererfahrung an Standorten zu verbessern, an denen der primäre Cloud-Anbieter keine Cloud-Region oder keinen Point of Presence hat. Dieses Muster ist besonders nützlich, wenn eine Multi-Cloud-Verbindung mit hoher Kapazität und niedriger Latenz verwendet wird, z. B. Cross-Cloud Interconnect und CDN Interconnect mit einem verteilten CDN.
Sie können Anwendungen über mehrere Cloud-Anbieter bereitstellen, sodass Sie aus den besten Diensten der einzelnen Anbieter auswählen können.
Das Architekturmuster der partitionierten Multi-Cloud kann Fusions- und Akquisitionsszenarien erleichtern und beschleunigen, bei denen die Anwendungen und Dienste der beiden Unternehmen in verschiedenen Public-Cloud-Umgebungen gehostet werden.
Best Practices
- Beginnen Sie mit der Bereitstellung einer nicht geschäftskritischen Arbeitslast. Diese erste Bereitstellung in der sekundären Cloud kann dann als Muster für zukünftige Bereitstellungen oder Migrationen dienen. Dieser Ansatz ist jedoch wahrscheinlich nicht geeignet, wenn die spezifische Arbeitslast aus rechtlichen oder regulatorischen Gründen in einer bestimmten Cloud-Region gehostet werden muss und der primäre Cloud-Anbieter keine Region im erforderlichen Gebiet hat.
- Minimieren Sie Abhängigkeiten zwischen Systemen, die in verschiedenen öffentlichen Cloudumgebungen ausgeführt werden, insbesondere wenn die Kommunikation synchron erfolgt. Diese Abhängigkeiten können die Leistung verlangsamen, die Gesamtverfügbarkeit verringern und möglicherweise zusätzliche Gebühren für die ausgehende Datenübertragung anfallen.
- Prüfen Sie die Verwendung von Containern und Kubernetes, um die Unterschiede zwischen Umgebungen durch Abstraktion zu überbrücken, sofern dies von den Anwendungen unterstützt und möglich ist.
- Achten Sie darauf, dass CI/CD-Pipelines und Tools für die Bereitstellung und das Monitoring in allen Cloud-Umgebungen konsistent sind.
- Wählen Sie das optimale Netzwerkarchitekturmuster aus, das die effizienteste und effektivste Kommunikationslösung für die von Ihnen verwendeten Anwendungen bietet.
- Die Kommunikation muss detailliert und kontrolliert werden. Verwenden Sie sichere APIs, um Anwendungskomponenten bereitzustellen.
- Je nach Ihren spezifischen geschäftlichen und technischen Anforderungen können Sie entweder das geschachtelte Architekturmuster oder eines der Netzwerkmuster mit Gateway verwenden.
- Um die Erwartungen an Verfügbarkeit und Leistung zu erfüllen, sollten eine hohe End-to-End-Verfügbarkeit (HA), geringe Latenzzeiten und ein angemessener Durchsatz gewährleistet sein.
Zum Schutz vertraulicher Daten empfehlen wir, alle öffentliche Kommunikation verschlüsseln.
- Wenn eine Verschlüsselung am Konnektivitätslayer erforderlich ist, stehen je nach ausgewählter Hybridkonnektivitätslösung verschiedene Optionen zur Verfügung. Zu diesen Optionen gehören VPN-Tunnel, HA VPN über Cloud Interconnect und MACsec für Cloud-übergreifende Interconnects.
Wenn Sie mehrere CDNs als Teil Ihres mehrschichtigen Architekturmusters verwenden und Ihr anderes CDN mit großen Datendateien aus Google Cloud füllen, sollten Sie CDN Interconnect-Verbindungen zwischen Google Cloud und unterstützten Anbietern verwenden, um diesen Traffic und möglicherweise die Kosten zu optimieren.
Erweitern Sie Ihre Lösung zur Identitätsverwaltung zwischen Umgebungen, damit sich Systeme über Umgebungsgrenzen hinweg sicher authentifizieren können.
Mit Cloud Load Balancing können Sie Anfragen effektiv zwischen Google Cloud und einer anderen Cloud-Plattform ausbalancieren. Weitere Informationen finden Sie unter Traffic an einen lokalen Speicherort oder eine andere Cloud weiterleiten.
- Wenn das ausgehende Datenübertragungsvolumen von Google Cloud in andere Umgebungen hoch ist, sollten Sie Cross-Cloud Interconnect in Betracht ziehen.
Um Inkonsistenzen bei Protokollen, APIs und Authentifizierungsmechanismen über verschiedene Back-Ends hinweg zu überwinden, empfehlen wir, sofern zutreffend, ein API-Gateway oder einen Proxy als einheitliche Fassade zu implementieren. Dieses Gateway oder dieser Proxy fungiert als zentraler Kontrollpunkt und führt die folgende Maßnahmen aus:
- Implementiert zusätzliche Sicherheitsmaßnahmen.
- Schützt Client-Apps und andere Dienste vor Änderungen am Back-End-Code.
- Erleichtert Audit-Trails für die Kommunikation zwischen allen umgebungsübergreifenden Anwendungen und deren entkoppelten Komponenten.
- Fungiert als
Zwischenkommunikationsschicht
zwischen Legacy- und
modernisierten Diensten.
- Mit Apigee und Apigee Hybrid können Sie Gateways für Unternehmen und Hybridgateways in lokalen Umgebungen, Edge-Umgebungen, anderen Clouds und Google Cloud-Umgebungen hosten und verwalten.
In einigen der folgenden Fälle kann die Verwendung von Cloud Load Balancing mit einem API-Gateway eine robuste und sichere Lösung für die Verwaltung, Sicherheit und Verteilung von API-Traffic in großem Maßstab über mehrere Regionen hinweg bieten:
- Bereitstellung eines mehrregionalen Failover für Apigee API-Laufzeiten in verschiedenen Regionen
Leistung mit Cloud CDN steigern
WAF- und DDoS-Schutz über Google Cloud Armor
Verwenden Sie nach Möglichkeit einheitliche Tools für das Logging und Monitoring in Cloud-Umgebungen. Sie können Open-Source-Monitoringsysteme verwenden. Weitere Informationen finden Sie unter Hybrid- und Multi-Cloud-Monitoring- und -Logging-Muster.
Wenn Sie Anwendungskomponenten dezentral bereitstellen, d. h. die Komponenten einer einzelnen Anwendung in mehr als einer Cloud-Umgebung, lesen Sie die Best Practices für das Architekturmuster gestaffelter Hybrid.