在 Kubernetes 中升級 AlloyDB Omni 的步驟,取決於您執行的 AlloyDB Omni 版本,以及要升級的版本。
找出目前的版本號碼
Kubernetes
如要查看資料庫叢集使用的 AlloyDB Omni 版本,請執行下列指令:
kubectl get dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -n NAMESPACE -o jsonpath='{.status.primary.currentDatabaseVersion}'
更改下列內容:
DB_CLUSTER_NAME
:資料庫叢集名稱。也就是您在建立資料庫叢集時宣告的名稱。NAMESPACE
:資料庫叢集的 Kubernetes 命名空間。
如果您執行 AlloyDB Omni 運算子 1.0.0 版或更新版本,這個指令會列印資料庫叢集使用的 AlloyDB Omni 版本。
如要查看 Kubernetes 叢集上安裝的 AlloyDB Omni Operator 版本,請執行下列指令:
kubectl get dbclusters.alloydbomni.dbadmin.goog DB_CLUSTER_NAME -n NAMESPACE -o jsonpath='{.status.primary.currentControlPlaneAgentsVersion}'
如果您執行 AlloyDB Omni 運算子 1.0.0 版或更新版本,這個指令會列印 Kubernetes 叢集上執行的 AlloyDB Omni 運算子版本號碼。
如果您執行的 AlloyDB Omni Operator 版本早於 1.0.0,請按照「從 1.0.0 之前的 AlloyDB Omni Operator 升級」一文中的操作說明進行升級。
否則,請繼續參閱「檢查目標版本號碼」一節。
查看目標版本號碼
Kubernetes
如果您執行的是 AlloyDB Omni Operator 1.0.0 以上版本,接下來的步驟取決於要升級的 AlloyDB Omni 版本。因此,您必須瞭解 AlloyDB Omni 版本號碼。
AlloyDB Omni 版本號碼包含下列元件:
- PostgreSQL 相容性的主要版本號碼
- PostgreSQL 相容性的次要版本號碼
- 這個 AlloyDB Omni 版本的修補程式版本號碼
舉例來說,AlloyDB Omni 15.5.5 版是支援 PostgreSQL 15.5 版的 AlloyDB Omni 修補程式版本 5。
如要升級至支援較新 PostgreSQL 版本的 AlloyDB Omni 版本,您必須一併升級資料庫叢集和 AlloyDB Omni Operator。支援特定 PostgreSQL 次要版本的每組 AlloyDB Omni 版本,都有自己的 AlloyDB Omni Operator 版本號碼,您可以在 AlloyDB Omni 版本的版本資訊中找到。
如要升級至較新的 AlloyDB Omni 修補程式版本,可以只升級資料庫叢集,不必升級 AlloyDB Omni 運算子本身。
如果沒有,請繼續前往「升級 AlloyDB Omni 運算子」一節。
升級 AlloyDB Omni 運算子
Kubernetes
如要升級 AlloyDB Omni Operator,請按照下列步驟操作:
定義環境變數:
export GCS_BUCKET=alloydb-omni-operator
export OPERATOR_VERSION=OPERATOR_VERSION
export HELM_PATH=$OPERATOR_VERSION/alloydbomni-operator-$OPERATOR_VERSION.tgz
將
OPERATOR_VERSION
替換為要升級的 AlloyDB Omni Operator 版本,例如1.1.0
。下載最新版 AlloyDB Omni 運算子:
gcloud storage cp -r gs://$GCS_BUCKET/$HELM_PATH ./
tar -xvzf alloydbomni-operator-${OPERATOR_VERSION}.tgz
套用最新的 AlloyDB Omni 運算子自訂資源定義:
kubectl apply -f alloydbomni-operator/crds
升級 AlloyDB Omni 運算子 Helm 圖表:
helm upgrade alloydbomni-operator alloydbomni-operator-${OPERATOR_VERSION}.tgz \ --namespace alloydb-omni-system \ --atomic \ --timeout 5m
完成 AlloyDB Omni Operator 升級後,請按照「執行就地升級」中的操作說明建立新的資料庫叢集。
如果 AlloyDB Omni 叢集是使用 AlloyDB Omni Operator 1.0.0 建立,請先在資訊清單中新增 controlPlaneAgentsVersion
欄位並設為 1.1.0
,再將叢集升級至 15.5.5 版。否則會顯示下列錯誤:
admission webhook "vdbcluster.alloydbomni.dbadmin.goog" denied the request: unsupported database version 15.5.5 and/or control plane agents version 1.0.0
含有 controlPlaneAgentsVersion
欄位的資訊清單範例如下:
apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: DB_CLUSTER_NAME spec: databaseVersion: "15.5.5" controlPlaneAgentsVersion: "1.1.0" ...