xDS-Steuerungsebenen-APIs

Cloud Service Mesh und seine Clients (Envoy-Proxys oder proxylose gRPC-Dienste) Bibliotheken) das Open-Source xDS API um Informationen auszutauschen. Beim Konfigurieren Cloud Service Mesh, z. B. durch die Verwendung von Ressourcen wie Weiterleitungsregeln und Back-End-Dienste – Cloud Service Mesh konvertiert diese Ressourcen in eine xDS-Konfiguration zu übertragen, die mit seinen Clients geteilt wird.

xDS-Versionsunterstützung

Cloud Service Mesh unterstützt nur xDS v3.

Informationen dazu, welche Envoy- und gRPC-Versionen xDS v3 unterstützen, finden Sie in der Dokumentation zu Envoy und gRPC.

Wenn Sie noch xDS v2 verwenden, folgen Sie der Anleitung unten, um zu xDS v3 zu migrieren.

Von xDS v2 zu xDS v3 migrieren

Der Migrationsvorgang umfasst zwei Schritte:

  1. Die dem Dienst gewährten Berechtigungen für die Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) aktualisieren Konto, das Ihre Clients (Envoy-Proxys oder proxylose gRPC-Bibliotheken) verwenden wenn Sie eine Verbindung zum Cloud Service Mesh herstellen.
  2. Anwendungen aktualisieren und neu bereitstellen. Die einzelnen Schritte variieren je nach Bereitstellung und werden in den folgenden Abschnitten erläutert.

IAM-Berechtigungen des Dienstkontos aktualisieren

Prüfen Sie, ob das von Ihrem Cloud Service Mesh verwendete Dienstkonto Clients (Envoy, proxyloses gRPC) hat die trafficdirector.networks.reportMetrics und trafficdirector.networks.getConfigs Berechtigungen. Diese Berechtigungen sind in der IAM-Rolle „Cloud Service Mesh Client“ (roles/trafficdirector.client) enthalten.

Wenn Sie eine benutzerdefinierte IAM-Rolle verwenden, können Sie diese Berechtigungen hinzufügen. Nachdem Sie die Berechtigungen hinzugefügt haben, können Sie die Compute Engine Rolle "Netzwerkbetrachter" (roles/compute.networkViewer): Compute-Netzwerkadministrator Rolle (roles/compute.networkAdmin) oder beide aus dem Dienstkonto.

Wir empfehlen, die Rolle „Cloud Service Mesh Client“ anstelle von Rolle „Compute-Netzwerkbetrachter“ (roles/compute.networkViewer) oder die Rolle „Compute-Netzwerkbetrachter“ Rolle „Netzwerkadministrator“ (roles/compute.networkAdmin) Mit der Die Rolle „Cloud Service Mesh-Client“ schränkt die Berechtigungen ein, die dem Nutzer Dienstkonto und vermeidet zu umfassende Berechtigungen.

Anwendungen aktualisieren

Nachdem Sie die IAM-Berechtigungen für das Dienstkonto aktualisiert haben, müssen Sie Ihre Anwendungen aktualisieren.

Envoy in Compute Engine

Wenn Sie Ihre Anwendungen in Envoy mit der Compute Engine aktualisieren möchten, führen Sie einen rollierenden Neustart oder eine Ersetzung der verwalteten Instanzgruppen durch. Eine Version von Envoy, die xDS v3 unterstützt, wird Ihren VM-Instanzen automatisch hinzugefügt.

Envoy in GKE

Wenn Sie die automatische Envoy-Injection mit Google Kubernetes Engine (GKE) verwenden, Sidecar-Injektor neu installieren in den GKE-Clustern auf, die Sie mit Cloud Service Mesh. Beim Erstellen eines neuen Pods wird automatisch zusammen mit Ihrem Arbeitslast-Pod ein Envoy-Sidecar-Proxy eingefügt, der xDS v3 unterstützt.

Wenn Sie die manuelle Sidecar-Einfügung in GKE verwenden, müssen Sie den Sidecar-Proxy in jedem Ihrer GKE-Cluster noch einmal bereitstellen.

Proxylose gRPC-Dienste

Der Migrationsvorgang umfasst zwei Schritte:

  1. Achten Sie darauf, dass die von Ihnen verwendete gRPC-Version xDS v3 unterstützt. Weitere Informationen finden Sie unter xDS-Features in gRPC.

  2. Aktualisieren Sie die Bootstrap-Konfiguration über folgende Schritte:

    1. Fügen Sie im Feld "xds_servers" den String "server_features": ["xds_v3"] hinzu, wie in diesem Bootstrap-Dateibeispiel gezeigt.
    2. Die Knoten-ID muss wie im vorherigen Beispiel das folgende Format haben: Beispiel:

      "projects/PROJECT_NUMBER/networks/NETWORK_NAME/nodes/ID"
      

Nachdem Sie die vorherigen Änderungen an der Anwendung vorgenommen haben, müssen Sie sie erstellen und noch einmal bereitstellen.

Die vorherigen Änderungen an der Bootstrap-Konfiguration wirken sich nicht auf gRPC-Versionen aus die xDS v3 nicht unterstützen. Wenn die vorherigen Änderungen in der Bootstrap-Konfiguration nicht vorhanden sind, verwenden auch gRPC-Versionen, die xDS v3 unterstützen, xDS v2.

Der Einfachheit halber können Sie die Version 0.16.0 des Cloud Service Mesh gRPC Bootstrap-Generators verwenden. oder höher, um eine mit xDS v3 kompatible Bootstrap-Konfiguration zu generieren.

Prüfen, ob Cloud Service Mesh-Clients xDS v3 verwenden

Um die Konfiguration zu prüfen, die Cloud Service Mesh für seine können Sie die Client-Status-Tool. Dieses Tool gibt an, ob die Konfiguration xDS v2 oder xDS v3 ist.

Nächste Schritte