Sie lesen die Dokumentation für Anthos Service Mesh 1.10. Lesen Sie die aktuelle Dokumentation oder wählen Sie eine andere verfügbare Version aus:

Anthos Service Mesh installieren

Auf dieser Seite erfahren Sie, wie Sie:

  • asmcli ausführen, um eine neue Installation von Anthos Service Mesh 1.10.4-asm.14 durchzuführen
  • Ihre Arbeitslasten bereitstellen oder noch einmal bereitstellen, um Sidecar-Proxys einzufügen

Hinweis

Folgende Voraussetzungen müssen Sie erfüllt haben:

Anthos Service Mesh installieren

Im Folgenden wird beschrieben, wie Sie Anthos Service Mesh installieren:

  1. Führen Sie asmcli install aus, um die clusterinterne Steuerungsebene in einem einzelnen Cluster zu installieren. In den folgenden Abschnitten finden Sie Beispiele für Befehlszeilen. Die Beispiele enthalten sowohl erforderliche Argumente als auch optionale Argumente, die für Sie nützlich sein könnten. Wir empfehlen, immer das Argument output_dir anzugeben, damit Sie Beispielgateways und -tools wie istioctl leicht finden können. In der Navigationsleiste auf der rechten Seite finden Sie eine Liste der Beispiele.

  2. Optional können Sie ein Ingress-Gateway installieren.

  3. Damit die Einrichtung von Anthos Service Mesh abgeschlossen werden kann, müssen Sie die automatische Sidecar-Injektion aktivieren und die Arbeitslasten (noch einmal) bereitstellen.

  4. Wenn Sie Anthos Service Mesh auf mehreren Clustern installieren, führen Sie in jedem Cluster asmcli install aus. Nachdem Anthos Service Mesh in allen Clustern installiert wurde, lesen Sie Multi-Cluster-Mesh-Netzwerk lokal einrichten.

Standardfeatures und Mesh-CA installieren

In diesem Abschnitt wird beschrieben, wie Sie asmcli ausführen, um Anthos Service Mesh mit den unterstützten Standardfeatures für Ihre Plattform zu installieren und die Anthos Service Mesh-Zertifizierungsstelle (Mesh-CA) zu aktivieren.

GKE

Führen Sie den folgenden Befehl aus, um die neue Steuerungsebene mit Standardfeatures zu installieren. Geben Sie Ihre Werte in die angegebenen Platzhalter ein.

./asmcli install \
  --project_id PROJECT_ID \
  --cluster_name CLUSTER_NAME \
  --cluster_location CLUSTER_LOCATION \
  --fleet_id FLEET_PROJECT_ID \
  --output_dir DIR_PATH \
  --enable_all \
  --ca mesh_ca
  • --project_id, --cluster_name und --cluster_location geben die Projekt-ID an, in der sich der Cluster befindet, den Clusternamen und entweder die Clusterzone oder -region.
  • --fleet_id: Projekt-ID des Hostprojekts der Flotte. Wenn Sie diese Option nicht angeben, verwendet asmcli das Projekt, in dem der Cluster bei der Registrierung erstellt wurde.
  • --output_dir: Fügen Sie diese Option hinzu, um ein Verzeichnis anzugeben, in das asmcli das Paket anthos-service-mesh herunterlädt und in dem die Installationsdatei extrahiert wird, die istioctl, Beispiele und Manifeste enthält. Andernfalls lädt asmcli die Dateien in ein tmp-Verzeichnis herunter. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
  • --enable_all: Ermöglicht dem Skript Folgendes:
    • Erforderliche IAM-Berechtigungen gewähren.
    • Erforderliche Google APIs aktivieren.
    • Im Cluster ein Label festlegen, das das Mesh-Netzwerk identifiziert.
    • Cluster bei der Flotte registrieren, falls noch nicht geschehen.
  • --ca mesh_ca: Mesh-CA als Zertifizierungsstelle verwenden. asmcli konfiguriert Mesh-CA für die Verwendung der Workload Identity der Flotte.

Lokal

  1. Legen Sie Ihren Nutzercluster als aktuellen Kontext fest:

    kubectl config use-context CLUSTER_NAME
    
  2. Führen Sie den folgenden Befehl aus, um die neue Steuerungsebene mit Standardfeatures zu installieren. Geben Sie Ihre Werte in die angegebenen Platzhalter ein.

    ./asmcli install \
      --fleet_id FLEET_PROJECT_ID \
      --kubeconfig KUBECONFIG_FILE \
      --output_dir DIR_PATH \
      --platform multicloud \
      --enable_all \
      --ca mesh_ca
    
    • --fleet_id: Projekt-ID des Hostprojekts der Flotte.
    • --kubeconfig Der Pfad zur kubeconfig-Datei. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
    • --output_dir: Fügen Sie diese Option hinzu, um ein Verzeichnis anzugeben, in das asmcli das Paket anthos-service-mesh herunterlädt und in dem die Installationsdatei extrahiert wird, die istioctl, Beispiele und Manifeste enthält. Andernfalls lädt asmcli die Dateien in ein tmp-Verzeichnis herunter. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
    • --platform multicloud: Gibt an, dass die Plattform lokal ist.
    • --enable_all: Ermöglicht dem Skript Folgendes:
      • Erforderliche IAM-Berechtigungen gewähren.
      • Erforderliche Google APIs aktivieren.
      • Im Cluster ein Label festlegen, das das Mesh-Netzwerk identifiziert.
      • Cluster bei der Flotte registrieren, falls noch nicht geschehen.
    • --ca mesh_ca: Mesh-CA als Zertifizierungsstelle verwenden. asmcli konfiguriert Mesh-CA für die Verwendung der Workload Identity der Flotte.

Standardfeatures mit Istio-CA installieren

In diesem Abschnitt wird Folgendes erläutert:

  • Zertifikate und Schlüssel für die Istio-Zertifizierungsstelle erstellen, die Anthos Service Mesh zum Signieren Ihrer Arbeitslasten verwendet
  • asmcli ausführen, um Anthos Service Mesh mit Standardfeatures zu installieren und Istio-CA zu aktivieren

Für eine optimale Sicherheit empfehlen wir dringend, eine Offline-Stamm-CA zu behalten und die untergeordneten Zertifizierungsstellen einzusetzen, um für jeden Cluster Zertifikate auszugeben. Weitere Informationen finden Sie unter CA-Zertifikate anschließen. In dieser Konfiguration verwenden alle Arbeitslasten im Service Mesh dieselbe Stammzertifizierungsstelle (Certificate Authority, CA). Jede Anthos Service Mesh CA verwendet einen Zwischen-CA-Signierschlüssel und ein Zertifikat, das von der Stamm-CA signiert wird. Wenn es in einem Mesh mehrere CAs gibt, wird eine Hierarchie des Vertrauens zwischen den CAs eingerichtet. Sie können diese Schritte wiederholen, um Zertifikate und Schlüssel für eine beliebige Anzahl von Zertifizierungsstellen bereitzustellen.

  1. Erstellen Sie ein Verzeichnis für die Zertifikate und Schlüssel:

    mkdir -p certs && \
    pushd certs
  2. Generieren Sie ein Root-Zertifikat und einen Root-Schlüssel:

    make -f ../tools/certs/Makefile.selfsigned.mk root-ca
    

    Dadurch werden diese Dateien generiert:

    • root-cert.pem: Root-Zertifikat
    • root-key.pem: Root-Schlüssel
    • root-ca.conf: Konfiguration für openssl, um das Root-Zertifikat zu generieren
    • root-cert.csr: CSR für das Root-Zertifikat
  3. Generieren Sie ein Zwischenzertifikat und einen Zwischenschlüssel:

    make -f ../tools/certs/Makefile.selfsigned.mk cluster1-cacerts

    Dadurch werden diese Dateien in einem Verzeichnis namens cluster1 generiert:

    • ca-cert.pem: Zwischenzertifikate
    • ca-key.pem: Zwischenschlüssel
    • cert-chain.pem: Die von Istiod verwendete Zertifikatskette
    • root-cert.pem: Root-Zertifikat

    Wenn Sie diese Schritte mit einem Offline-Computer ausführen, kopieren Sie das generierte Verzeichnis auf einen Computer mit Zugriff auf die Cluster.

  4. Kehren Sie zum vorherigen Verzeichnis zurück:

    popd
  5. Führen Sie asmcli aus, um ein Mesh-Netzwerk mit Istio-CA zu installieren:

    GKE

     ./asmcli install \
       --project_id PROJECT_ID \
       --cluster_name CLUSTER_NAME \
       --cluster_location CLUSTER_LOCATION \
       --fleet_id FLEET_PROJECT_ID \
       --output_dir DIR_PATH \
       --enable_all \
       --ca citadel \
       --ca_cert FILE_PATH \
       --ca_key FILE_PATH \
       --root_cert FILE_PATH \
       --cert_chain FILE_PATH
    

    • --project_id, --cluster_name und --cluster_location geben die Projekt-ID an, in der sich der Cluster befindet, den Clusternamen und entweder die Clusterzone oder -region.
    • --fleet_id: Projekt-ID des Hostprojekts der Flotte. Wenn Sie diese Option nicht angeben, verwendet asmcli das Projekt, in dem der Cluster bei der Registrierung erstellt wurde.
    • --output_dir: Fügen Sie diese Option hinzu, um ein Verzeichnis anzugeben, in das asmcli das Paket anthos-service-mesh herunterlädt und in dem die Installationsdatei extrahiert wird, die istioctl, Beispiele und Manifeste enthält. Andernfalls lädt asmcli die Dateien in ein tmp-Verzeichnis herunter. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
    • --enable_all: Ermöglicht dem Skript Folgendes:
      • Erforderliche IAM-Berechtigungen gewähren.
      • Erforderliche Google APIs aktivieren.
      • Im Cluster ein Label festlegen, das das Mesh-Netzwerk identifiziert.
      • Cluster bei der Flotte registrieren, falls noch nicht geschehen.

    • -ca citadel: Verwenden Sie Istio-CA als Zertifizierungsstelle.
    • --ca_cert: Zwischenzertifikat.
    • --ca_key: Schlüssel für das Zwischenzertifikat.
    • --root_cert: Root-Zertifikat.
    • --cert_chain: Zertifikatskette.

    Lokal

    1. Legen Sie Ihren Nutzercluster als aktuellen Kontext fest:

      kubectl config use-context CLUSTER_NAME
      
    2. Führen Sie den folgenden Befehl aus, um Anthos Service Mesh mit Standardfeatures und Istio-Zertifizierungsstelle zu installieren:

      ./asmcli install \
        --fleet_id FLEET_PROJECT_ID \
        --kubeconfig KUBECONFIG_FILE \
        --output_dir DIR_PATH \
        --platform multicloud \
        --enable_all \
        --ca citadel \
        --ca_cert FILE_PATH \
        --ca_key FILE_PATH \
        --root_cert FILE_PATH \
        --cert_chain FILE_PATH
      
      • --fleet_id: Projekt-ID des Hostprojekts der Flotte.
      • --kubeconfig Der Pfad zur kubeconfig-Datei. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
      • --output_dir: Fügen Sie diese Option hinzu, um ein Verzeichnis anzugeben, in das asmcli das Paket anthos-service-mesh herunterlädt und in dem die Installationsdatei extrahiert wird, die istioctl, Beispiele und Manifeste enthält. Andernfalls lädt asmcli die Dateien in ein tmp-Verzeichnis herunter. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
      • --platform multicloud: Gibt an, dass die Plattform lokal ist.
      • --enable_all: Ermöglicht dem Skript Folgendes:
        • Erforderliche IAM-Berechtigungen gewähren.
        • Erforderliche Google APIs aktivieren.
        • Im Cluster ein Label festlegen, das das Mesh-Netzwerk identifiziert.
        • Cluster bei der Flotte registrieren, falls noch nicht geschehen.
      • -ca citadel: Verwenden Sie Istio-CA als Zertifizierungsstelle.
      • --ca_cert: Zwischenzertifikat.
      • --ca_key: Schlüssel für das Zwischenzertifikat.
      • --root_cert: Root-Zertifikat.
      • --cert_chain: Zertifikatskette.

Mit optionalen Features installieren

Eine Overlay-Datei ist eine YAML-Datei mit einer benutzerdefinierten IstioOperator-Ressource, die Sie an asmcli übergeben, um die Steuerungsebene zu konfigurieren. Sie können die Standardkonfiguration der Steuerungsebene überschreiben und eine optionale Funktion aktivieren, indem Sie die YAML-Datei an asmcli übergeben. Sie können mehr Overlays übereinander legen. Jede Overlay-Datei überschreibt die Konfiguration auf den vorherigen Ebenen.

GKE

Führen Sie den folgenden Befehl aus, um die neue Steuerungsebene mit Standardfeatures zu installieren. Geben Sie Ihre Werte in die angegebenen Platzhalter ein.

./asmcli install \
  --project_id PROJECT_ID \
  --cluster_name CLUSTER_NAME \
  --cluster_location CLUSTER_LOCATION \
  --fleet_id FLEET_PROJECT_ID \
  --output_dir DIR_PATH \
  --enable_all \
  --ca mesh_ca \
  --custom_overlay OVERLAY_FILE
  • --project_id, --cluster_name und --cluster_location geben die Projekt-ID an, in der sich der Cluster befindet, den Clusternamen und entweder die Clusterzone oder -region.
  • --fleet_id: Projekt-ID des Hostprojekts der Flotte. Wenn Sie diese Option nicht angeben, verwendet asmcli das Projekt, in dem der Cluster bei der Registrierung erstellt wurde.
  • --output_dir: Fügen Sie diese Option hinzu, um ein Verzeichnis anzugeben, in das asmcli das Paket anthos-service-mesh herunterlädt und in dem die Installationsdatei extrahiert wird, die istioctl, Beispiele und Manifeste enthält. Andernfalls lädt asmcli die Dateien in ein tmp-Verzeichnis herunter. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
  • --enable_all: Ermöglicht dem Skript Folgendes:
    • Erforderliche IAM-Berechtigungen gewähren.
    • Erforderliche Google APIs aktivieren.
    • Im Cluster ein Label festlegen, das das Mesh-Netzwerk identifiziert.
    • Cluster bei der Flotte registrieren, falls noch nicht geschehen.
  • --ca mesh_ca: Mesh-CA als Zertifizierungsstelle verwenden. Beachten Sie, dass asmcli die Mesh-Zertifizierungsstelle für die Verwendung der Workload Identity der Flotte konfiguriert.
  • --custom_overlay: Den Namen der Overlay-Datei angeben.

Lokal

  1. Legen Sie Ihren Nutzercluster als aktuellen Kontext fest:

    kubectl config use-context CLUSTER_NAME
    
  2. Führen Sie den folgenden Befehl aus, um die neue Steuerungsebene mit Standardfeatures zu installieren. Geben Sie Ihre Werte in die angegebenen Platzhalter ein.

    ./asmcli install \
      --fleet_id FLEET_PROJECT_ID \
      --kubeconfig KUBECONFIG_FILE \
      --output_dir DIR_PATH \
      --platform multicloud \
      --enable_all \
      --ca mesh_ca \
      --custom_overlay OVERLAY_FILE
    
    • --fleet_id: Projekt-ID des Hostprojekts der Flotte.
    • --kubeconfig Der Pfad zur kubeconfig-Datei. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
    • --output_dir: Fügen Sie diese Option hinzu, um ein Verzeichnis anzugeben, in das asmcli das Paket anthos-service-mesh herunterlädt und in dem die Installationsdatei extrahiert wird, die istioctl, Beispiele und Manifeste enthält. Andernfalls lädt asmcli die Dateien in ein tmp-Verzeichnis herunter. Sie können entweder einen relativen Pfad oder einen vollständigen Pfad angeben. Die Umgebungsvariable $PWD funktioniert hier nicht.
    • --platform multicloud: Gibt an, dass die Plattform lokal ist.
    • --enable_all: Ermöglicht dem Skript Folgendes:
      • Erforderliche IAM-Berechtigungen gewähren.
      • Erforderliche Google APIs aktivieren.
      • Im Cluster ein Label festlegen, das das Mesh-Netzwerk identifiziert.
      • Cluster bei der Flotte registrieren, falls noch nicht geschehen.
    • --ca mesh_ca: Mesh-CA als Zertifizierungsstelle verwenden. Beachten Sie, dass asmcli die Mesh-Zertifizierungsstelle für die Verwendung der Workload Identity der Flotte konfiguriert.
    • --custom_overlay: Den Namen der Overlay-Datei angeben.

Gateways installieren

Anthos Service Mesh bietet Ihnen die Möglichkeit, Gateways als Teil Ihres Service Mesh bereitzustellen und zu verwalten. Ein Gateway beschreibt einen Load-Balancer, der am Rand des Mesh-Netzwerks arbeitet und eingehende oder ausgehende HTTP/TCP-Verbindungen empfängt. Gateways sind Envoy-Proxys, die Ihnen eine detaillierte Kontrolle über den in das Mesh-Netzwerk eingehenden und ausgehenden Traffic ermöglichen.

  1. Erstellen Sie einen Namespace für das Ingress-Gateway, falls Sie noch keinen haben. Gateways sind Nutzerarbeitslasten und sollten als Best Practice nicht im Namespace der Steuerungsebene bereitgestellt werden. Ersetzen Sie GATEWAY_NAMESPACE durch den Namen Ihres Namespace.

    kubectl create namespace GATEWAY_NAMESPACE
    
  2. Aktivieren Sie die automatische Injektion auf dem Gateway, indem Sie ein Überarbeitungslabel auf den Gateway-Namespace anwenden. Das Überarbeitungslabel wird vom Sidecar-Injektor-Webhook verwendet, um eingefügte Proxys mit einer bestimmten Überarbeitung der Steuerungsebene zu verknüpfen. Welches Überarbeitungslabel Sie verwenden, hängt davon ab, ob Sie das verwaltete Anthos Service Mesh oder die clusterinterne Steuerungsebene bereitgestellt haben.

    Clusterintern

    1. Verwenden Sie den folgenden Befehl, um das Überarbeitungslabel für istiod zu finden:

      kubectl -n istio-system get pods -l app=istiod --show-labels
      

      Die Ausgabe sieht dann ungefähr so aus:

      NAME                                READY   STATUS    RESTARTS   AGE   LABELS
      istiod-asm-1104-14-5788d57586-bljj4   1/1     Running   0          23h   app=istiod,istio.io/rev=asm-1104-14,istio=istiod,pod-template-hash=5788d57586
      istiod-asm-1104-14-5788d57586-vsklm   1/1     Running   1          23h   app=istiod,istio.io/rev=asm-1104-14,istio=istiod,pod-template-hash=5788d57586
      

      Notieren Sie sich den Wert des Überarbeitungslabels istiod aus der Ausgabe in der Spalte LABELS, das auf das Präfix istio.io/rev= folgt. In diesem Beispiel ist der Wert asm-1104-14.

    2. Wenden Sie das Überarbeitungslabel auf den Namespace an. Im folgenden Befehl ist REVISION der Wert des Überarbeitungslabels istiod, den Sie im vorherigen Schritt notiert haben.

      kubectl label namespace GATEWAY_NAMESPACE istio-injection- istio.io/rev=REVISION --overwrite
      

    Verwaltetes Dienst-Mesh

    Wenden Sie das Überarbeitungslabel asm-managed-rapid auf den Namespace an:

    kubectl label namespace GATEWAY_NAMESPACE istio-injection- istio.io/rev=asm-managed-rapid --overwrite
    

    Dieses Label entspricht der aktuellen Release-Version des verwalteten Anthos Service Mesh für die Anthos Service Mesh-Version.

    Sie können die Nachricht "istio-injection not found" in der Ausgabe ignorieren. Das bedeutet, dass der Namespace bisher nicht das Label istio-injection hatte, was bei Neuinstallationen von Anthos Service Mesh oder neuen Bereitstellungen zu erwarten wäre. Da die automatische Injektion fehlschlägt, wenn ein Namespace sowohl istio-injection als auch das Überarbeitungslabel enthält, enthalten alle kubectl label-Befehle in der Anthos Service Mesh-Dokumentation das Label istio-injection.

  3. Wechseln Sie zu dem Verzeichnis, das Sie in --output_dir angegeben haben.

  4. Sie können die Beispielkonfiguration für das Ingress-Gateway im Verzeichnis samples/gateways/istio-ingressgateway/ unverändert bereitstellen oder nach Bedarf ändern.

    kubectl apply -n GATEWAY_NAMESPACE -f samples/gateways/istio-ingressgateway
    

Best Practices für Gateways

Arbeitslasten bereitstellen und neu bereitstellen

Anthos Service Mesh verwendet Sidecar-Proxys, um die Sicherheit, Zuverlässigkeit und Beobachtbarkeit von Netzwerken zu verbessern. Mit Anthos Service Mesh werden diese Funktionen vom primären Container der Anwendung abstrahiert und in einem gemeinsamen Out-of-Process-Proxy implementiert, der als separater Container im selben Pod bereitgestellt wird.

Die Installation ist erst abgeschlossen, wenn Sie die automatische Sidecar-Proxy-Einfügung (automatische Injektion) aktivieren und die Pods für alle Arbeitslasten neu starten, die auf dem Cluster ausgeführt wurden, bevor Sie Anthos Service Mesh installiert haben.

Wenn Sie die automatische Injektion aktivieren möchten, versehen Sie Ihre Namespaces mit dem Überarbeitungslabel, das bei der Installation von Anthos Service Mesh auf istiod festgelegt wurde. Das Überarbeitungslabel wird vom Sidecar-Injektor-Webhook verwendet, um eingefügte Sidecars mit einer bestimmten istiod-Überarbeitung zu verknüpfen. Nachdem Sie das Label hinzugefügt haben, müssen alle im Namespace vorhandenen Pods neu gestartet werden, damit Sidecars eingefügt werden können.

Bevor Sie neue Arbeitslasten in einem neuen Namespace bereitstellen, müssen Sie die automatische Injektion konfigurieren, damit Anthos Service Mesh den Traffic überwachen und sichern kann.

So aktivieren Sie die automatische Einfügung:

  1. Verwenden Sie den folgenden Befehl, um das Überarbeitungslabel für istiod zu finden:

    kubectl -n istio-system get pods -l app=istiod --show-labels
    

    Die Ausgabe sieht dann ungefähr so aus:

    NAME                                READY   STATUS    RESTARTS   AGE   LABELS
    istiod-asm-1104-14-5788d57586-bljj4   1/1     Running   0          23h   app=istiod,istio.io/rev=asm-1104-14,istio=istiod,pod-template-hash=5788d57586
    istiod-asm-1104-14-5788d57586-vsklm   1/1     Running   1          23h   app=istiod,istio.io/rev=asm-1104-14,istio=istiod,pod-template-hash=5788d57586

    Notieren Sie sich den Wert des Überarbeitungslabels istiod aus der Ausgabe in der Spalte LABELS, das auf das Präfix istio.io/rev= folgt. In diesem Beispiel ist der Wert asm-1104-14.

  2. Wenden Sie das Überarbeitungslabel an und entfernen Sie das Label istio-injection, falls vorhanden. Im folgenden Befehl ist NAMESPACE der Name des Namespace, in dem Sie die automatische Einfügung aktivieren möchten. REVISION ist das Überarbeitungslabel, das Sie im vorherigen Schritt notiert haben.

    kubectl label namespace NAMESPACE istio-injection- istio.io/rev=REVISION --overwrite
    

    Sie können die Nachricht "istio-injection not found" in der Ausgabe ignorieren. Das bedeutet, dass der Namespace bisher nicht das Label istio-injection hatte, was bei Neuinstallationen von Anthos Service Mesh oder neuen Bereitstellungen zu erwarten wäre. Da die automatische Einfügung fehlschlägt, wenn ein Namespace sowohl das Label istio-injectionals auch das Überarbeitungslabel enthält, umfassen alle kubectl label-Befehle in der Anthos Service Mesh-Dokumentation das Entfernen des Labels istio-injection.

  3. Wenn vor der Installation von Anthos Service Mesh in Ihrem Cluster Arbeitslasten ausgeführt wurden, starten Sie die Pods neu, um eine erneute Injektion auszulösen.

    Wie Sie Pods neu starten, hängt von der Anwendung und der Umgebung ab, in der sich der Cluster befindet. Beispielsweise können Sie in Ihrer Staging-Umgebung einfach alle Pods löschen, wodurch sie neu gestartet werden. Aber in Ihrer Produktionsumgebung haben Sie vielleicht einen Prozess, der ein Blau/Grün-Deployment implementiert, sodass Pods sicher neu gestartet werden können, um Traffic-Unterbrechungen zu vermeiden.

    Sie können kubectl verwenden, um einen rollierenden Neustart durchzuführen:

    kubectl rollout restart deployment -n NAMESPACE
    
  4. Überprüfen Sie, ob Ihre Pods so konfiguriert sind, dass sie auf die neue Version von istiod verweisen.

    kubectl get pods -n NAMESPACE -l istio.io/rev=REVISION
    

Nächste Schritte