Muster für verteilte Architekturen

Last reviewed 2024-10-29 UTC

Wenn Sie von einer nicht hybriden oder nicht Multi-Cloud-Rechenumgebung zu einer Hybrid- oder Multi-Cloud-Architektur migrieren, sollten Sie zuerst die Einschränkungen Ihrer vorhandenen Anwendungen und die Auswirkungen dieser Einschränkungen auf die Anwendungsleistung berücksichtigen. Dieser Aspekt wird noch wichtiger, wenn Ihre Anwendungen oder Anwendungskomponenten verteilt in verschiedenen Umgebungen ausgeführt werden. Nachdem Sie Ihre Einschränkungen berücksichtigt haben, entwickeln Sie einen Plan, um sie zu vermeiden oder zu überwinden. Berücksichtigen Sie die einzigartigen Funktionen der einzelnen Computing-Umgebungen in einer verteilten Architektur.

Designaspekte

Die folgenden Designüberlegungen gelten für verteilte Bereitstellungsmuster. Je nach Ziellösung und Geschäftszielen können die Priorität und die Auswirkungen der einzelnen Aspekte variieren.

Latenz

Bei jedem Architekturmuster, bei dem Anwendungskomponenten (Frontends, Backends oder Mikrodienste) auf verschiedene Rechenumgebungen verteilt werden, kann es zu Kommunikationslatenzen kommen. Diese Latenz wird von der Hybridnetzwerkkonnektivität (Cloud VPN und Cloud Interconnect) und der geografischen Entfernung zwischen dem lokalen Standort und den Cloud-Regionen oder zwischen den Cloud-Regionen in einer Multi-Cloud-Umgebung beeinflusst. Daher ist es wichtig, die Latenzanforderungen Ihrer Anwendungen und ihre Empfindlichkeit gegenüber Netzwerkverzögerungen zu bewerten. Anwendungen, die Latenz tolerieren können, sind für die anfängliche verteilte Bereitstellung in einer Hybrid- oder Multi-Cloud-Umgebung besser geeignet.

Architektur für den temporären und den Endzustand

Um die Erwartungen und mögliche Auswirkungen auf Kosten, Umfang und Leistung zu spezifizieren, ist es wichtig, in der Planungsphase zu analysieren, welche Art von Architektur Sie benötigen und wie lange sie voraussichtlich dauern wird. Wenn Sie beispielsweise eine Hybrid- oder Multi-Cloud-Architektur für einen langen Zeitraum oder dauerhaft verwenden möchten, sollten Sie Cloud Interconnect in Betracht ziehen. Um die Kosten für die ausgehende Datenübertragung zu senken und die Netzwerkleistung der hybriden Verbindung zu optimieren, werden die Kosten für die ausgehende Datenübertragung mit Cloud Interconnect ermäßigt, wenn die Bedingungen für die ermäßigte Datenübertragungsrate erfüllt sind.

Zuverlässigkeit

Zuverlässigkeit ist ein wichtiger Aspekt bei der Architektur von IT-Systemen. Die Betriebsdauer ist ein wesentlicher Aspekt der Systemzuverlässigkeit. In Google Cloud können Sie die Ausfallsicherheit einer Anwendung erhöhen, indem Sie redundante Komponenten dieser Anwendung mit Umschaltfunktionen über mehrere Zonen in einer einzelnen Region oder über mehrere Regionen hinweg bereitstellen. Redundanz ist eines der wichtigsten Elemente zur Verbesserung der Gesamtverfügbarkeit einer Anwendung. Bei Anwendungen mit einer verteilten Einrichtung in Hybrid- und Multi-Cloud-Umgebungen ist es wichtig, eine gleichbleibende Verfügbarkeit aufrechtzuerhalten.

Um die Verfügbarkeit eines Systems in einer lokalen Umgebung oder in anderen Cloud-Umgebungen zu verbessern, sollten Sie überlegen, welche Hardware- oder Softwareredundanz – mit Failover-Mechanismen – Sie für Ihre Anwendungen und ihre Komponenten benötigen. Idealerweise sollten Sie die Verfügbarkeit eines Dienstes oder einer Anwendung in allen Umgebungen über die verschiedenen Komponenten und die unterstützende Infrastruktur hinweg berücksichtigen, einschließlich der Verfügbarkeit der Hybridverbindung. Dieses Konzept wird auch als die zusammengesetzte Verfügbarkeit einer Anwendung oder eines Dienstes bezeichnet.

Je nach Abhängigkeiten zwischen den Komponenten oder Diensten kann die kombinierte Verfügbarkeit für eine Anwendung höher oder niedriger sein als für einen einzelnen Dienst oder eine einzelne Komponente. Weitere Informationen finden Sie unter Kompositverfügbarkeit: Gesamtverfügbarkeit der Cloud-Infrastruktur berechnen.

Um die gewünschte Systemzuverlässigkeit zu erreichen, müssen Sie klare Zuverlässigkeitsmesswerte definieren und Anwendungen so entwerfen, dass sie sich selbst heilen und Störungen in den verschiedenen Umgebungen effektiv überstehen können. Informationen dazu, wie Sie geeignete Methoden zur Messung der Kundenzufriedenheit mit Ihren Diensten definieren, finden Sie unter Zielvorhaben für die Zuverlässigkeit definieren.

Hybrid- und Multi-Cloud-Konnektivität

Die Anforderungen an die Kommunikation zwischen den verteilten Anwendungskomponenten sollten bei der Auswahl einer Option für die Hybridnetzwerkverbindung berücksichtigt werden. Jede Konnektivitätsoption hat Vor- und Nachteile sowie spezifische Faktoren, die berücksichtigt werden müssen, z. B. Kosten, Traffic-Volumen, Sicherheit usw. Weitere Informationen finden Sie im Abschnitt Überlegungen zum Design der Konnektivität.

Verwaltung

Einheitliche Verwaltungs- und Überwachungstools sind für erfolgreiche Hybrid- und Multi-Cloud-Umgebungen (mit oder ohne Portabilität von Arbeitslasten) unerlässlich. Kurzfristig können diese Tools Entwicklungs-, Test- und Betriebskosten verursachen. Je mehr Cloud-Anbieter Sie nutzen, desto komplexer wird die Verwaltung Ihrer Umgebungen. Die meisten Anbieter öffentlicher Clouds haben nicht nur unterschiedliche Features, sondern auch unterschiedliche Tools, SLAs und APIs zur Verwaltung von Cloud-Diensten. Wägen Sie daher die strategischen Vorteile der ausgewählten Architektur gegen die potenzielle kurzfristige Komplexität und die langfristigen Vorteile ab.

Kosten

Jeder Cloud-Dienstanbieter in einer Multi-Cloud-Umgebung hat seine eigenen Abrechnungsmesswerte und -tools. Für mehr Transparenz und einheitliche Dashboards sollten Sie Tools zur Multi-Cloud-Kostenverwaltung und -Optimierung verwenden. Wenn Sie beispielsweise Cloud-first-Lösungen für mehrere Cloud-Umgebungen entwickeln, können die Produkte, Preise, Rabatte und Verwaltungstools der einzelnen Anbieter zu Kosteninkonsistenzen zwischen diesen Umgebungen führen.

Wir empfehlen, eine einzige, klar definierte Methode zur Berechnung der vollständigen Kosten von Cloud-Ressourcen zu verwenden und Transparenz bei den Kosten zu schaffen. Kostentransparenz ist für die Kostenoptimierung unerlässlich. Wenn Sie beispielsweise Abrechnungsdaten der von Ihnen verwendeten Cloud-Anbieter mit dem Looker-Block zur Cloud-Kostenverwaltung in Google Cloud kombinieren, können Sie eine zentrale Übersicht Ihrer Multi-Cloud-Kosten erstellen. Diese Ansicht kann Ihnen dabei helfen, eine konsolidierte Berichtsübersicht Ihrer Ausgaben in mehreren Clouds zu erhalten. Weitere Informationen finden Sie unter Die Strategie zur effektiven Optimierung der Kostenverwaltung für die Cloud-Abrechnung.

Wir empfehlen außerdem, FinOps-Praktiken zu verwenden, um Kosten sichtbar zu machen. Im Rahmen einer soliden FinOps-Praxis kann ein zentrales Team die Entscheidungsfindung für die Ressourcenoptimierung an alle anderen an einem Projekt beteiligten Teams delegieren, um die individuelle Verantwortlichkeit zu fördern. Bei diesem Modell sollte das zentrale Team den Prozess, die Berichte und die Tools für die Kostenoptimierung standardisieren. Weitere Informationen zu den verschiedenen Aspekten der Kostenoptimierung und zu den Empfehlungen, die Sie berücksichtigen sollten, finden Sie unter Google Cloud-Architektur-Framework: Kostenoptimierung.

Datenverschiebung

Die Datenübertragung ist ein wichtiger Aspekt für die Hybrid- und Multi-Cloud-Strategie und -Architekturplanung, insbesondere für verteilte Systeme. Unternehmen müssen ihre verschiedenen geschäftlichen Anwendungsfälle, die zugrunde liegenden Daten und die Klassifizierung der Daten (für regulierte Branchen) identifizieren. Außerdem sollten sie berücksichtigen, wie sich die Datenspeicherung, ‑freigabe und ‑zugriff für verteilte Systeme in verschiedenen Umgebungen auf die Anwendungsleistung und Datenkonsistenz auswirken können. Diese Faktoren können die Anwendung und die Architektur der Datenpipeline beeinflussen. Mit den umfassenden Möglichkeiten zur Datenmigration von Google Cloud können Unternehmen ihre spezifischen Anforderungen erfüllen und hybride und Multi-Cloud-Architekturen nutzen, ohne Abstriche bei Einfachheit, Effizienz oder Leistung hinnehmen zu müssen.

Sicherheit

Bei der Migration von Anwendungen in die Cloud sollten Sie Cloud-first-Sicherheitsfunktionen wie Konsistenz, Beobachtbarkeit und einheitliche Sicherheitstransparenz berücksichtigen. Jeder Anbieter öffentlicher Clouds hat seinen eigenen Ansatz, seine eigenen Best Practices und seine eigenen Sicherheitsfunktionen. Es ist wichtig, diese Funktionen zu analysieren und anzupassen, um eine standardmäßige, funktionale Sicherheitsarchitektur zu erstellen. Starke IAM-Kontrollen, Datenverschlüsselung, Sicherheitsprüfungen und die Einhaltung von Branchenvorschriften sind ebenfalls wichtige Aspekte der Cloud-Sicherheit.

Bei der Planung einer Migrationsstrategie empfehlen wir, die oben genannten Aspekte zu analysieren. Sie können dazu beitragen, die Wahrscheinlichkeit zu minimieren, dass die Architektur komplexer wird, wenn die Anzahl Ihrer Anwendungen oder das Traffic-Volumen zunimmt. Außerdem ist das Entwerfen und Erstellen einer Landing Zone fast immer eine Voraussetzung für die Bereitstellung von Unternehmens-Arbeitslasten in einer Cloud-Umgebung. Eine Landing Zone hilft Ihrem Unternehmen, Cloud-Dienste sicherer bereitzustellen, zu verwenden und zu skalieren. Sie umfasst mehrere Bereiche und enthält verschiedene Elemente, wie Identitäten, Ressourcenverwaltung, Sicherheit und Netzwerke. Weitere Informationen finden Sie unter Design der Landing-Zone in Google Cloud.

Die folgenden Dokumente in dieser Reihe beschreiben andere Muster für verteilte Architekturen: