本程序說明如何從 Apigee Hybrid 1.14.x 版升級至 1.15.0 版。
與 Apigee Hybrid 1.14 版的差異
請注意以下異動:
-
支援大型郵件酬載:從 1.15 版和 1.14.2 修補程式版本開始,Apigee 現在支援最大 30 MB 的郵件酬載。詳情請參閱:
- 在 Apigee Hybrid 中設定大型訊息酬載支援
- 「設定屬性參考資料」一節中的
runtime.resources.limits.memory
。 - 請參閱「設定屬性參考資料」一文中的
runtime.resources.requests.memory
。
- 更嚴格的類別例項化檢查:Apigee Hybrid 的 JavaCallout 政策現在會在 Java 類別例項化期間,提供額外的安全性。這項強化安全措施可防止部署直接或間接嘗試執行需要不允許權限的動作的政策。
在大多數情況下,現有政策仍會正常運作,不受影響。不過,如果政策依賴第三方程式庫,或是自訂程式碼間接觸發需要提升權限的操作,就可能會受到影響。
如要進一步瞭解 Hybrid 1.14 版的功能,請參閱 Apigee Hybrid 1.14.0 版版本資訊。
必要條件
升級至混合式 1.15 版前,請確認您的安裝項目符合下列需求:
- 如果混合式安裝作業執行的版本舊於 v1.14,請務必先升級至 1.14 版,再升級至 1.15 版。請參閱「將 Apigee Hybrid 升級至 1.14 版」。
- Helm 版本 v3.14.2 以上。
kubectl
:適用於 Kubernetes 平台版本的kubectl
支援版本。請參閱「支援的平台和版本:kubectl
」。- cert-manager:支援的 cert-manager 版本。請參閱「支援的平台和版本:cert-manager」。如有需要,請按照下方的「準備升級至 1.15 版」一節,升級 cert-manager。
升級至 1.15.0 版前 - 限制和重要注意事項
Apigee Hybrid 1.15.0 推出新的環境專屬 Proxy 限制,讓您在單一環境中部署更多 Proxy 和共用流程。請參閱「限制:API Proxy」,瞭解每個環境可部署的 Proxy 和共用流程數量限制。這項功能僅適用於新建立的混合式機構,無法套用至升級的機構。如要使用這項功能,請重新安裝 Hybrid 1.15.0,並建立新機構。
這項功能僅適用於 2024 年訂閱方案,且須遵守該訂閱方案授予的權利。如要進一步瞭解這項功能,請參閱「提升每個環境的 Proxy 限制」。
升級至 Apigee Hybrid 1.15 版時,可能需要停機。
將 Apigee 控制器升級至 1.15.0 版時,所有 Apigee 部署作業都會進行輪流重新啟動。如要在輪流重新啟動期間,盡量減少實際工作環境混合式環境的停機時間,請確保您至少執行兩個叢集 (位於相同或不同區域/資料中心)。將所有正式版流量導向單一叢集,並將即將升級的叢集離線,然後繼續進行升級程序。針對每個叢集重複執行上述程序。
Apigee 建議您開始升級後,應盡快升級所有叢集,以減少對正式環境造成影響的機率。升級第一個叢集後,其餘叢集沒有升級時間限制。不過,在所有剩餘叢集升級前,Cassandra 備份和還原功能無法與混合版本搭配運作。舉例來說,您無法使用 Hybrid 1.14 的備份檔還原 Hybrid 1.15 執行個體。
升級期間不需要完全暫停管理平面變更。 如果管理平面變更需要暫時停止運作,升級說明中會註明。
升級至 1.15.0 版總覽
升級 Apigee Hybrid 的程序分為下列幾節:
準備升級至 1.15 版
備份混合式安裝作業
- 這些操作說明會使用環境變數 APIGEE_HELM_CHARTS_HOME,代表您在檔案系統中安裝 Helm 圖表的目錄。視需要將目錄變更為這個目錄,然後使用下列指令定義變數:
Linux
export APIGEE_HELM_CHARTS_HOME=$PWD
echo $APIGEE_HELM_CHARTS_HOME
Mac OS
export APIGEE_HELM_CHARTS_HOME=$PWD
echo $APIGEE_HELM_CHARTS_HOME
Windows
set APIGEE_HELM_CHARTS_HOME=%CD%
echo %APIGEE_HELM_CHARTS_HOME%
- 備份 1.14 版
$APIGEE_HELM_CHARTS_HOME/
目錄。你可以使用任何備份程序。舉例來說,您可以使用下列指令,建立整個目錄的tar
檔案:tar -czvf $APIGEE_HELM_CHARTS_HOME/../apigee-helm-charts-v1.14-backup.tar.gz $APIGEE_HELM_CHARTS_HOME
- 請按照「Cassandra 備份與復原」一文中的說明,備份 Cassandra 資料庫。
- 如果您在覆寫中使用服務憑證檔案 (
.json
) 驗證服務帳戶,請確認服務帳戶憑證檔案位於正確的 Helm 圖表目錄中。Helm 圖表無法讀取各圖表目錄以外的檔案。如果您使用 Kubernetes 密鑰或 GKE 的 Workload Identity Federation 驗證服務帳戶,則不需要執行這個步驟。
下表列出各項服務帳戶檔案的目標位置,視安裝類型而定:
正式環境
服務帳戶 預設檔案名稱 Helm 資訊套件目錄 apigee-cassandra
PROJECT_ID-apigee-cassandra.json
$APIGEE_HELM_CHARTS_HOME/apigee-datastore/
apigee-logger
PROJECT_ID-apigee-logger.json
$APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
apigee-mart
PROJECT_ID-apigee-mart.json
$APIGEE_HELM_CHARTS_HOME/apigee-org/
apigee-metrics
PROJECT_ID-apigee-metrics.json
$APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
apigee-runtime
PROJECT_ID-apigee-runtime.json
$APIGEE_HELM_CHARTS_HOME/apigee-env
apigee-synchronizer
PROJECT_ID-apigee-synchronizer.json
$APIGEE_HELM_CHARTS_HOME/apigee-env/
apigee-udca
PROJECT_ID-apigee-udca.json
$APIGEE_HELM_CHARTS_HOME/apigee-org/
apigee-watcher
PROJECT_ID-apigee-watcher.json
$APIGEE_HELM_CHARTS_HOME/apigee-org/
非正式環境
在下列每個目錄中,複製
apigee-non-prod
服務帳戶檔案:服務帳戶 預設檔案名稱 Helm 資訊套件目錄 apigee-non-prod
PROJECT_ID-apigee-non-prod.json
$APIGEE_HELM_CHARTS_HOME/apigee-datastore/
$APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
$APIGEE_HELM_CHARTS_HOME/apigee-org/
$APIGEE_HELM_CHARTS_HOME/apigee-env/
-
請確認 TLS 憑證和金鑰檔案 (
.crt
、.key
和/或.pem
) 位於$APIGEE_HELM_CHARTS_HOME/apigee-virtualhost/
目錄中。
升級 Kubernetes 版本
檢查 Kubernetes 平台版本,並視需要將 Kubernetes 平台升級至混合式 1.14 和混合式 1.15 支援的版本。如需協助,請參閱相關平台的說明文件。
移除 Istio CRD
Apigee Hybrid 叢集中存在 istio.io
自訂資源定義 (CRD) 時,可能會導致 apigee-ingressgateway-manager
Pod 發生故障。
如要進一步瞭解 Apigee Hybrid 中的 istio.io
CRD,請參閱已知問題 416634326。
-
使用下列指令,判斷叢集是否含有
istio.io
CRD:kubectl get crd -o custom-columns=NAME:metadata.name | grep istio.io
如果叢集有
istio.io
CRD,輸出內容應如下所示:kubectl get crd -o custom-columns=NAME:metadata.name | grep istio.io
authorizationpolicies.security.istio.io destinationrules.networking.istio.io envoyfilters.networking.istio.io gateways.networking.istio.io peerauthentications.security.istio.io proxyconfigs.networking.istio.io requestauthentications.security.istio.io serviceentries.networking.istio.io sidecars.networking.istio.io telemetries.telemetry.istio.io virtualservices.networking.istio.io wasmplugins.extensions.istio.io workloadentries.networking.istio.io workloadgroups.networking.istio.io - 選用:將 CRD 儲存在本機,以防需要重新建立:
kubectl get crd $(cat istio-crd.csv) -o yaml > istio-crd.yaml
-
刪除
istio.io
CRD:模擬測試:
kubectl delete crd $(cat istio-crd.csv) --dry-run=client
執行:
kubectl delete crd $(cat istio-crd.csv)
-
列出要重新安裝或重新建立的
ingress-manager
Pod:kubectl get deployments -n apigee
輸出內容範例:
NAME READY UP-TO-DATE AVAILABLE AGE apigee-controller-manager 1/1 1 1 32d apigee-ingressgateway-manager 2/2 2 2 32d
-
重新啟動
ingress-manager
Pod:kubectl rollout restart deployment -n APIGEE_NAMESPACE apigee-ingressgateway-manager
安裝 Hybrid 1.15.0 執行階段
設定資料收集管道。
從混合式 1.14 版開始,所有 Apigee 混合式機構都會預設啟用新的分析和偵錯資料管道。您必須按照啟用 Analytics 發布者存取權中的步驟,設定授權流程。
準備升級 Helm 資訊套件
- 提取 Apigee Helm 資訊套件。
Apigee Hybrid 圖表託管於 Google Artifact Registry:
oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts
使用
pull
指令,將所有 Apigee Hybrid Helm 圖表複製到本機儲存空間,指令如下:export CHART_REPO=oci://us-docker.pkg.dev/apigee-release/apigee-hybrid-helm-charts
export CHART_VERSION=1.15.0
helm pull $CHART_REPO/apigee-operator --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-datastore --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-env --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-ingress-manager --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-org --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-redis --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-telemetry --version $CHART_VERSION --untar
helm pull $CHART_REPO/apigee-virtualhost --version $CHART_VERSION --untar
- 視需要升級 cert-manager。
如要升級 cert-manager 版本,請使用下列指令安裝新版本:
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.17.2/cert-manager.yaml
如需支援的版本清單,請參閱「支援的平台和版本:cert-manager」。
- 如果 Apigee 命名空間不是
apigee
,請編輯apigee-operator/etc/crds/default/kustomization.yaml
檔案,並將namespace
值替換為您的 Apigee 命名空間。apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization namespace: APIGEE_NAMESPACE
如果您使用
apigee
做為命名空間,則不需要編輯檔案。 - 安裝更新的 Apigee CRD:
-
執行下列指令,使用
kubectl
模擬測試功能:kubectl apply -k apigee-operator/etc/crds/default/ --server-side --force-conflicts --validate=false --dry-run=server
-
使用模擬執行指令驗證後,請執行下列指令:
kubectl apply -k apigee-operator/etc/crds/default/ \ --server-side \ --force-conflicts \ --validate=false
- 使用
kubectl get crds
指令驗證安裝:kubectl get crds | grep apigee
輸出內容應如下所示:
apigeedatastores.apigee.cloud.google.com 2024-08-21T14:48:30Z apigeedeployments.apigee.cloud.google.com 2024-08-21T14:48:30Z apigeeenvironments.apigee.cloud.google.com 2024-08-21T14:48:31Z apigeeissues.apigee.cloud.google.com 2024-08-21T14:48:31Z apigeeorganizations.apigee.cloud.google.com 2024-08-21T14:48:32Z apigeeredis.apigee.cloud.google.com 2024-08-21T14:48:33Z apigeerouteconfigs.apigee.cloud.google.com 2024-08-21T14:48:33Z apigeeroutes.apigee.cloud.google.com 2024-08-21T14:48:33Z apigeetelemetries.apigee.cloud.google.com 2024-08-21T14:48:34Z cassandradatareplications.apigee.cloud.google.com 2024-08-21T14:48:35Z
-
-
檢查叢集節點上的標籤。 根據預設,Apigee 會在標籤為
cloud.google.com/gke-nodepool=apigee-data
的節點上排定資料 Pod,並在標籤為cloud.google.com/gke-nodepool=apigee-runtime
的節點上排定執行階段 Pod。您可以在overrides.yaml
檔案中自訂節點集區標籤。詳情請參閱「設定專屬節點集區」。
安裝 Apigee Hybrid Helm 資訊套件
- 如果沒有,請前往
APIGEE_HELM_CHARTS_HOME
目錄。從該目錄執行下列指令。 - 升級 Apigee Operator/Controller:
模擬測試:
helm upgrade operator apigee-operator/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE \ --dry-run=server
升級圖表:
helm upgrade operator apigee-operator/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE
確認 Apigee Operator 安裝狀態:
helm ls -n APIGEE_NAMESPACE
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION operator apigee 3 2024-08-21 00:42:44.492009 -0800 PST deployed apigee-operator-1.15.0 1.15.0
檢查可用性,確認該服務已啟動並正常運作:
kubectl -n APIGEE_NAMESPACE get deploy apigee-controller-manager
NAME READY UP-TO-DATE AVAILABLE AGE apigee-controller-manager 1/1 1 1 7d20h
- 升級 Apigee 資料儲存庫:
模擬測試:
helm upgrade datastore apigee-datastore/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE \ --dry-run=server
升級圖表:
helm upgrade datastore apigee-datastore/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE
檢查
apigeedatastore
的狀態,確認是否已啟動並正常運作:kubectl -n APIGEE_NAMESPACE get apigeedatastore default
NAME STATE AGE default running 2d
- 升級 Apigee 遙測功能:
模擬測試:
helm upgrade telemetry apigee-telemetry/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE \ --dry-run=server
升級圖表:
helm upgrade telemetry apigee-telemetry/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE
檢查狀態,確認是否已啟動並執行:
kubectl -n APIGEE_NAMESPACE get apigeetelemetry apigee-telemetry
NAME STATE AGE apigee-telemetry running 2d
- 升級 Apigee Redis:
模擬測試:
helm upgrade redis apigee-redis/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE \ --dry-run=server
升級圖表:
helm upgrade redis apigee-redis/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE
檢查狀態,確認是否已啟動並執行:
kubectl -n APIGEE_NAMESPACE get apigeeredis default
NAME STATE AGE default running 2d
- 升級 Apigee Ingress 管理工具:
模擬測試:
helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE \ --dry-run=server
升級圖表:
helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE
檢查可用性,確認該服務是否正常運作:
kubectl -n APIGEE_NAMESPACE get deployment apigee-ingressgateway-manager
NAME READY UP-TO-DATE AVAILABLE AGE apigee-ingressgateway-manager 2/2 2 2 2d
- 升級 Apigee 機構:
模擬測試:
helm upgrade ORG_NAME apigee-org/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE \ --dry-run=server
升級圖表:
helm upgrade ORG_NAME apigee-org/ \ --install \ --namespace APIGEE_NAMESPACE \ -f OVERRIDES_FILE
檢查對應機構的狀態,確認是否已啟動並正常運作:
kubectl -n APIGEE_NAMESPACE get apigeeorg
NAME STATE AGE apigee-org1-xxxxx running 2d
- 升級環境。
一次只能安裝一個環境。使用
--set env=
ENV_NAME 指定環境。模擬測試:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run=server
- ENV_RELEASE_NAME 是用於追蹤
apigee-env
圖表安裝和升級的名稱。這個名稱不得與安裝中的其他 Helm 版本名稱重複。 通常與ENV_NAME
相同。不過,如果環境與環境群組的名稱相同,您必須為環境和環境群組使用不同的發布名稱,例如dev-env-release
和dev-envgroup-release
。如要進一步瞭解 Helm 中的發布版本,請參閱 Helm 說明文件中的「Three big concepts class="external"」。 - ENV_NAME 是您要升級的環境名稱。
- OVERRIDES_FILE 是 1.15.0 版的新覆寫檔案
升級圖表:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE
檢查相應環境的狀態,確認該環境已啟動並執行:
kubectl -n APIGEE_NAMESPACE get apigeeenv
NAME STATE AGE GATEWAYTYPE apigee-org1-dev-xxx running 2d
- ENV_RELEASE_NAME 是用於追蹤
-
升級環境群組 (
virtualhosts
)。- 您一次只能升級一個環境群組 (虛擬主機)。使用
--set envgroup=
ENV_GROUP_NAME 指定環境群組。針對 overrides.yaml 檔案中提及的每個環境群組,重複執行下列指令:模擬測試:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE \ --dry-run=server
ENV_GROUP_RELEASE_NAME 是您先前安裝
apigee-virtualhost
圖表時使用的名稱。通常是 ENV_GROUP_NAME。升級圖表:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE
- 檢查 ApigeeRoute (AR) 的狀態。
安裝
virtualhosts
會建立 ApigeeRouteConfig (ARC),一旦 Apigee 監控程式從控制層提取環境群組相關詳細資料,ARC 就會在內部建立 ApigeeRoute (AR)。因此,請檢查對應 AR 的狀態是否為執行中:kubectl -n APIGEE_NAMESPACE get arc
NAME STATE AGE apigee-org1-dev-egroup 2d
kubectl -n APIGEE_NAMESPACE get ar
NAME STATE AGE apigee-org1-dev-egroup-xxxxxx running 2d
- 您一次只能升級一個環境群組 (虛擬主機)。使用
- 確認所有安裝項目都已順利升級後,請從
apigee-system
命名空間刪除舊版apigee-operator
。- 解除安裝舊版
operator
:helm delete operator -n apigee-system
- 刪除
apigee-system
命名空間:kubectl delete namespace apigee-system
- 解除安裝舊版
- 在 Apigee 命名空間中再次升級
operator
,重新安裝已刪除的叢集範圍資源:helm upgrade operator apigee-operator/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides.yaml
從 1.14.0 以下版本升級後驗證政策
從 1.14.0 升級後,請使用這個程序驗證 JavaCallout 政策的行為。
- 檢查 Java JAR 檔案是否要求不必要的權限。
部署政策後,請檢查執行階段記錄,確認是否出現下列記錄訊息:
"Failed to load and initialize class ..."
. 如果看到這則訊息,表示已部署的 JAR 要求了不必要的權限。如要解決這個問題,請調查 Java 程式碼並更新 JAR 檔案。 - 調查並更新 Java 程式碼。
請檢查所有 Java 程式碼 (包括依附元件),找出可能導致不允許作業的原因。找到後,請視需要修改原始碼。
- 啟用安全檢查功能,測試政策。
在非正式版環境中,啟用安全性檢查標記,並使用更新的 JAR 重新部署政策。如要設定標記,請按照下列步驟操作:
- 在
apigee-env/values.yaml
檔案中,將runtime:cwcAppend:
下方的conf_security-secure.constructor.only
設為true
。例如:# Apigee Runtime runtime: cwcAppend: conf_security-secure.constructor.only: true
- 更新環境的
apigee-env
圖表,套用變更。例如:helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE
ENV_RELEASE_NAME 是用於追蹤
apigee-env
圖表安裝和升級的名稱。這個名稱不得與安裝中的其他 Helm 版本名稱重複。 通常與ENV_NAME
相同。不過,如果環境與環境群組的名稱相同,您必須為環境和環境群組使用不同的發布名稱,例如dev-env-release
和dev-envgroup-release
。如要進一步瞭解 Helm 中的發布版本,請參閱 Helm 說明文件中的「Three big concepts class="external"」。
如果記錄訊息
"Failed to load and initialize class ..."
仍存在,請繼續修改及測試 JAR,直到記錄訊息不再顯示為止。 - 在
- 在正式環境中啟用安全檢查。
在非正式環境中徹底測試及驗證 JAR 檔案後,請將
conf_security-secure.constructor.only
旗標設為true
,並更新正式環境的apigee-env
圖表,以啟用正式環境中的安全性檢查。
還原至先前版本
如要復原至先前的版本,請使用舊版圖表,以相反順序復原升級程序。請先從 apigee-virtualhost
開始,然後逐步返回 apigee-operator
,再還原 CRD。
- 將所有圖表從
apigee-virtualhost
還原至apigee-datastore
。下列指令假設您使用的是舊版 (v1.14.x) 的圖表。針對每個環境群組執行下列指令:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace apigee \ --atomic \ --set envgroup=ENV_GROUP_NAME \ -f 1.14_OVERRIDES_FILE
針對每個環境執行下列指令:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace apigee \ --atomic \ --set env=ENV_NAME \ -f 1.14_OVERRIDES_FILE
還原
apigee-operator
以外的其餘圖表。helm upgrade ORG_NAME apigee-org/ \ --install \ --namespace apigee \ --atomic \ -f 1.14_OVERRIDES_FILE
helm upgrade ingress-manager apigee-ingress-manager/ \ --install \ --namespace apigee \ --atomic \ -f 1.14_OVERRIDES_FILE
helm upgrade redis apigee-redis/ \ --install \ --namespace apigee \ --atomic \ -f 1.14_OVERRIDES_FILE
helm upgrade telemetry apigee-telemetry/ \ --install \ --namespace apigee \ --atomic \ -f 1.14_OVERRIDES_FILE
helm upgrade datastore apigee-datastore/ \ --install \ --namespace apigee \ --atomic \ -f 1.14_OVERRIDES_FILE
- 建立
apigee-system
命名空間。kubectl create namespace apigee-system
- 將資源註解修補回
apigee-system
命名空間。kubectl annotate --overwrite clusterIssuer apigee-ca-issuer meta.helm.sh/release-namespace='apigee-system'
- 如果也變更了發行名稱,請使用
operator
發行名稱更新註解。kubectl annotate --overwrite clusterIssuer apigee-ca-issuer meta.helm.sh/release-name='operator'
- 將
apigee-operator
安裝回apigee-system
命名空間。helm upgrade operator apigee-operator/ \ --install \ --namespace apigee-system \ --atomic \ -f 1.14_OVERRIDES_FILE
- 重新安裝舊版 CRD,還原 CRD。
kubectl apply -k apigee-operator/etc/crds/default/ \ --server-side \ --force-conflicts \ --validate=false
- 從 APIGEE_NAMESPACE 命名空間清除
apigee-operator
版本,完成回溯程序。helm uninstall operator -n APIGEE_NAMESPACE
- 部分叢集範圍資源 (例如
clusterIssuer
) 會在解除安裝operator
時刪除。使用下列指令重新安裝:helm upgrade operator apigee-operator/ \ --install \ --namespace apigee-system \ --atomic \ -f 1.14_OVERRIDES_FILE