AlloyDB for PostgreSQL 提供區域和可用區執行個體類型。為確保高可用性 (HA),每個區域 AlloyDB 主要執行個體都有一個啟用中節點和一個待命節點,分別位於兩個不同的可用區。如果使用中的節點因任何原因而無法使用,AlloyDB 會自動將待命節點升級為新的使用中節點。
您可以插入錯誤,突然強制主要執行個體中的活動節點離線,藉此測試這項自動高可用性功能。AlloyDB 接著會啟動緊急高可用性程序,檢查主要執行個體的健康狀態,然後將待命節點重新指派為使用中節點。
故障插入也會啟動長時間執行的作業,在短暫間隔後,將先前的有效節點重新上線。該節點會成為主要執行個體的新備用節點。
如要快速切換主要執行個體節點的使用中和待命角色,請參閱「手動容錯移轉主要執行個體」。
事前準備
- 您使用的 Google Cloud 專案必須啟用 AlloyDB 存取權。
- 您必須在使用的 Google Cloud 專案中具備下列其中一個 IAM 角色:
roles/alloydb.admin(AlloyDB 管理員預先定義的 IAM 角色)roles/owner(擁有者基本 IAM 角色)roles/editor(編輯者基本 IAM 角色)
如果您不具備上述任一角色,請向組織管理員要求存取權。
透過錯誤植入模擬服務中斷
如要測試主要執行個體的高可用性彈性,請使用 gcloud alloydb instances
inject-fault 指令,突然關閉其運作中的節點。長時間執行的作業完成後,AlloyDB 會恢復節點。
gcloud alloydb instances inject-fault INSTANCE_ID \
--fault-type=stop-vm \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
INSTANCE_ID:執行個體的 ID。REGION_ID:執行個體所在的區域。CLUSTER_ID:執行個體所在的叢集 ID。PROJECT_ID:叢集所在的專案 ID。