Dieses Verfahren behandelt das Upgrade von der Apigee Hybrid-Version 1.8.x auf die Apigee Hybrid-Version 1.9.4 und von früheren Releases der Hybrid-Version 1.9.x auf Version 1.9.4.
Verwenden Sie dieselben Verfahren für Upgrades von Nebenversionen (z. B. Version 1.8 auf 1.9) und Patch-Upgrades (z. B. 1.9.0 bis 1.9.4).
Wenn Sie ein Upgrade von Apigee Hybrid-Version 1.7 oder älter ausführen, ist zuerst ein Upgrade auf die Hybrid-Version 1.8 erforderlich, bevor Sie auf Version 1.9.4 aktualisieren. Weitere Informationen finden Sie in der Anleitung unter Upgrade von Apigee Hybrid auf Version 1.8 ausführen.
Ab Version 1.9.0 unterstützt Apigee Hybrid nur das Apigee-Ingress-Gateway als Ingress-Ebene.
Upgrade auf Version 1.9.4 – Übersicht
Die Schritte zum Upgrade von Apigee Hybrid werden in den folgenden Abschnitten erläutert:
Vorbereitung
- In dieser Upgrade-Anleitung wird davon ausgegangen, dass Sie die Apigee Hybrid-Version 1.8.x installiert haben und ein Upgrade auf Version 1.9.4 durchführen möchten. Wenn Sie eine Aktualisierung von einer früheren Version ausführen, lesen Sie die Anleitung unter Upgrade von Apigee Hybrid auf Version 1.8 ausführen.
- In der Apigee Hybrid-Version 1.8 wurde das Apigee Ingress-Gateway als alternative Ingress-Ebene zu Anthos Service Mesh eingeführt. Ab Version 1.9.0 erfordert Apigee Hybrid das Apigee-Ingress-Gateway und unterstützt nicht mehr Anthos Service Mesh für eingehenden Traffic. Wenn die Installation, von der Sie ein Upgrade durchführen, Anthos Service Mesh verwendet, müssen Sie zuerst zum Apigee Ingress-Gateway migrieren, bevor Sie ein Upgrade auf Version 1.9.4 durchführen.
Das Ingress-Gateway von Apigee verwendet eine kleine Teilmenge von Anthos Service Mesh-Features für das Ingress-Gateway. Die Verwaltung und Upgrades dieser Features werden automatisch von Apigee Hybrid übernommen. Sie benötigen daher keine Kenntnisse über Anthos Service Mesh, um das Apigee Hybrid-Ingress-Gateway zu installieren, zu aktualisieren und zu verwalten.
Eine Anleitung dazu finden Sie in der Dokumentation zu Hybrid v1.8 unter Zum Apigee-Ingress-Gateway migrieren.
Upgrade auf Version 1.9 vorbereiten
Hybridinstallation sichern (empfohlen)
- In dieser Anleitung wird die Umgebungsvariable APIGEECTL_HOME für das Verzeichnis in Ihrem Dateisystem verwendet, in dem Sie
apigeectl
installiert haben. Wechseln Sie bei Bedarf in das Verzeichnisapigeectl
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%
- Erstellen Sie eine Sicherungskopie Ihres
$APIGEECTL_HOME/
-Verzeichnisses der Version 1.8. Beispiel:tar -czvf $APIGEECTL_HOME/../apigeectl-v1.8-backup.tar.gz $APIGEECTL_HOME
- Sichern Sie Ihre Cassandra-Datenbank entsprechend der Anleitung unter Cassandra-Sicherung und -Wiederherstellung.
Fügen Sie dem Dienstkonto für die Apigee-Laufzeit die Rolle Cloud Trace Agent hinzu. (Optional)
Optional: Wenn Sie Cloud Trace verwenden möchten und die Rolle Cloud Trace Agent
nicht zu Ihrer Hybrid-v1.8-Installation hinzugefügt haben, achten Sie darauf, dass Ihr Dienstkonto für Ihre Apigee-Laufzeitdienste die Cloud IAM-Rolle Cloud Trace-Agent (roles/cloudtrace.agent
) hat.
In Produktionsumgebungen lautet das Laufzeitdienstkonto apigee-runtime
. In Nicht-Produktionsumgebungen das Laufzeitdienstkonto apigee-non-prod
.
Sie können die Rolle in der Benutzeroberfläche Cloud Console > IAM und Verwaltung > Dienstkonten oder mit den folgenden Befehlen hinzufügen:
- Rufen Sie die E-Mail-Adresse Ihres Dienstkontos mit dem folgenden Befehl ab:
Produktion
gcloud iam service-accounts list --filter "apigee-runtime"
Wenn die E-Mail-Adresse dem Muster
apigee-runtime@$ORG_NAME.iam.gserviceaccount.com
entspricht, können Sie dieses Muster im nächsten Schritt verwenden.Non-prod
gcloud iam service-accounts list --filter "apigee-non-prod"
Wenn es mit dem Muster
apigee-non-prod@$ORG_NAME.iam.gserviceaccount.com
übereinstimmt, können Sie dieses Muster im nächsten Schritt verwenden. - Weisen Sie dem Dienstkonto die Rolle Cloud Trace-Agent zu:
Produktion
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:apigee-runtime@$PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/cloudtrace.agent"
Non-prod
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member="serviceAccount:apigee-non-prod@$PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/cloudtrace.agent"
Beispiel
gcloud projects add-iam-policy-binding hybrid-example-project \ --member="serviceAccount:apigee-runtime@hybrid-example-project.iam.gserviceaccount.com" \ --role="roles/cloudtrace.agent"
Dabei gilt: $PROJECT_ID ist der Name des Google Cloud-Projekts, in dem Apigee Hybrid installiert ist.
Apigee Ingress-Gateway installieren, wenn Ihre Installation Anthos Service Mesh verwendet
Ab Version 1.9 unterstützt Apigee Hybrid die Verwendung von Anthos Service Mesh für eingehenden Traffic nicht mehr. Wenn Ihre Hybridinstallation Anthos Service Mesh verwendet, müssen Sie Ihre aktuelle Installation zum Apigee Ingress-Gateway migrieren, bevor Sie die Hybrid-Version 1.9 installieren.
-
Fügen Sie der Überschreibungsdatei das Attribut
ingressGateways
hinzu.Syntax
ingressGateways: - name: INGRESS_NAME replicaCountMin: REPLICAS_MIN replicaCountMax: REPLICAS_MAX resources: requests: cpu: CPU_COUNT_REQ memory: MEMORY_REQ limits: cpu: CPU_COUNT_LIMIT memory: MEMORY_LIMIT svcAnnotations: # optional. See Known issue 243599452. SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE svcLoadBalancerIP: SVC_LOAD_BALANCER_IP # optional
Beispiel
ingressGateways: - name: prod1 replicaCountMin: 2 replicaCountMax: 100 resources: requests: cpu: 1 memory: 1Gi limits: cpu: 2 memory: 2Gi svcAnnotations: # optional. See Known issue 243599452. networking.gke.io/load-balancer-type: "Internal" svcLoadBalancerIP: 198.252.0.123
- INGRESS_NAME ist der Name des Ingress-Deployments. Dies kann ein beliebiger Name sein, der die folgenden Anforderungen erfüllt:
- Darf maximal 17 Zeichen lang sein
- Darf nur kleingeschriebene, alphanumerische Zeichen enthalten, "-" oder ".".
- Muss mit einem alphanumerischen Zeichen beginnen.
- Muss mit einem alphanumerischen Zeichen enden.
ingressGateways[].name
in der Referenz zu Konfigurationsattributen. - REPLICAS_MIN und REPLICAS_MAX sind die minimalen und maximalen Replikatzahlen für das Apigee-Ingress-Gateway in Ihrer Installation. Weitere Informationen und Standardeinstellungen finden Sie unter
ingressGateways[].replicaCountMin
undingressGateways[].replicaCountMax
in der Referenz zu Konfigurationsattributen. - CPU_COUNT_REQ und MEMORY_REQ sind die CPU- und Speicheranforderungen für jedes Replikat des Apigee Ingress-Gateways in Ihrer Installation.
Weitere Informationen und Standardeinstellungen finden Sie unter
ingressGateways[].resources.requests.cpu
undingressGateways[].resources.requests.memory
in der Referenz zu Konfigurationsattributen. - CPU_COUNT_LIMIT und MEMORY_LIMIT: die maximalen CPU- und Arbeitsspeicherlimits für jedes Replikat des Apigee Ingress-Gateways in Ihrer Installation.
Weitere Informationen und Standardeinstellungen finden Sie unter
ingressGateways[].resources.limits.cpu
undingressGateways[].resources.limits.memory
in der Referenz zu Konfigurationsattributen. - SVC_ANNOTATIONS_KEY SVC_ANNOTATIONS_VALUE (optional):
Dies ist ein Schlüssel/Wert-Paar, das Annotationen für Ihren Standarddienst für eingehenden Traffic bereitstellt. Annotationen werden von Ihrer Cloud Platform verwendet, um Ihre Hybridinstallation zu konfigurieren, z. B. um den Load-Balancer-Typ auf intern oder extern festzulegen. Beispiel:
ingressGateways: svcAnnotations: networking.gke.io/load-balancer-type: "Internal"
Annotationen variieren je nach Plattform. Erforderliche und vorgeschlagene Annotationen finden Sie in der Dokumentation Ihrer Plattform.
SieheingressGateways[].svcAnnotations
in der Referenz zu Konfigurationsattributen. - SVC_LOAD_BALANCER_IP (optional): Ermöglicht das Zuweisen einer statischen IP-Adresse für Ihren Load-Balancer. Auf Plattformen, die die Angabe der IP-Adresse des Load-Balancers unterstützen, wird der Load-Balancer mit dieser IP-Adresse erstellt. Auf Plattformen, auf denen Sie die IP-Adresse des Load-Balancers nicht angeben können, wird dieses Attribut ignoriert.
Wenn Sie Ihrem Load-Balancer keine statische IP-Adresse zugewiesen haben, lassen Sie dieses Attribut in der Überschreibungsdatei weg.
SieheingressGateways[].svcLoadBalancerIP
in der Referenz zu Konfigurationsattributen.
- INGRESS_NAME ist der Name des Ingress-Deployments. Dies kann ein beliebiger Name sein, der die folgenden Anforderungen erfüllt:
- Wenden Sie mit den folgenden Befehlen die Änderungen an, um das Apigee Ingress-Gateway zu installieren:
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml
- Geben Sie das Apigee Ingress-Gateway frei. Folgen Sie den Schritten unter Apigee-Ingress-Gateway freigeben.
- Neues Ingress-Gateway durch Aufrufen eines Proxys testen Testen Sie idealerweise alle wichtigen Proxys, die derzeit bereitgestellt sind.
- Aktualisieren Sie zum Ändern des Traffics Ihre DNS-Einträge so, dass sie auf die IP-Adresse für Ihr neues Apigee Ingress-Gateway verweisen.
Je nach DNS-Anbieter können Sie den Traffic möglicherweise schrittweise zum neuen Endpunkt verschieben.
Tipp: Sie finden die externe IP-Adresse des Apigee Ingress-Gateways mit dem folgenden Befehl: kubectl get svc -n apigee -l app=apigee-ingressgateway
Die Ausgabe sollte in etwa so aussehen:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE apigee-ingressgateway-prod-hybrid-37a39bd LoadBalancer 192.0.2.123 233.252.0.123 15021:32049/TCP,80:31624/TCP,443:30723/TCP 16h
- Überwachen Sie die Dahsboards, um zu prüfen, ob der gesamte Laufzeittraffic funktioniert. Fahren Sie nur mit dem nächsten Schritt fort, wenn alles wie erwartet funktioniert. Achten Sie darauf, dass kein Traffic über Ihr altes Ingress-Gateway (Anthos Service Mesh) geleitet wird, da die DNS-Aktualisierung aufgrund von DNS-Caching möglicherweise nur langsam übernommen wird.
- Wenn Sie die Konfiguration von Apigee für Anthos Service Mesh beenden möchten, führen Sie die Schritte unter Konfiguration für ASM beenden im Leitfaden zum Verwalten von Apigee Ingress-Gateway aus.
- Testen sie erneut und überwachen Sie den API-Proxy-Traffic.
- Folgen Sie der Anleitung in der Anthos Service Mesh-Dokumentation, um Anthos Service Mesh aus dem Cluster zu deinstallieren.
Hybrid 1.9.4-Laufzeit installieren
- Sie müssen das Hybrid-Basisverzeichnis geöffnet haben. Dies ist das übergeordnete Verzeichnis des Verzeichnisses, in dem sich die ausführbare Datei
apigeectl
befindet:cd $APIGEECTL_HOME/..
-
Laden Sie das Releasepaket für Ihr Betriebssystem mit dem folgendem Befehl herunter. Wählen Sie Ihre Plattform in der folgenden Tabelle aus:
Linux
Linux 64-Bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.9.4/apigeectl_linux_64.tar.gz
macOS
Mac 64-Bit:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.9.4/apigeectl_mac_64.tar.gz
Windows
Windows 64-Bit:
curl -LO ^ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.9.4/apigeectl_windows_64.zip
- Benennen Sie Ihr aktuelles
apigeectl/
-Verzeichnis in einen Backupverzeichnisnamen um. Beispiel:Linux
mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.8/
macOS
mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.8/
Windows
rename %APIGEECTL_HOME% %APIGEECTL_HOME%-v1.8
-
Extrahieren Sie die heruntergeladenen gzip-Dateiinhalte in Ihr Hybrid-Basisverzeichnis. Das Hybrid-Basisverzeichnis ist das Verzeichnis, in dem sich das umbenannte Verzeichnis
apigeectl-v1.8
befindet:Linux
tar xvzf filename.tar.gz -C ./
macOS
tar xvzf filename.tar.gz -C ./
Windows
tar xvzf filename.zip -C ./
-
Die TAR-Inhalte werden standardmäßig in einem Verzeichnis gezeigt, dessen Name die Version und Plattform enthält. Beispiel:
./apigeectl_1.9.4-xxxxxxx_linux_64
. Benennen Sie dieses Verzeichnis mit dem folgenden Befehl inapigeectl
um:Linux
mv apigeectl_1.9.4-xxxxxxx_linux_64 apigeectl
macOS
mv apigeectl_1.9.4-xxxxxxx_mac_64 apigeectl
Windows
rename apigeectl_1.9.4-xxxxxxx_windows_64 apigeectl
-
Wechseln Sie in das Verzeichnis
apigeectl
:cd ./apigeectl
Dieses Verzeichnis ist das Basisverzeichnis
apigeectl
. Hier befindet sich der ausführbare Befehlapigeectl
. - In dieser Anleitung wird die Umgebungsvariable
$APIGEECTL_HOME
für das Verzeichnis in Ihrem Dateisystem verwendet, in dem das Dienstprogrammapigeectl
installiert ist. Wechseln Sie bei Bedarf in das Verzeichnisapigeectl
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%
- Prüfen Sie die Version von
apigeectl
mit dem Befehlversion
:./apigeectl version
Version: 1.9.4
- Wechseln Sie zum Verzeichnis
hybrid-base-directory/hybrid-files
. Im Verzeichnishybrid-files
befinden sich Konfigurationsdateien wie die Überschreibungsdatei, Zertifikate und Dienstkonten. Beispiel:cd $APIGEECTL_HOME/../hybrid-files
- Prüfen Sie mit dem folgenden Befehl, ob
kubectl
auf den richtigen Kontext eingestellt ist. Der aktuelle Kontext sollte auf den Cluster eingestellt werden, in dem Sie Apigee Hybrid aktualisieren.kubectl config get-contexts | grep \*
- Im Verzeichnis
hybrid-files
:-
Aktualisieren Sie die folgenden symbolischen Links zu
$APIGEECTL_HOME
. Mit diesen Links können Sie den neu installierten Befehlapigeectl
aus dem Verzeichnishybrid-files
ausführen:ln -nfs
$APIGEECTL_HOME
/tools toolsln -nfs
$APIGEECTL_HOME
/config configln -nfs
$APIGEECTL_HOME
/templates templatesln -nfs
$APIGEECTL_HOME
/plugins plugins - Prüfen Sie, ob die Symlinks ordnungsgemäß erstellt wurden. Führen Sie dazu den folgenden Befehl aus und achten Sie darauf, dass die Linkpfade auf die richtigen Speicherorte verweisen:
ls -l | grep ^l
-
Aktualisieren Sie die folgenden symbolischen Links zu
- Führen Sie eine Probelaufinitialisierung aus, um nach Fehlern zu suchen:
${APIGEECTL_HOME}/apigeectl init -f OVERRIDES_FILE --dry-run=client
Dabei ist OVERRIDES_FILE der Name Ihrer Überschreibungsdatei, z. B.
./overrides/overrides.yaml
. - Wenn keine Fehler auftreten, initialisieren Sie Hybrid 1.9.4:
$APIGEECTL_HOME/apigeectl init -f OVERRIDES_FILE
- Prüfen Sie den Initialisierungsstatus:
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
Bei Erfolg lautet die Ausgabe:
All containers ready.
kubectl describe apigeeds -n apigee
Suchen Sie in der Ausgabe nach
State: running
. - Suchen Sie mit dem Probelauf des Befehls
apply
mit dem Flag--dry-run
nach Fehlern:$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --dry-run=client
- Wenn keine Fehler vorhanden sind, wenden Sie die Überschreibungen an. Wählen Sie je nach Ihrer Installation die Anleitung für Produktionsumgebungen oder Nicht-Produktionsumgebungen und folgen Sie diesen.
Produktion
Aktualisieren Sie in Produktionsumgebungen jede Hybridkomponente einzeln und prüfen Sie den Status der aktualisierten Komponente, bevor Sie mit der nächsten Komponente fortfahren.
- Sie müssen sich im Verzeichnis
hybrid-files
befinden. - Wenden Sie Ihre Überschreibungen an, um Upgrade von Cassandra durchzuführen:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --datastore
- Abschluss prüfen:
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
Fahren Sie mit dem nächsten Schritt nur fort, wenn die Pods bereit sind.
- Wenden Sie Ihre Überschreibungen an, um Telemetriekomponenten zu aktualisieren, und prüfen Sie den Fortschritt:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --telemetry
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Richten Sie die Redis-Komponenten ein:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --redis
- 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_HOME/apigeectl apply -f OVERRIDES_FILE --org
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- 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_HOME/apigeectl apply -f OVERRIDES_FILE --env ENV_NAME
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
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_HOME/apigeectl apply -f OVERRIDES_FILE --all-envs
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- 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:
- Wenden Sie Ihre Überschreibungen an, um die
virtualhosts
-Komponenten zu aktualisieren, und prüfen Sie den Fortschritt:$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --settings virtualhosts
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
Non-prod
In den meisten Nicht-Produktionsumgebungen, Demo- und Testumgebungen können Sie die Überschreibungen auf alle Komponenten gleichzeitig anwenden. Wenn Ihre Nicht-Produktionsumgebung groß und komplex ist oder eine Produktionsumgebung nachahmt, können Sie die Anleitung zum Upgrade von Produktionsumgebungen verwenden.
- Sie müssen sich im Verzeichnis
hybrid-files
befinden. $APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE
- Prüfen Sie den Status:
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Sie müssen sich im Verzeichnis
1.9.4-hotfix.1
installieren
Führen Sie die folgenden Schritte aus, um den Hotfix-Release 1.9.4-hotfix.1
zu installieren:
- Bevor Sie diese Schritte ausführen, benötigen Sie die Apigee Hybrid-Version 1.9.4 oder höher. Wenn Sie nicht Version 1.9.4 oder höher verwenden, führen Sie ein Upgrade auf 1.9.4 durch, bevor Sie fortfahren.
- Öffnen Sie Ihre
overrides.yaml
-Datei. - Ändern Sie in der
istiod
-Stanza die Version des Image-Tags (falls vorhanden) in Version1.17.7
. Beispiel:istiod: image: url: "gcr.io/apigee-release/hybrid/apigee-asm-istiod" tag: "1.17.7-asm.0-distroless"
- Je nachdem, wie Sie Apigee Hybrid installiert haben, haben Sie möglicherweise eine
ingressGateway
- oderingressGateways
-Stanza. Suchen Sie die Stanza, die in der Überschreibungsdatei angezeigt wird, und ändern Sie die Version des Image-Tags (falls vorhanden) in Version1.17.7
. Wenn Sie beispielsweise eineingressGateway
-Stanza haben:ingressGateway: image: url: "gcr.io/apigee-release/hybrid/apigee-asm-ingress" tag: "1.17.7-asm.0-distroless"
oder, wenn Sie eine
ingressGateways
-Stanza haben:ingressGateways: - name: gateway1 image: url: "gcr.io/apigee-release/hybrid/apigee-asm-ingress" tag: "1.17.7-asm.0-distroless" ... - name: gateway2 image: url: "gcr.io/apigee-release/hybrid/apigee-asm-ingress" tag: "1.17.7-asm.0-distroless" ...
- Speichern Sie die Datei.
- Führen Sie den folgenden Befehl aus, um die Komponente
istiod
zu initialisieren:$APIGEECTL_HOME/apigeectl init -f OVERRIDES_FILE
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Führen Sie den folgenden Befehl aus, um Änderungen auf die Apigee Ingress-Komponente(n) anzuwenden. Wenn Sie mehr als eine Organisation haben, wiederholen Sie diesen Befehl für jede Organisation:
$APIGEECTL_HOME/apigeectl apply --org -f OVERRIDES_FILE
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
- Prüfen Sie den Status Ihrer Pods:
kubectl get pods -n YOUR_APIGEE_NAMESPACE
Aktualisieren Sie Ihre Kubernetes-Version
Aktualisieren Sie Ihre Kubernetes-Plattform auf die von Hybrid 1.9 unterstützten Versionen. Weitere Informationen finden Sie in der Dokumentation der Plattform.
Rollback für Upgrade durchführen
So führen Sie ein Rollback für ein Upgrade durch:
- 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}')
- 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}')
- Ändern Sie die Variable
APIGEECTL_HOME
so, dass sie auf das Verzeichnis verweist, das die ursprüngliche Version vonapigeectl
enthält. Beispiel:export APIGEECTL_HOME=PATH_TO_PREVIOUS_APIGEECTL_DIRECTORY
- Führen Sie im Stammverzeichnis der Installation, zu der Sie ein Rollback machen möchten,
apigeectl apply
aus, prüfen Sie den Status Ihrer Pods und führen Sie dannapigeectl init
aus. 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 im Verzeichnis mit Hybriddateien
apigeectl apply
aus:$APIGEECTL_HOME
/apigeectl apply -f ORIGINAL_OVERRIDES_FILEDabei ist ORIGINAL_OVERRIDES_FILE der relative Pfad und der Dateiname der Überschreibungsdatei für Ihre vorherige Version der Hybridinstallation, z. B.
./overrides/overrides1.8.yaml
. - Prüfen Sie den Status der Pods:
kubectl -n NAMESPACE get pods
Dabei ist NAMESPACE Ihr Apigee Hybrid-Namespace.
- Prüfen Sie den Status von
apigeeds
: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
Fahren Sie nur mit dem nächsten Schritt fort, wenn der
apigeeds
-Pod ausgeführt wird. - Führen Sie den folgenden Befehl aus, um zu notieren, was die neuen Replikatwerte nach dem Upgrade für den Nachrichtenprozessor sein werden. Wenn diese Werte nicht mit dem zuvor festgelegten Wert übereinstimmen, ändern Sie die Werte in der Überschreibungsdatei entsprechend Ihrer vorherigen Konfiguration.
apigeectl apply -f ORIGINAL_OVERRIDES_FILE --dry-run=client --print-yaml --env ENV_NAME 2>/dev/null |grep "runtime:" -A 25 -B 1| grep "autoScaler" -A 2
Die Ausgabe sollte in etwa so aussehen:
autoScaler: minReplicas: 2 maxReplicas: 10
- Führen Sie
apigeectl init
aus.$APIGEECTL_HOME
/apigeectl init -f ORIGINAL_OVERRIDES_FILE
- Führen Sie im Verzeichnis mit Hybriddateien