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. Es unterstützt Dienste auf verschiedenen von Datenverarbeitungsinfrastrukturen. Cloud Service Mesh wird durch APIs gesteuert die für Google Cloud, Open Source oder beides konzipiert sind.

Dieses Dokument richtet sich an Sie, wenn Sie ein neuer Cloud Service Mesh-Nutzer oder ein 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. Damit können Sie robuste Unternehmensanwendungen erstellen, die aus vielen Mikrodiensten in der ausgewählten Infrastruktur bestehen. Service Meshes verwalten die allgemeinen Anforderungen für die Ausführung eines wie Monitoring, Netzwerk und Sicherheit mit einheitlichen, leistungsstarken sodass sich Dienstentwickler und -betreiber auf tolle Anwendungen für ihre Nutzer erstellen und verwalten.

Architektonisch besteht ein Service Mesh aus einer oder mehreren Steuerungsebenen und einer Datenebene. Das Service Mesh überwacht den gesamten zu und aus Ihren Diensten eingehenden Traffic. In Kubernetes wird ein Proxy von einem Sidecar-Muster zu den Mikrodiensten im Mesh-Netzwerk hinzu. In der Compute Engine können Sie Proxys auf VMs bereitstellen oder proxylosen gRPC 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. Bei der Skalierung können Ihre Arbeitslasten jedoch komplex und fragmentiert werden. Dienst hilft, das Fragmentierungsproblem zu lösen und die Verwaltung Mikrodienste.

Was ist Cloud Service Mesh?

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

  • In Google Cloud: Cloud Service Mesh bietet APIs, die spezifisch für die Computing-Infrastruktur sind, auf der Ihre Arbeitslasten ausgeführt werden.
    • Für Compute Engine-Arbeitslasten verwendet Cloud Service Mesh Google Cloud-spezifische Dienstrouting APIs
    • Für Google Kubernetes Engine (GKE)-Arbeitslasten verwendet Cloud Service Mesh die Open-Source-Istio APIs.
  • Aus Google Cloud: Mit Distributed Cloud oder GKE-Multi-Cloud Cloud Service Mesh unterstützt die Istio APIs für Kubernetes Arbeitsbelastungen.

Unabhängig davon, ob Sie Google Cloud verwenden oder nicht, können Sie mit Cloud Service Mesh Ihre Dienste verwalten, beobachten und schützen, ohne Ihren Anwendungscode ändern zu müssen.

Cloud Service Mesh reduziert den Aufwand für Betrieb und Entwicklung die Bereitstellung von Diensten vereinfachen, von Traffic-Verwaltung bis Mesh-Netzwerk. um die Kommunikation zwischen Diensten zu sichern. 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 die Traffic-Verwaltung, Beobachtbarkeit, Telemetrie und Sicherheit.

Trafficverwaltung

Cloud Service Mesh steuert den Traffic-Fluss zwischen Diensten im Mesh, in das Mesh (eingehender Traffic) und in externe Dienste (ausgehender Traffic). Sie konfigurieren und Ressourcen bereitstellen, um diesen Traffic auf der Anwendungsebene (L7) zu verwalten. Sie haben zum Beispiel folgende Möglichkeiten:

  • Diensterkennung verwenden
  • Load Balancing zwischen Diensten konfigurieren.
  • Canary- und Blau/Grün-Bereitstellungen erstellen.
  • Sie können die Weiterleitung für Ihre Dienste genau steuern.
  • Schutzschalter einrichten.

Cloud Service Mesh verwaltet eine Liste aller Dienste im Mesh nach Namen und zugehörigen Endpunkten. Diese Liste wird verwaltet, um den Trafficfluss zu steuern (z. B. IP-Adressen von Kubernetes-Pods oder die IP-Adressen von Compute Engine-VMs in einer verwalteten Instanzgruppe). Durch die Verwendung dieser Dienst-Registry und das Ausführen der Proxys parallel zu den Diensten leitet das Mesh den Traffic an den entsprechenden Endpunkt weiter. Proxylose gRPC-Arbeitslasten können auch parallel zu Arbeitslasten mit Envoy-Proxys verwendet werden.

Informationen zur Sichtbarkeit

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

  • Dienstmesswerte und Logs für HTTP-Traffic in der GKE des Mesh-Netzwerks werden automatisch in Google Cloud aufgenommen.
  • Vorkonfigurierte Dienst-Dashboards bieten Ihnen die nötigen Informationen, um Ihre Dienste zu verstehen.
  • Mithilfe der detaillierten Telemetriedaten von Cloud Monitoring, Cloud Logging und Cloud Trace erhalten Sie detaillierte Informationen zu Dienstmesswerten und Logs. Sie können Ihre Kampagnen anhand Daten zu einer Vielzahl von Attributen.
  • Mit Dienst-zu-Dienst-Beziehungen können Sie auf einen Blick Dienstabhängigkeiten und die Verbindungen zu den einzelnen Diensten erkennen.
  • Sie können schnell den Kommunikationssicherheitsstatus nicht nur für den Dienst, sondern auch für seine Beziehungen zu anderen Diensten sehen.
  • Service Level Objectives (SLOs) geben Ihnen einen Einblick in den Status Ihrer Dienste. Sie können ein SLO und eine Benachrichtigung zu Ihren eigenen Dienststandards definieren Gesundheit.

Weitere Informationen zu den Beobachtbarkeitsfunktionen von Cloud Service Meshs finden Sie in unserer 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 verwendet mTLS-Zertifikate (Mutual TLS) zur Authentifizierung von Peers anstelle von Inhabertokens wie JSON Web Tokens (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.
  • mindert das Risiko, dass nicht autorisierte Clients auf einen Dienst mit sensiblen Daten zugreifen können, unabhängig vom Netzwerkstandort des Clients und der Anwendungsebene, Anmeldedaten.
  • Verminderung des Risikos von Verstößen gegen Nutzerdaten in Ihrem Produktionsnetzwerk. Sie können gewährleisten, dass Insider nur über autorisierte Clients auf vertrauliche Daten zugreifen können.
  • Identifikation von Clients, die auf einen Dienst mit vertraulichen Daten zugegriffen haben. Cloud-Service-Mesh mit dem Zugriffs-Logging die mTLS-Identität des Clients IP-Adresse.
  • Alle Komponenten der clusterinternen Steuerungsebene werden mit gemäß FIPS 140–2 validierten Verschlüsselungsmodulen erstellt.

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

Optionen der Bereitstellung

In Cloud Service Mesh haben Sie die folgenden Bereitstellungsoptionen:

  • In Google Cloud
    • Verwaltetes Cloud Service Mesh – verwaltete Steuerung und Datenebene für GKE (empfohlen)
    • Managed Cloud Service Mesh – verwaltete Steuerung und Datenebene für Compute Engine mit VMs (empfohlen)
    • Clusterinterne Steuerungsebene für GKE mit Istio APIs (nicht empfohlen)
  • Nicht in Google Cloud
    • Clusterinterne Steuerungsebene für Kubernetes mit Istio APIs

Verwaltetes Cloud Service Mesh

Verwaltetes 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, Skalierungen und die manuelle Wartung der Nutzer minimieren. Dies betrifft die Kontrollgruppe Datenebene und zugehörige Ressourcen.

Implementierung der Datenebene

Wenn Sie Google Cloud APIs verwenden, kann Ihre Datenebene von Envoy zur Verfügung gestellt werden. Proxys oder proxylose gRPC-Anwendungen nutzen. Wenn Sie eine vorhandene ermöglicht der Sidecar-basierte Ansatz die Integration in das Mesh-Netzwerk. ohne die Anwendung zu ändern. Wenn Sie den Aufwand vermeiden möchten, eine Sidecar-Datei haben, können Sie Ihre Anwendung für die Verwendung von gRPC aktualisieren.

Sowohl Envoy-Proxys als auch proxylose gRPC-Dienste verwenden die xDS API, um eine Verbindung zur Steuerungsebene herzustellen. Wenn Sie proxylose gRPC-Anwendungen verwenden, können Sie mehrere unterstützte Sprachen für wie Go, C++, Java und Python.

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

Implementierung der Steuerungsebene

Die Cloud Service Mesh-Steuerungsebene hängt davon ab, ob Ihre Konfiguration in Google Cloud oder außerhalb von Google Cloud ausgeführt wird und ob Sie ein neuer Kunde sind.

Implementierung der Steuerungsebene für bestehende Nutzer

Informationen dazu, wie Sie Ihre aktuelle Steuerungsebene ermitteln, finden Sie unter Steuerungsebenenimplementierung ermitteln. Weitere Informationen Informationen zu Steuerungsebenen und zur Migration der Steuerungsebene finden Sie unter Übersicht über verwaltete Steuerungsebenen für beständige Kunden.

Implementierung der Steuerungsebene für neue Nutzer

Migration der Steuerungsebene

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

Um zu ermitteln, ob Ihre Cluster noch die Istio-Steuerungsebene verwenden oder die zur neuen globalen Steuerungsebene migriert sind, Implementierung der Steuerungsebene identifizieren

Nächste Schritte