Cloud Service Mesh – Übersicht

Cloud Service Mesh ist ein Service Mesh, das in Google Cloud und auf unterstützten GKE Enterprise-Plattformen verfügbar ist. Sie unterstützt Dienste, die in einer Reihe von Recheninfrastrukturen ausgeführt werden. Cloud Service Mesh wird von APIs gesteuert, die für Google Cloud, als Open Source oder für beides entwickelt wurden.

Dieses Dokument richtet sich an Sie, wenn Sie ein neuer Cloud Service Mesh-Nutzer oder weiterhin Kunde von Anthos Service Mesh oder Traffic Director sind.

Was ist ein Service Mesh?

Ein Service Mesh ist eine Architektur, die eine verwaltete, beobachtbare und sichere Kommunikation zwischen Ihren Diensten ermöglicht. Dadurch können Sie leichter zuverlässige Unternehmensanwendungen mit vielen Mikrodiensten in der von Ihnen gewählten Infrastruktur erstellen. Service Meshes verwalten die allgemeinen Anforderungen zum Ausführen eines Dienstes wie Monitoring, Netzwerk und Sicherheit mit konsistenten, leistungsstarken Tools, die es Dienstentwicklern und -betreibern erleichtern, sich auf das Erstellen und Verwalten hochwertiger Anwendungen für ihre Nutzer zu konzentrieren.

In der Architektur besteht ein Service Mesh aus einer oder mehreren Steuerungsebenen und einer Datenebene. Das Service Mesh überwacht den gesamten Traffic in und aus Ihren Diensten. In Kubernetes wird ein Proxy durch ein Sidecar-Muster für die Mikrodienste im Mesh bereitgestellt. In Compute Engine können Sie Proxys auf VMs bereitstellen oder proxylose gRPC-Dienste für die Datenebene verwenden.

Dieses Muster entkoppelt die Anwendungs- oder Geschäftslogik von Netzwerkfunktionen und ermöglicht es Entwicklern, sich auf die Funktionen zu konzentrieren, die das Unternehmen benötigt. Mit Service Meshes können Betriebsteams und Entwicklungsteams ihre Arbeit auch entkoppeln.

Die Architektur Ihrer Anwendungen als Mikrodienste bietet viele Vorteile. Durch die Skalierung können Ihre Arbeitslasten jedoch komplexer und fragmentierter werden. Ein Service Mesh löst das Fragmentierungsproblem und vereinfacht die Verwaltung Ihrer Mikrodienste.

Was ist Cloud Service Mesh?

Cloud Service Mesh ist die Lösung von Google für Google Cloud- und unterstützte GKE Enterprise-Umgebungen.

  • In Google Cloud: Cloud Service Mesh bietet APIs, die für die Computing-Infrastruktur, auf der Ihre Arbeitslasten ausgeführt werden, spezifisch sind.
  • Außerhalb von Google Cloud: Mit Distributed Cloud Virtual oder GKE Multi-Cloud unterstützt Cloud Service Mesh die Istio APIs für Kubernetes-Arbeitslasten.

Mit Cloud Service Mesh können Sie Ihre Dienste in oder außerhalb von Google Cloud verwalten, beobachten und sichern, ohne Ihren Anwendungscode ändern zu müssen.

Cloud Service Mesh vereinfacht die Bereitstellung von Diensten, von der Trafficverwaltung und der Mesh-Netzwerktelemetrie bis hin zur sicheren Kommunikation zwischen den Diensten, und reduziert so den Aufwand für Ihre Betriebs- und Entwicklungsteams. Mit dem vollständig verwalteten Service Mesh von Google können Sie komplexe Umgebungen verwalten und von all ihren Vorteilen profitieren.

Features

Cloud Service Mesh bietet eine Reihe von Features für Traffic-Verwaltung, Beobachtbarkeit, Telemetrie und Sicherheit.

Trafficverwaltung

Cloud Service Mesh steuert den Traffic zwischen Diensten im Mesh-Netzwerk, in das Mesh-Netzwerk (eingehend) und zu externen Diensten (ausgehend). Sie konfigurieren und stellen Ressourcen bereit, um diesen Traffic auf Anwendungsebene (L7) zu verwalten. Sie haben zum Beispiel folgende Möglichkeiten:

  • Diensterkennung verwenden.
  • Konfigurieren Sie das Load-Balancing zwischen Diensten.
  • Canary- und Blau/Grün-Deployments erstellen
  • Steuern Sie das Routing für Ihre Dienste genau.
  • Schalten Sie die Schutzschalter ein.

Cloud Service Mesh verwaltet eine Liste aller Dienste im Mesh-Netzwerk nach Namen und nach ihren jeweiligen Endpunkten. Diese Liste wird verwaltet, um den Trafficfluss zu verwalten (z. B. Kubernetes-Pod-IP-Adressen oder die IP-Adressen von Compute Engine-VMs in einer verwalteten Instanzgruppe). Wenn Sie diese Dienst-Registry verwenden und die Proxys neben den Diensten ausführen, kann das Mesh-Netzwerk Traffic an den entsprechenden Endpunkt weiterleiten. Proxylose gRPC-Arbeitslasten können auch parallel zu Arbeitslasten verwendet werden, die Envoy-Proxys verwenden.

Informationen zur Sichtbarkeit

Die Cloud Service Mesh-Benutzeroberfläche in der Google Cloud Console bietet Informationen zu Ihrem Service Mesh. Diese Messwerte werden automatisch für Arbeitslasten generiert, die über die Istio-APIs konfiguriert wurden.

  • Dienstmesswerte und Logs für HTTP-Traffic im GKE-Cluster Ihres Mesh werden automatisch in Google Cloud aufgenommen.
  • Vorkonfigurierte Dienst-Dashboards liefern Ihnen die Informationen, die Sie brauchen, um Ihre Dienste zu verstehen.
  • Dank umfassender Telemetriedaten, die von Cloud Monitoring, Cloud Logging und Cloud Trace bereitgestellt werden, können Sie Ihre Dienstmesswerte und Logs detailliert analysieren. Sie können Ihre Daten nach verschiedenen Attributen filtern und segmentieren.
  • Anhand von Dienst-zu-Dienst-Beziehungen können Sie auf einen Blick die Dienst-zu-Dienst-Abhängigkeiten erkennen und erkennen, wer eine Verbindung zu den einzelnen Diensten herstellt.
  • Sie können schnell den Kommunikationssicherheitsstatus nicht nur des Dienstes sehen, sondern auch dessen Beziehungen zu anderen Diensten.
  • Service Level Objectives (SLOs) geben Ihnen einen Einblick in den Status Ihrer Dienste. Sie können ein SLO und eine Benachrichtigung zu Ihren eigenen Standards für den Dienststatus definieren.

Weitere Informationen zu den Beobachtbarkeitsfeatures von Cloud Service Meshs finden Sie in unserem Leitfaden zur Beobachtbarkeit.

Sicherheitsvorteile

Cloud Service Mesh bietet Ihnen viele Sicherheitsvorteile.

  • Verminderung des Risikos von Replay- oder Imitationsangriffen, bei denen gestohlene Anmeldedaten verwendet werden. Cloud Service Mesh benötigt zur Authentifizierung von Peers gegenseitige TLS-Zertifikate (mTLS) anstelle von Inhabertokens wie JSON-Webtokens (JWT).
  • Sicherstellen der Verschlüsselung während der Übertragung. Durch die Verwendung von mTLS für die Authentifizierung wird außerdem sichergestellt, dass alle TCP-Kommunikationen bei der Übertragung verschlüsselt werden.
  • Reduziert das Risiko, dass nicht autorisierte Clients auf einen Dienst mit sensiblen Daten zugreifen können, unabhängig vom Netzwerkstandort des Clients und den Anmeldedaten auf Anwendungsebene.
  • Verminderung des Risikos von Verstößen gegen Nutzerdaten in Ihrem Produktionsnetzwerk. Sie können dafür sorgen, dass Insider nur über autorisierte Clients auf sensible Daten zugreifen können.
  • Identifikation von Clients, die auf einen Dienst mit vertraulichen Daten zugegriffen haben. Das Zugriffs-Logging von Cloud Service Mesh erfasst zusätzlich zur IP-Adresse die mTLS-Identität des Clients.
  • Alle Komponenten der Steuerungsebene im Cluster enthalten FIPS 140-2-validierte Verschlüsselungsmodule.

Weitere Informationen zu den Sicherheitsvorteilen und Features von Service Mesh finden Sie im Sicherheitsleitfaden.

Bereitstellungsoptionen

In Cloud Service Mesh haben Sie die folgenden Bereitstellungsoptionen:

  • In Google Cloud
    • Verwaltetes Cloud Service Mesh – verwaltete Kontroll- und Datenebene für GKE (empfohlen)
    • Verwaltetes Cloud Service Mesh – verwaltete Kontroll- und Datenebene für Compute Engine mit VMs (empfohlen)
    • Clusterinterne Steuerungsebene für GKE mit Istio APIs (nicht empfohlen)
  • Außerhalb von Google Cloud
    • Clusterinterne Steuerungsebene für Kubernetes mit Istio APIs

Verwaltetes Cloud Service Mesh

Managed Cloud Service Mesh besteht aus der verwalteten Steuerungsebene für alle Infrastrukturen und der verwalteten Datenebene für GKE. Mit Managed Cloud Service Mesh übernimmt Google Upgrades, Skalierung und Sicherheit und minimiert so manuelle Nutzerwartungen. Dabei werden die Steuerungsebene, die Datenebene und zugehörige Ressourcen behandelt.

Implementierung der Datenebene

Wenn Sie Google Cloud APIs verwenden, kann Ihre Datenebene von Envoy-Proxys oder proxylosen gRPC-Anwendungen bereitgestellt werden. Wenn Sie eine vorhandene Anwendung aktualisieren, ermöglicht der Sidecar-basierte Ansatz die Integration in das Mesh-Netzwerk, ohne Ihre Anwendung zu ändern. Wenn Sie den Aufwand für die Ausführung eines Sidecars vermeiden möchten, können Sie Ihre Anwendung für die Verwendung von gRPC aktualisieren.

Envoy-Proxys und proxylose gRPC-Anwendungen verwenden beide die xDS API, um eine Verbindung zur Steuerungsebene herzustellen. Wenn Sie proxylose gRPC-Anwendungen verwenden, können Sie für Ihre Anwendungen eine Auswahl an unterstützten Sprachen wählen, einschließlich Go, C++, Java und Python.

Wenn Sie Open-Source-APIs für Istio verwenden, wird Ihre Datenebene von Envoy-Proxys bereitgestellt.

Implementierung der Steuerungsebene

Ihre Cloud Service Mesh-Steuerungsebene hängt davon ab, ob sich Ihre Konfiguration in oder außerhalb von Google Cloud befindet und ob Sie Neukunde sind.

Implementierung der Steuerungsebene für vorhandene Nutzer

Informationen zum Ermitteln Ihrer aktuellen Steuerungsebene finden Sie unter Implementierung der Steuerungsebene identifizieren. Weitere Informationen zur Migration von Steuerungsebenen und Steuerungsebene finden Sie unter Übersicht über die verwaltete Steuerungsebene für fortlaufende Kunden.

Implementierung der Steuerungsebene für neue Nutzer

Migration der Steuerungsebene

Wenn Sie weiterhin Anthos Service Mesh-Kunde sind und die Istio APIs verwenden, werden Ihre Cluster zur Traffic Director-Steuerungsebene migriert. Sie können die Istio APIs weiterhin für die Konfiguration verwenden.

Unter Implementierung der Steuerungsebene identifizieren können Sie nachlesen, ob Ihre Cluster noch die Istio-Steuerungsebene verwenden oder zur neuen globalen Steuerungsebene migriert wurden.

Nächste Schritte