Anthos Service Mesh 1.4 ist abgelaufen und wird nicht mehr unterstützt. Siehe Upgraden von früheren Versionen.

Lesen Sie die aktuelle Dokumentation oder wählen Sie eine andere Version aus:

Anthos Service Mesh lokal aktualisieren

In dieser Anleitung wird erläutert, wie Sie für Anthos Service Mesh ein Upgrade von Version 1.4.5+ auf Version 1.4.10 in Anthos-Cluster auf VMware ausführen. Wenn Sie ein Upgrade auf Anthos Service Mesh 1.5 durchführen möchten, finden Sie weitere Informationen unter Version 1.5 Upgrade von Anthos Service Mesh lokal.

Es dauert fünf bis zehn Minuten, um die Komponenten der Anthos Service Mesh-Steuerungsebene noch einmal bereitzustellen. Außerdem müssen Sie in allen Arbeitslasten neue Sidecar-Proxys einfügen, damit sie mit der aktuellen Anthos Service Mesh-Version aktualisiert werden. Wie lange es dauert, die Sidecar-Proxys zu aktualisieren, hängt von vielen Faktoren ab, z. B. von der Anzahl der Pods, der Anzahl der Knoten, den Skalierungseinstellungen der Bereitstellung, den Budgets für Pod-Unterbrechungen und anderen Konfigurationseinstellungen. Grob geschätzt dauert die Aktualisierung der Sidecar-Proxys 100 Pods pro Minute.

Upgrade vorbereiten

In diesem Abschnitt werden die Schritte zum Upgrade von Anthos Service Mesh beschrieben.

  1. Prüfen Sie die unterstützten Features und diese Anleitung, um sich mit den Features und dem Upgradeprozess vertraut zu machen.

  2. Prüfen Sie, ob Ihre Autorisierungsrichtlinien aktualisiert werden müssen.

  3. Wenn Sie bei der Installation der vorherigen Version von Anthos Service Mesh optionale Features aktiviert haben, müssen Sie der istioctl apply-Befehlszeile --set values-Flags hinzufügen. Verwenden Sie dieselben Flags, wenn Sie istioctl apply ausführen, um 1.4.10 zu installieren.

  4. Wenn Sie bei der Installation der vorherigen Version von Anthos Service Mesh optionale Funktionen aktiviert haben, fügen Sie der istioctl apply-Befehlszeile das Flag -f hinzu, um eine YAML-Datei anzugeben. Legen Sie dieselbe Datei fest (oder eine Datei mit demselben Inhalt, wenn Sie istioctl apply ausführen, um ein Upgrade auf 1.4.10 durchzuführen.

  5. Planen Sie eine Ausfallzeit. Das Upgrade kann je nach Größe des Clusters bis zu einer Stunde dauern. Beachten Sie, dass hier nicht die Zeit inkludiert ist, die Sie zum erneuten Bereitstellen von Arbeitslasten zum Aktualisieren von Sidecar-Proxys benötigen.

Umgebung einrichten

Installieren und initialisieren Sie auf Ihrem lokalen Computer das Cloud SDK (das gcloud-Befehlszeilentool).

Wenn Sie das Cloud SDK bereits installiert haben:

  1. Authentifizieren Sie sich beim Cloud SDK:

    gcloud auth login
    
  2. Aktualisieren Sie die Komponenten:

    gcloud components update
    
  3. Installieren Sie kubectl:

    gcloud components install kubectl
    
  4. Rufen Sie die Projekt-ID des Projekts ab, in dem der Cluster erstellt wurde:

    gcloud

    gcloud projects list

    Console

    1. Rufen Sie in der Cloud Console die Seite Dashboard auf:

      Zur Seite "Dashboard"

    2. Klicken Sie oben auf der Seite auf das Drop-down Auswählen aus. Wählen Sie im angezeigten Fenster Auswählen aus Ihr Projekt aus. Die Projekt-ID wird auf der Dashboard-Karte Projektinformationen des Projekts angezeigt.

  5. Legen Sie die Standardprojekt-ID für das gcloud-Befehlszeilentool fest:

    gcloud config set project PROJECT_ID

Anmeldedaten und Berechtigungen festlegen

  1. Achten Sie darauf, dass kubectl für den Nutzercluster vorhanden ist, in dem Sie Anthos Service Mesh installieren möchten. Sie können Anthos Service Mesh nur in einem Nutzercluster und nicht in einem Administratorcluster installieren.
  2. Gewähren Sie dem aktuellen Nutzer Cluster-Administratorberechtigungen. Sie benötigen diese Berechtigungen, um die erforderlichen Regeln für die rollenbasierte Zugriffssteuerung (Role Based Access Control, RBAC) für Anthos Service Mesh zu erstellen:
    kubectl create clusterrolebinding cluster-admin-binding \
      --clusterrole=cluster-admin \
      --user="$(gcloud config get-value core/account)"

    Wenn der Fehler "cluster-admin-binding" already exists angezeigt wird, können Sie ihn ignorieren und mit der vorhandenen Cluster-Administratorbindung fortfahren.

Installationsdatei herunterladen

    Linux

  1. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.4.10-asm.18-linux.tar.gz
  2. Laden Sie die Signaturdatei herunter und bestätigen Sie die Signatur mit openssl:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.4.10-asm.18-linux.tar.gz.1.sig
    openssl dgst -verify - -signature istio-1.4.10-asm.18-linux.tar.gz.1.sig istio-1.4.10-asm.18-linux.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF

    Die erwartete Ausgabe ist Verified OK.

  3. macOS

  4. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.4.10-asm.18-osx.tar.gz
  5. Laden Sie die Signaturdatei herunter und bestätigen Sie die Signatur mit openssl:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.4.10-asm.18-osx.tar.gz.1.sig
    openssl dgst -sha256 -verify /dev/stdin -signature istio-1.4.10-asm.18-osx.tar.gz.1.sig istio-1.4.10-asm.18-osx.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF

    Die erwartete Ausgabe ist Verified OK.

  6. Windows

  7. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.4.10-asm.18-win.zip
  8. Laden Sie die Signaturdatei herunter und bestätigen Sie die Signatur mit openssl:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.4.10-asm.18-win.zip.1.sig
    openssl dgst -verify - -signature istio-1.4.10-asm.18-win.zip.1.sig istio-1.4.10-asm.18-win.zip <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF

    Die erwartete Ausgabe ist Verified OK.

  9. Entpacken Sie die Inhalte der Datei in einem Verzeichnis Ihres Dateisystems. So extrahieren Sie beispielsweise den Inhalt in das aktuelle Arbeitsverzeichnis:
    tar xzf istio-1.4.10-asm.18-linux.tar.gz

    Mit diesem Befehl wird in Ihrem aktuellen Arbeitsverzeichnis istio-1.4.10-asm.18 ein Installationsverzeichnis erstellt, das Folgendes enthält:

    • Beispielanwendungen in samples
    • Die folgenden Tools im Verzeichnis bin:
      • istioctl: Sie verwenden istioctl, um Anthos Service Mesh zu installieren.
      • asmctl: Sie verwenden asmctl, um Ihre Sicherheitskonfiguration nach der Installation von Anthos Service Mesh zu validieren. (asmctl wird derzeit nicht auf Anthos-Cluster in VMware unterstützt.)

  10. Prüfen Sie, ob Sie sich im Stammverzeichnis der Anthos Service Mesh-Installation befinden.
    cd istio-1.4.10-asm.18
  11. Fügen Sie die Tools der Einfachheit halber im Verzeichnis /bin Ihrem PATH hinzu.
    export PATH=$PWD/bin:$PATH

Upgrade von Anthos Service Mesh durchführen

In diesem Abschnitt wird erläutert, wie Sie ein Upgrade für Anthos Service Mesh durchführen und die unterstützten Standardfeatures aktivieren, die auf der Seite Unterstützte Features aufgeführt sind. Informationen zum Aktivieren der unterstützten optionalen Features finden Sie unter Optionale Features aktivieren.

So führen Sie ein Upgrade von Anthos Service Mesh durch:

Wählen Sie einen der folgenden Befehle aus, um Anthos Service Mesh im mTLS-Authentifizierungsmodus (mutual TLS, gegenseitiges TLS) PERMISSIVE oder im mTLS-Modus STRICT zu konfigurieren.

PERMISSIVE-mTLS

istioctl manifest apply --set profile=asm-onprem

STRICT-mTLS

istioctl manifest apply --set profile=asm-onprem \
  --set values.global.mtls.enabled=true

Komponenten der Steuerungsebene prüfen

Beim Upgrade müssen die Komponenten der Steuerungsebene neu installiert werden. Das dauert etwa fünf bis zehn Minuten. Die alten Komponenten der Steuerungsebene werden beendet und bei der Installation der neuen Komponenten gelöscht. Sie können den Fortschritt mithilfe des Werts in der Spalte AGE der Arbeitslasten prüfen.

kubectl get pod -n istio-system

Beispielausgabe

NAME                                      READY   STATUS       RESTARTS   AGE
istio-citadel-64f6d7c7c7-jtmw7            1/1     Running      0          38s
istio-galley-6b4878d445-c4rtt             1/2     Running      0          37s
istio-ingressgateway-7866c5c88f-llp28     0/1     Running      0          37s
istio-ingressgateway-7866c5c88f-m9sck     1/1     Terminating  0          25m
istio-pilot-7f4fdcb89c-r98jl              1/2     Running      0          37s
istio-sidecar-injector-65cbd565b9-q4wm9   1/1     Running      0          37s
promsd-78dfdf7c7d-2bhr6                   2/2     Running      1          37s

In diesem Beispiel gibt es zwei Instanzen von istio-ingressgateway. Die Instanz mit 25m in der Spalte AGE wird beendet. Alle anderen Komponenten werden neu installiert.

Sidecar-Proxys aktualisieren

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.

Alle Arbeitslasten, die vor der Installation von Anthos Service Mesh auf Ihrem Cluster ausgeführt wurden, müssen den Sidecar-Proxy enthalten oder aktualisiert haben, damit sie die aktuelle Anthos Service Mesh-Version haben. Bevor Sie neue Arbeitslasten bereitstellen, muss die Sidecar-Proxy-Einfügung konfiguriert werden, um den Traffic mit Anthos Service Mesh überwachen und schützen zu können.

Sie können das automatische Einfügen der Sidecar-Datei mit einem Befehl aktivieren. Beispiel:

kubectl label namespace NAMESPACE istio-injection=enabled --overwrite

Dabei ist NAMESPACE der Name des Namespace für die Dienste der Anwendung oder default, wenn Sie nicht explizit einen Namespace erstellt haben.

Weitere Informationen finden Sie unter Sidecar-Proxys einfügen.