Upgrade von Apigee Hybrid auf Version 1.5 ausführen

Upgrade auf Version 1.5.10 – Übersicht

Die Schritte zum Upgrade von Apigee Hybrid werden in den folgenden Abschnitten erläutert:

  1. Sichern Sie die Hybridinstallation.
  2. Überprüfen Sie Ihre Kubernetes-Version und führen Sie gegebenenfalls ein Upgrade durch.
  3. Upgrade für ASM vornehmen.
  4. Installieren Sie die Hybrid-Laufzeitversion 1.5.

Voraussetzung

Auf Version 1.5 aktualisieren

  1. In dieser Anleitung wird die Umgebungsvariable APIGEECTL_HOME für das Verzeichnis in Ihrem Dateisystem verwendet, in dem Sie apigeectl installiert haben. Falls erforderlich, cd in Ihr apigeectl-Verzeichnis und definieren Sie die Variable mit dem folgenden Befehl:

    Linux

    export APIGEECTL_HOME=$PWD
    echo $APIGEECTL_HOME

    macOS

    export APIGEECTL_HOME=$PWD
    echo $APIGEECTL_HOME

    Windows

    set APIGEECTL_HOME=%CD%
    echo %APIGEECTL_HOME%
  2. Empfohlen: Erstellen Sie eine Sicherungskopie Ihres $APIGEECTL_HOME/-Verzeichnisses der Version 1.4. Beispiel:
    tar -czvf $APIGEECTL_HOME/../apigeectl-v1.4-backup.tar.gz $APIGEECTL_HOME
  3. Empfohlen: Sichern Sie Ihre Cassandra-Datenbank entsprechend der Anleitung unter Cassandra-Sicherung und -Wiederherstellung.
  4. Aktualisieren Sie Ihre Kubernetes-Plattform auf die von Hybrid 1.5 unterstützten Versionen. Weitere Informationen finden Sie in der Dokumentation der Plattform.
  5. Wenn Sie eine Version von cert-manager vor Version 1.2.0 ausführen, müssen Sie ein Upgrade auf Version 1.2.0 durchführen.
    1. Prüfen Sie die aktuelle cert-manager-Version mit dem folgenden Befehl:

      kubectl -n cert-manager get deployment -o yaml | grep 'image:'
      

      Es wird in etwa Folgendes zurückgegeben:

      image: quay.io/jetstack/cert-manager-controller:v1.2.0
      image: quay.io/jetstack/cert-manager-cainjector:v1.2.0
      image: quay.io/jetstack/cert-manager-webhook:v1.2.0
      
    2. Entfernen Sie die Bereitstellungen mit dem folgenden Befehl:
      kubectl delete -n cert-manager deployment cert-manager cert-manager-cainjector cert-manager-webhook
      
    3. Führen Sie folgenden Befehl aus, um cert-manager auf Version 1.2.0 zu aktualisieren:
      kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.2.0/cert-manager.yaml
      

Upgrade von ASM auf Version 1.12

Führen Sie das Upgrade mithilfe der für Ihre Plattform geeigneten ASM-Dokumentation durch:

Die Anweisungen zur Installation und Konfiguration von ASM sind je nach Plattform unterschiedlich. Die Plattformen sind in folgende Kategorien unterteilt:

  • GKE: Google Kubernetes Engine-Cluster, die in Google Cloud ausgeführt werden.
  • Außerhalb von Google Cloud: Anthos-Cluster, die auf Folgendem ausgeführt werden:
    • Anthos Clusters on VMware (GKE On-Prem)
    • Anthos on Bare Metal
    • Anthos-Cluster in AWS
    • Amazon EKS
  • Andere Kubernetes-Plattformen: Konforme Cluster, die erstellt und ausgeführt werden auf:
    • AKS
    • EKS
    • OpenShift

GKE

Die Reihenfolge für das Upgrade auf ASM Version 1.8.x für Ihre Hybrid-Installation sieht so aus:

  1. Bereiten Sie das Upgrade vor.
  2. Installieren Sie die neue Version von ASM.
  3. Löschen Sie die Bereitstellungen, Dienste und Webhooks der vorherigen ASM-Version aus Ihrer aktuellen Installation.
  4. Aktualisieren Sie Ihre Gateways und konfigurieren Sie die neuen Webhooks.

So führen Sie ein Upgrade auf ASM Version 1.8.x für Hybrid in GKE durch:

  1. Prüfen Sie die Anforderungen unter Upgrade von Anthos Service Mesh durchführen, führen Sie das Upgrade jedoch noch nicht durch.
  2. Bestimmen Sie vor der Installation der neuen Version die aktuelle Überarbeitung. Sie benötigen diese Informationen, um die Bereitstellungen, Dienste und Webhooks der vorherigen ASM-Version aus Ihrer aktuellen Installation zu löschen. Verwenden Sie den folgenden Befehl, um die aktuelle Istio-Überarbeitung in einer Umgebungsvariable zu speichern:
    export DELETE_REV=$(kubectl get deploy -n istio-system -l app=istiod -o jsonpath={.items[].metadata.labels.'istio\.io\/rev'}'{"\n"}')
    echo ${DELETE_REV}
  3. Erstellen Sie eine neue overlay.yaml-Datei oder prüfen Sie, ob Ihre vorhandene overlay.yaml-Datei den folgenden Inhalt hat:
    apiVersion: install.istio.io/v1alpha1
    kind: IstioOperator
    spec:
      revision: asm-1129-3
      components:
        ingressGateways:
          - name: istio-ingressgateway
            enabled: true
            k8s:
              nodeSelector:
                # default node selector, if different or not using node selectors, change accordingly.
                cloud.google.com/gke-nodepool: apigee-runtime
              resources:
                requests:
                  cpu: 1000m
              service:
                type: LoadBalancer
                loadBalancerIP: STATIC_IP # If you do not have a reserved static IP, leave this out.
                ports:
                  - name: http-status-port
                    port: 15021
                  - name: http2
                    port: 80
                    targetPort: 8080
                  - name: https
                    port: 443
                    targetPort: 8443
      meshConfig:
        accessLogFormat:
          '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
    
  4. Folgen Sie der Anleitung in den folgenden Abschnitten der ASM-Dokumentation:
    1. asmcli herunterladen
    2. Clusteradministratorberechtigungen erteilen
    3. Projekt und Cluster validieren
    4. Upgrade mit optionalen Features ausführen Beenden Sie den Vorgang, bevor Sie mit dem Abschnitt „Upgrade für Gateways durchführen” beginnen.
  5. Löschen Sie den mutierenden Webhook und den validierenden Webhook:
    1. Wechseln Sie per cd in das Verzeichnis, in dem Sie asmcli installiert haben.
    2. Speichern Sie die aktuelle neue Überarbeitung in einer Umgebungsvariablen für die Verwendung im Skript, um die Webhooks zu löschen:
      UPGRADE_REV="asm-1129-3"
    3. Erstellen Sie ein Shell-Skript mit den folgenden Befehlen:
      #!/bin/bash
      
      set -ex
      
      PROJECT_ID="YOUR_PROJECT_ID"
      CLUSTER_NAME="YOUR_CLUSTER_NAME"
      CLUSTER_LOCATION="YOUR_CLUSTER_LOCATION"
      
      kubectl label namespace istio-system istio.io/rev=${UPGRADE_REV} istio-injection- --overwrite
      kubectl rollout restart deployment -n istio-system
      kubectl apply -n istio-system -f PATH_TO_INGRESSGATEWAYistio-ingressgateway
      kubectl apply -n istio-system -f PATH_TO_INGRESSGATEWAY/istio-ingressgateway-connectors
      
      if [[ "${DELETE_REV}" != "${UPGRADE_REV}" ]]; then
        kubectl apply -f out/asm/istio/istiod-service.yaml
        kubectl delete deploy -l app=istio-ingressgateway,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete deploy -l app=istio-ingressgateway-connectors,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete ValidatingWebhookConfiguration -l app=istiod,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete MutatingWebhookConfiguration -l app=sidecar-injector,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete Service,Deployment,HorizontalPodAutoscaler,PodDisruptionBudget istiod-${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete IstioOperator installed-state-${DELETE_REV} -n istio-system --ignore-not-found=true
      fi
      
    4. Führen Sie das Skript aus, um die aktuellen Webhooks zu löschen.
  6. Führen Sie die Schritte unter Upgrade für Gateways durchführen aus, um die neuen Webhooks zu erstellen und den Traffic auf die neuen Gateways umzuleiten.

Außerhalb von Google Cloud

Diese Anleitung behandelt Upgrades von ASM auf:

  • Anthos Clusters on VMware (GKE On-Prem)
  • Anthos on Bare Metal
  • Anthos-Cluster in AWS
  • Amazon EKS
  1. Prüfen Sie die Anforderungen unter Upgrade von Anthos Service Mesh durchführen, führen Sie das Upgrade jedoch noch nicht durch.
  2. Bestimmen Sie vor der Installation der neuen Version die aktuelle Überarbeitung. Sie benötigen diese Informationen, um den validierenden Webhook und den mutierenden Webhook aus Ihrer aktuellen ASM-Installation zu löschen. Verwenden Sie den folgenden Befehl, um die aktuelle Istio-Überarbeitung in einer Umgebungsvariable zu speichern:
    export DELETE_REV=$(kubectl get deploy -n istio-system -l app=istiod -o jsonpath={.items[].metadata.labels.'istio\.io\/rev'}'{"\n"}')
    echo ${DELETE_REV}
  3. Erstellen Sie eine neue overlay.yaml-Datei oder prüfen Sie, ob Ihre vorhandene overlay.yaml-Datei den folgenden Inhalt hat:
    apiVersion: install.istio.io/v1alpha1
    kind: IstioOperator
    spec:
      revision: asm-1129-3
      components:
        ingressGateways:
          - name: istio-ingressgateway
            enabled: true
            k8s:
              nodeSelector:
                # default node selector, if different or not using node selectors, change accordingly.
                cloud.google.com/gke-nodepool: apigee-runtime
              resources:
                requests:
                  cpu: 1000m
              service:
                type: LoadBalancer
                loadBalancerIP: STATIC_IP # If you do not have a reserved static IP, leave this out.
                ports:
                  - name: http-status-port
                    port: 15021
                  - name: http2
                    port: 80
                    targetPort: 8080
                  - name: https
                    port: 443
                    targetPort: 8443
      values:
        gateways:
          istio-ingressgateway:
            runAsRoot: true
    
      meshConfig:
        accessLogFormat:
          '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
    
  4. Folgen Sie der Anleitung in den folgenden Abschnitten der ASM-Dokumentation:
    1. asmcli herunterladen
    2. Clusteradministratorberechtigungen erteilen
    3. Projekt und Cluster validieren
    4. Upgrade mit optionalen Features ausführen Beenden Sie den Vorgang, bevor Sie mit dem Abschnitt „Upgrade für Gateways durchführen” beginnen.
  5. Löschen Sie den mutierenden Webhook und den validierenden Webhook:
    1. Wechseln Sie per cd in das Verzeichnis, in dem Sie asmcli installiert haben.
    2. Speichern Sie die aktuelle neue Überarbeitung in einer Umgebungsvariablen für die Verwendung im Skript, um die Webhooks zu löschen:
      UPGRADE_REV="asm-1129-3"
    3. Erstellen Sie ein Shell-Skript mit den folgenden Befehlen:
      #!/bin/bash
      
      set -ex
      
      PROJECT_ID="YOUR_PROJECT_ID"
      CLUSTER_NAME="YOUR_CLUSTER_NAME"
      CLUSTER_LOCATION="YOUR_CLUSTER_LOCATION"
      
      gcloud config configurations activate ${PROJECT_ID}
      gcloud container clusters get-credentials ${CLUSTER_NAME} --region ${CLUSTER_LOCATION} --project ${PROJECT_ID}
      
      kubectl label namespace istio-system istio.io/rev=${UPGRADE_REV} istio-injection- --overwrite
      kubectl rollout restart deployment -n istio-system
      kubectl apply -n istio-system -f PATH_TO_INGRESSGATEWAYistio-ingressgateway
      kubectl apply -n istio-system -f PATH_TO_INGRESSGATEWAY/istio-ingressgateway-connectors
      
      if [[ "${DELETE_REV}" != "${UPGRADE_REV}" ]]; then
        kubectl apply -f out/asm/istio/istiod-service.yaml
        kubectl delete deploy -l app=istio-ingressgateway,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete deploy -l app=istio-ingressgateway-connectors,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete ValidatingWebhookConfiguration -l app=istiod,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete MutatingWebhookConfiguration -l app=sidecar-injector,istio.io/rev=${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete Service,Deployment,HorizontalPodAutoscaler,PodDisruptionBudget istiod-${DELETE_REV} -n istio-system --ignore-not-found=true
        kubectl delete IstioOperator installed-state-${DELETE_REV} -n istio-system --ignore-not-found=true
      fi
      
    4. Führen Sie das Skript aus, um die aktuellen Webhooks zu löschen.
  6. Führen Sie die Schritte unter Upgrade für Gateways durchführen aus, um die neuen Webhooks zu erstellen und den Traffic auf die neuen Gateways umzuleiten.

AKS / EKS

In dieser Anleitung ist das Verfahren zur Aktualisierung der Version istio-1.12.9-asm.3 von Anthos Service Mesh (ASM) auf mit Anthos verbundenen Clustern dasselbe wie bei einer Neuinstallation.

Installation von Anthos Service Mesh vorbereiten

    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.12.9-asm.3-linux-amd64.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.12.9-asm.3-linux-amd64.tar.gz.1.sig
    openssl dgst -verify /dev/stdin -signature istio-1.12.9-asm.3-linux-amd64.tar.gz.1.sig istio-1.12.9-asm.3.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF
    
  3. 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.12.9-asm.3-linux-amd64.tar.gz

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

    • Beispielanwendungen im Verzeichnis samples.
    • Das istioctl-Befehlszeilentool, mit dem Sie Anthos Service Mesh installieren, befindet sich im Verzeichnis bin.
    • Die Anthos Service Mesh-Konfigurationsprofile befinden sich im Verzeichnis manifests/profiles.
  4. Prüfen Sie, ob Sie sich im Stammverzeichnis der Anthos Service Mesh-Installation befinden:
    cd istio-1.12.9-asm.3
  5. Fügen Sie die Tools im Verzeichnis /bin Ihrem PATH hinzu:
    export PATH=$PWD/bin:$PATH
  6. macOS

  7. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-osx.tar.gz
  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.12.9-asm.3-osx.tar.gz.1.sig
    openssl dgst -sha256 -verify /dev/stdin -signature istio-1.12.9-asm.3-osx.tar.gz.1.sig istio-1.12.9-asm.3.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF
    
  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.12.9-asm.3-osx.tar.gz

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

    • Beispielanwendungen im Verzeichnis samples.
    • Das istioctl-Befehlszeilentool, mit dem Sie Anthos Service Mesh installieren, befindet sich im Verzeichnis bin.
    • Die Anthos Service Mesh-Konfigurationsprofile befinden sich im Verzeichnis manifests/profiles.
  10. Prüfen Sie, ob Sie sich im Stammverzeichnis der Anthos Service Mesh-Installation befinden:
    cd istio-1.12.9-asm.3
  11. Fügen Sie die Tools im Verzeichnis /bin Ihrem PATH hinzu:
    export PATH=$PWD/bin:$PATH
  12. Windows

  13. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-win.zip
  14. Laden Sie die Signaturdatei herunter und bestätigen Sie die Signatur mit openssl:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-win.zip.1.sig
    openssl dgst -verify - -signature istio-1.12.9-asm.3-win.zip.1.sig istio-1.12.9-asm.3.win.zip <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF
    
  15. 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.12.9-asm.3-win.zip

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

    • Beispielanwendungen im Verzeichnis samples.
    • Das istioctl-Befehlszeilentool, mit dem Sie Anthos Service Mesh installieren, befindet sich im Verzeichnis bin.
    • Die Anthos Service Mesh-Konfigurationsprofile befinden sich im Verzeichnis manifests\profiles.
  16. Prüfen Sie, ob Sie sich im Stammverzeichnis der Anthos Service Mesh-Installation befinden:
    cd istio-1.12.9-asm.3
  17. Fügen Sie die Tools im Verzeichnis /bin Ihrem PATH hinzu:
    set PATH=%CD%\bin:%PATH%
  18. Nachdem Sie ASM Istio installiert haben, prüfen Sie die Version von istioctl:
    istioctl version
  19. Erstellen Sie einen Namespace namens "istio-system" für die Komponenten der Steuerungsebene:
    kubectl create namespace istio-system

Validierten Webhook konfigurieren

Wenn Sie Anthos Service Mesh installieren, legen Sie ein Überarbeitungslabel auf Istiod fest. Sie müssen für den Validierungs-Webhook dieselbe Überarbeitung festlegen.

  1. Erstellen Sie eine Datei mit dem Namen istiod-service.yaml und mit folgendem Inhalt:
    apiVersion: v1
    kind: Service
    metadata:
      name: istiod
      namespace: istio-system
      labels:
        istio.io/rev: asm-1129-3
        app: istiod
        istio: pilot
        release: istio
    spec:
      ports:
        - port: 15010
          name: grpc-xds # plaintext
          protocol: TCP
        - port: 15012
          name: https-dns # mTLS with k8s-signed cert
          protocol: TCP
        - port: 443
          name: https-webhook # validation and injection
          targetPort: 15017
          protocol: TCP
        - port: 15014
          name: http-monitoring # prometheus stats
          protocol: TCP
      selector:
        app: istiod
        istio.io/rev: asm-1129-3
      meshConfig:
        accessLogFormat:
          '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
    
  2. Verwenden Sie kubectl, um die validierende Webhook-Konfiguration anzuwenden:
    kubectl apply -f istiod-service.yaml
  3. Prüfen Sie, ob die Konfiguration angewendet wurde:
    kubectl get svc -n istio-system

    Die Antwort sollte in etwa so aussehen:

    NAME     TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                                 AGE
    istiod   ClusterIP   172.200.18.133   <none>        15010/TCP,15012/TCP,443/TCP,15014/TCP   22s
    

Anthos Service Mesh installieren

  1. Installieren Sie Anthos Service Mesh mit istioctl mithilfe des Profils asm-multicloud:
    istioctl install \
        --set profile=asm-multicloud \
        --set revision="asm-1129-3"

    Die Ausgabe sollte in etwa so aussehen:

    kubectl get pods -n istio-system
    NAME                                   READY   STATUS    RESTARTS   AGE
    istio-ingressgateway-88b6fd976-flgp2   1/1     Running   0          3m13s
    istio-ingressgateway-88b6fd976-p5dl9   1/1     Running   0          2m57s
    istiod-asm-1129-3-798ffb964-2ls88       1/1     Running   0          3m21s
    istiod-asm-1129-3-798ffb964-fnj8c       1/1     Running   1          3m21s
    

    Mit dem Argument --set revision wird Istiod ein Überarbeitungslabel im Format istio.io/rev=asm-1129-3 hinzugefügt. Das Überarbeitungslabel wird vom automatischen Sidecar-Injektor-Webhook verwendet, um eingefügte Sidecars mit einer bestimmten Istiod-Überarbeitung zu verknüpfen. Wenn Sie die automatische Sidecar-Injektion für einen Namespace aktivieren möchten, müssen Sie sie mit einer Überarbeitung kennzeichnen, die mit dem Label auf Istiod übereinstimmt.

  2. Prüfen Sie, ob Ihre Installation abgeschlossen ist:
    kubectl get svc -n istio-system

    Die Ausgabe sollte in etwa so aussehen:

    NAME                   TYPE           CLUSTER-IP       EXTERNAL-IP     PORT(S)                                                                      AGE
    istio-ingressgateway   LoadBalancer   172.200.48.52    34.74.177.168   15021:30479/TCP,80:30030/TCP,443:32200/TCP,15012:32297/TCP,15443:30244/TCP   3m35s
    istiod                 ClusterIP      172.200.18.133   <none>          15010/TCP,15012/TCP,443/TCP,15014/TCP                                        4m46s
    istiod-asm-1129-3       ClusterIP      172.200.63.220   <none>          15010/TCP,15012/TCP,443/TCP,15014/TCP                                        3m43s
    

OpenShift

In dieser Anleitung ist das Verfahren zur Aktualisierung der Version istio-1.12.9-asm.3 von Anthos Service Mesh (ASM) auf mit Anthos verbundenen Clustern dasselbe wie bei einer Neuinstallation.

Installation von Anthos Service Mesh vorbereiten

    Linux

  1. Weisen Sie istio-system die Sicherheitskontextbeschränkung anyuid (SCC) mit dem folgenden OpenShift-Befehlszeilenbefehl (oc) zu:
    oc adm policy add-scc-to-group anyuid system:serviceaccounts:istio-system
  2. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-linux-amd64.tar.gz
  3. Laden Sie die Signaturdatei herunter und bestätigen Sie die Signatur mit openssl:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-linux-amd64.tar.gz.1.sig
    openssl dgst -verify /dev/stdin -signature istio-1.12.9-asm.3-linux-amd64.tar.gz.1.sig istio-1.12.9-asm.3.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF
    
  4. 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.12.9-asm.3-linux-amd64.tar.gz

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

    • Beispielanwendungen im Verzeichnis samples.
    • Das istioctl-Befehlszeilentool, mit dem Sie Anthos Service Mesh installieren, befindet sich im Verzeichnis bin.
    • Die Anthos Service Mesh-Konfigurationsprofile befinden sich im Verzeichnis manifests/profiles.
  5. Prüfen Sie, ob Sie sich im Stammverzeichnis der Anthos Service Mesh-Installation befinden:
    cd istio-1.12.9-asm.3
  6. Fügen Sie die Tools im Verzeichnis /bin Ihrem PATH hinzu:
    export PATH=$PWD/bin:$PATH
  7. macOS

  8. Weisen Sie istio-system die Sicherheitskontextbeschränkung anyuid (SCC) mit dem folgenden OpenShift-Befehlszeilenbefehl (oc) zu:
    oc adm policy add-scc-to-group anyuid system:serviceaccounts:istio-system
  9. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-osx.tar.gz
  10. Laden Sie die Signaturdatei herunter und bestätigen Sie die Signatur mit openssl:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-osx.tar.gz.1.sig
    openssl dgst -sha256 -verify /dev/stdin -signature istio-1.12.9-asm.3-osx.tar.gz.1.sig istio-1.12.9-asm.3.tar.gz <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF
    
  11. 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.12.9-asm.3-osx.tar.gz

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

    • Beispielanwendungen im Verzeichnis samples.
    • Das istioctl-Befehlszeilentool, mit dem Sie Anthos Service Mesh installieren, befindet sich im Verzeichnis bin.
    • Die Anthos Service Mesh-Konfigurationsprofile befinden sich im Verzeichnis manifests/profiles.
  12. Prüfen Sie, ob Sie sich im Stammverzeichnis der Anthos Service Mesh-Installation befinden:
    cd istio-1.12.9-asm.3
  13. Fügen Sie die Tools im Verzeichnis /bin Ihrem PATH hinzu:
    export PATH=$PWD/bin:$PATH
  14. Windows

  15. Weisen Sie istio-system die Sicherheitskontextbeschränkung anyuid (SCC) mit dem folgenden OpenShift-Befehlszeilenbefehl (oc) zu:
    oc adm policy add-scc-to-group anyuid system:serviceaccounts:istio-system
  16. Laden Sie die Anthos Service Mesh-Installationsdatei in Ihr aktuelles Arbeitsverzeichnis herunter:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-win.zip
  17. Laden Sie die Signaturdatei herunter und bestätigen Sie die Signatur mit openssl:
    curl -LO https://storage.googleapis.com/gke-release/asm/istio-1.12.9-asm.3-win.zip.1.sig
    openssl dgst -verify - -signature istio-1.12.9-asm.3-win.zip.1.sig istio-1.12.9-asm.3.win.zip <<'EOF'
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEWZrGCUaJJr1H8a36sG4UUoXvlXvZ
    wQfk16sxprI2gOJ2vFFggdq3ixF2h4qNBt0kI7ciDhgpwS8t+/960IsIgw==
    -----END PUBLIC KEY-----
    EOF
    
  18. 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.12.9-asm.3-win.zip

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

    • Beispielanwendungen im Verzeichnis samples.
    • Das istioctl-Befehlszeilentool, mit dem Sie Anthos Service Mesh installieren, befindet sich im Verzeichnis bin.
    • Die Anthos Service Mesh-Konfigurationsprofile befinden sich im Verzeichnis manifests\profiles.
  19. Prüfen Sie, ob Sie sich im Stammverzeichnis der Anthos Service Mesh-Installation befinden:
    cd istio-1.12.9-asm.3
  20. Fügen Sie die Tools im Verzeichnis /bin Ihrem PATH hinzu:
    set PATH=%CD%\bin:%PATH%
  21. Nachdem Sie ASM Istio installiert haben, prüfen Sie die Version von istioctl:
    istioctl version
  22. Erstellen Sie einen Namespace namens "istio-system" für die Komponenten der Steuerungsebene:
    kubectl create namespace istio-system

Validierten Webhook konfigurieren

Wenn Sie Anthos Service Mesh installieren, legen Sie ein Überarbeitungslabel auf Istiod fest. Sie müssen für den Validierungs-Webhook dieselbe Überarbeitung festlegen.

  1. Erstellen Sie eine Datei mit dem Namen istiod-service.yaml und mit folgendem Inhalt:
    apiVersion: v1
    kind: Service
    metadata:
      name: istiod
      namespace: istio-system
      labels:
        istio.io/rev: asm-1129-3
        app: istiod
        istio: pilot
        release: istio
    spec:
      ports:
        - port: 15010
          name: grpc-xds # plaintext
          protocol: TCP
        - port: 15012
          name: https-dns # mTLS with k8s-signed cert
          protocol: TCP
        - port: 443
          name: https-webhook # validation and injection
          targetPort: 15017
          protocol: TCP
        - port: 15014
          name: http-monitoring # prometheus stats
          protocol: TCP
      selector:
        app: istiod
        istio.io/rev: asm-1129-3
      meshConfig:
        accessLogFormat:
          '{"start_time":"%START_TIME%","remote_address":"%DOWNSTREAM_DIRECT_REMOTE_ADDRESS%","user_agent":"%REQ(USER-AGENT)%","host":"%REQ(:AUTHORITY)%","request":"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%","request_time":"%DURATION%","status":"%RESPONSE_CODE%","status_details":"%RESPONSE_CODE_DETAILS%","bytes_received":"%BYTES_RECEIVED%","bytes_sent":"%BYTES_SENT%","upstream_address":"%UPSTREAM_HOST%","upstream_response_flags":"%RESPONSE_FLAGS%","upstream_response_time":"%RESPONSE_DURATION%","upstream_service_time":"%RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)%","upstream_cluster":"%UPSTREAM_CLUSTER%","x_forwarded_for":"%REQ(X-FORWARDED-FOR)%","request_method":"%REQ(:METHOD)%","request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","request_protocol":"%PROTOCOL%","tls_protocol":"%DOWNSTREAM_TLS_VERSION%","request_id":"%REQ(X-REQUEST-ID)%","sni_host":"%REQUESTED_SERVER_NAME%","apigee_dynamic_data":"%DYNAMIC_METADATA(envoy.lua)%"}'
    
  2. Verwenden Sie kubectl, um die validierende Webhook-Konfiguration anzuwenden:
    kubectl apply -f istiod-service.yaml
  3. Prüfen Sie, ob die Konfiguration angewendet wurde:
    kubectl get svc -n istio-system

    Die Antwort sollte in etwa so aussehen:

    NAME     TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                                 AGE
    istiod   ClusterIP   172.200.18.133   <none>        15010/TCP,15012/TCP,443/TCP,15014/TCP   22s
    

Anthos Service Mesh installieren

  1. Installieren Sie Anthos Service Mesh mit istioctl mithilfe des Profils asm-multicloud:
    istioctl install \
        --set profile=asm-multicloud \
        --set revision=istio-1.12.9-asm.3

    Die Ausgabe sollte in etwa so aussehen:

    kubectl get pods -n istio-system
    NAME                                   READY   STATUS    RESTARTS   AGE
    istio-ingressgateway-88b6fd976-flgp2   1/1     Running   0          3m13s
    istio-ingressgateway-88b6fd976-p5dl9   1/1     Running   0          2m57s
    istiod-asm-1129-3-798ffb964-2ls88       1/1     Running   0          3m21s
    istiod-asm-1129-3-798ffb964-fnj8c       1/1     Running   1          3m21s
    

    Mit dem Argument --set revision wird Istiod ein Überarbeitungslabel im Format istio.io/rev=1.8.6-asm.1 hinzugefügt. Das Überarbeitungslabel wird vom automatischen Sidecar-Injektor-Webhook verwendet, um eingefügte Sidecars mit einer bestimmten Istiod-Überarbeitung zu verknüpfen. Wenn Sie die automatische Sidecar-Injektion für einen Namespace aktivieren möchten, müssen Sie sie mit einer Überarbeitung kennzeichnen, die mit dem Label auf Istiod übereinstimmt.

  2. Prüfen Sie, ob Ihre Installation abgeschlossen ist:
    kubectl get svc -n istio-system

    Die Ausgabe sollte in etwa so aussehen:

    NAME                   TYPE           CLUSTER-IP       EXTERNAL-IP     PORT(S)                                                                      AGE
    istio-ingressgateway   LoadBalancer   172.200.48.52    34.74.177.168   15021:30479/TCP,80:30030/TCP,443:32200/TCP,15012:32297/TCP,15443:30244/TCP   3m35s
    istiod                 ClusterIP      172.200.18.133   <none>          15010/TCP,15012/TCP,443/TCP,15014/TCP                                        4m46s
    istiod-asm-1129-3       ClusterIP      172.200.63.220   <none>          15010/TCP,15012/TCP,443/TCP,15014/TCP                                        3m43s
    

Hybrid 1.5.10-Laufzeit installieren

  1. Laden Sie das Release-Paket für Ihr Betriebssystem herunter:

    Mac 64-Bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.5.10/apigeectl_mac_64.tar.gz

    Linux 64-Bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.5.10/apigeectl_linux_64.tar.gz

    Mac 32-Bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.5.10/apigeectl_mac_32.tar.gz

    Linux 32-Bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.5.10/apigeectl_linux_32.tar.gz
  2. Benennen Sie Ihr aktuelles apigeectl/-Verzeichnis in einen Backupverzeichnisnamen um. Beispiel:
    mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.2/ 
  3. Extrahieren Sie die heruntergeladenen gzip-Dateiinhalte in Ihr Hybrid-Basisverzeichnis. Beispiel:

    tar xvzf FILENAME.tar.gz -C HYBRID_BASE_DIRECTORY
  4. cd zum Basisverzeichnis.
  5. Die TAR-Inhalte werden standardmäßig in ein Verzeichnis mit der Version und der Plattform in ihrem Namen erweitert. Beispiel: ./apigeectl_1.5.0-d591b23_linux_64. Benennen Sie dieses Verzeichnis in apigeectl um:

    mv apigeectl_1.5.0-d591b23_linux_64 apigeectl
  6. Führen Sie im neuen apigeectl/-Verzeichnis apigeectl init, apigeectl apply und apigeectl check-ready aus:
    1. Initialisieren Sie Hybrid 1.5.10:
      apigeectl init -f OVERRIDES.yaml

      Dabei ist OVERRIDES.yaml die bearbeitete Datei overrides.yaml.

    2. Überprüfen Sie mit den folgenden Befehlen, ob sie richtig initialisiert wurde:
      apigeectl check-ready -f OVERRIDES.yaml
      kubectl describe apigeeds -n apigee

      Die Ausgabe sollte in etwa so aussehen:

      Status:
        Cassandra Data Replication:
        Cassandra Pod Ips:
          10.8.2.204
        Cassandra Ready Replicas:  1
        Components:
          Cassandra:
            Last Successfully Released Version:
              Revision:  v1-f8aa9a82b9f69613
              Version:   v1
            Replicas:
              Available:  1
              Ready:      1
              Total:      1
              Updated:    1
            State:        running
        Scaling:
          In Progress:         false
          Operation:
          Requested Replicas:  0
        State:                 running
      
    3. Die Syntax des Flags apigeectl --dry-run hängt von der ausgeführten Version von kubectl ab. Prüfen Sie die Version von kubectl:
      gcloud version
    4. Suchen Sie nach Fehlern mit einem Probelauf, wobei der Befehl für Ihre Version von kubectl geeignet ist:

      kubectl-Version 1.17 und niedriger:

      apigeectl apply -f OVERRIDES.yaml --dry-run=true

      Ab kubectl-Version 1.18:

      apigeectl apply -f OVERRIDES.yaml --dry-run=client
    5. Wenden Sie Ihre Überschreibungen an. Wählen Sie je nach Ihrer Installation die Anleitung für Produktionsumgebungen oder Demo-/experimentelle Umgebungen aus und folgen Sie diesen.

      Produktion

      In Produktionsumgebungen sollten Sie jede Hybridkomponente einzeln aktualisieren und den Status der aktualisierten Komponente prüfen, bevor Sie mit der nächsten Komponente fortfahren.

      1. Wenden Sie Ihre Überschreibungen an, um Upgrade von Cassandra durchzuführen:
        apigeectl apply -f OVERRIDES.yaml --datastore
      2. Abschluss prüfen:
        apigeectl check-ready -f OVERRIDES.yaml

        Fahren Sie mit dem nächsten Schritt nur fort, wenn die Pods bereit sind.

      3. Wenden Sie Ihre Überschreibungen an, um Telemetriekomponenten zu aktualisieren, und prüfen Sie den Fortschritt:
        apigeectl apply -f OVERRIDES.yaml --telemetry
        apigeectl check-ready -f OVERRIDES.yaml
      4. Redis-Komponenten einrichten:
        apigeectl apply -f OVERRIDES.yaml --redis
      5. Wenn Sie Ihre Überschreibungen an, um zu aktualisieren die Komponenten auf Organisationsebene (MART, Watcher, Apigee Connect) und prüfen Sie den Abschluss des Vorgangs:
        apigeectl apply -f OVERRIDES.yaml --org
        apigeectl check-ready -f OVERRIDES.yaml
      6. Nutzen Sie Überschreibungen, um Ihre Umgebungen zu aktualisieren. Sie haben zwei Möglichkeiten:
        • Jede Umgebung separat: Sie wenden die Überschreibungen auf eine einzelne Umgebung gleichzeitig an und prüfen den Fortschritt. Wiederholen Sie den Schritt für jede Umgebung:
          apigeectl apply -f OVERRIDES.yaml --env ENV_NAME
          apigeectl check-ready -f OVERRIDES.yaml

          Dabei ist ENV_NAME der Name der Umgebung, die Sie aktualisieren.

        • Alle Umgebungen gleichzeitig: Sie können die Überschreibungen auf alle Umgebungen gleichzeitig anwenden und den Abschluss prüfen:
          apigeectl apply -f OVERRIDES.yaml --all-envs
          apigeectl check-ready -f OVERRIDES.yaml

      Demo/Experimentell

      In den meisten Demo- oder experimentellen Umgebungen können Sie die Überschreibungen auf alle Komponenten gleichzeitig anwenden. Wenn Ihre Demo-/experimentelle Umgebung groß und komplex ist oder eine Produktionsumgebung genau nachahmt, sollten Sie die Anleitung zur Aktualisierung von Produktionsumgebungen verwenden.

      1. apigeectl apply -f OVERRIDES.yaml
      2. Prüfen Sie den Status:
        apigeectl check-ready -f OVERRIDES.yaml

Rollback für Upgrade durchführen

So führen Sie ein Rollback für ein Upgrade durch:

  1. Bereinigen Sie abgeschlossene Jobs für den Namespace der Hybridlaufzeit. Dabei ist NAMESPACE der Namespace, der in der Überschreibungsdatei angegeben ist, wenn Sie einen Namespace angegeben haben. Wenn nicht, ist der Standard-Namespace apigee:
    kubectl delete job -n NAMESPACE \
      $(kubectl get job -n NAMESPACE \
      -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  2. Bereinigen Sie abgeschlossene Jobs für den Namespace apigee-system:
    kubectl delete job -n apigee-system \
      $(kubectl get job -n apigee-system \
      -o=jsonpath='{.items[?(@.status.succeeded==1)].metadata.name}')
  3. Ändern Sie die Variable APIGEECTL_HOME so, dass sie auf das Verzeichnis verweist, das die ursprüngliche Version von apigeectl enthält. Beispiel:
    export APIGEECTL_HOME=PATH_TO_PREVIOUS_APIGEECTL_DIRECTORY
  4. Führen Sie im Stammverzeichnis der Installation, zu der Sie ein Rollback durchführen möchten, folgenden Befehl aus:apigeectl apply Prüfen Sie den Status Ihrer Pods, löschen Sie die Redis-Komponente (neu in der Hybrid-Version 1.5.0) und führen Sie dann Folgendes aus: apigeectl init. Achten Sie darauf, die Original-Überschreibungsdatei für die Version zu verwenden, für die Sie ein Rollback durchführen möchten:
    • Führen Sie apigeectl apply aus.
      $APIGEECTL_HOME/apigeectl apply -f overrides/ORIGINAL_OVERRIDES.yaml
    • Prüfen Sie den Status der Pods:
      kubectl -n NAMESPACE get pods

      Dabei ist NAMESPACE Ihr Apigee Hybrid-Namespace.

      Fahren Sie nur mit dem nächsten Schritt fort, wenn der apigeeds-Pod ausgeführt wird.

    • Da Redis eine neue Komponente in der Hybrid-Version 1.5 ist, löschen Sie es mit dem folgenden Befehl:

      apigeectl_1.5.0 delete --redis -f ORIGINAL_OVERRIDES.yaml
    • Führen Sie apigeectl init aus.
      $APIGEECTL_HOME/apigeectl init -f overrides/ORIGINAL_OVERRIDES.yaml