手動容錯移轉至主要或次要執行個體

如要測試應用程式韌性、重新平衡可用區,或從節點層級效能問題復原,可以手動將 AlloyDB for PostgreSQL 主要或次要執行個體容錯移轉至同一區域內的待命節點。

觸發手動容錯移轉的常見用途包括:

  • 可用區重新平衡:自動容錯移轉將使用中節點移至待命可用區後,將節點切換回偏好的可用區。
  • 疑難排解:如果使用中節點發生效能問題,但未觸發自動容錯移轉,則容錯移轉至待命節點。
  • 控管維護作業:在維護期間前手動啟動容錯移轉,控管連線短暫中斷的時間。

主要和次要執行個體的高可用性

AlloyDB for PostgreSQL 支援主要和次要執行個體的高可用性。

主要執行個體的高可用性

為確保高可用性 (HA),每個 AlloyDB 主要執行個體都有一個運作中節點和一個待命節點,分別位於不同可用區。如果使用中的節點無法使用,AlloyDB 會自動將主要執行個體容錯移轉至待命節點,使其成為新的使用中節點。

即使主要執行個體運作正常,您還是可以隨時手動將主要執行個體容錯移轉至待命節點。當您啟動手動容錯移轉時,AlloyDB 會執行下列操作:

  1. 將主要節點設為離線。

  2. 將待命節點轉換為新的有效節點。

  3. 重新啟用先前的有效節點,做為新的待命節點。

手動容錯移轉會交換主要執行個體節點的使用中和待命角色。您隨時可以手動觸發容錯移轉,讓這項交換作業發生。

舉例來說,假設您有一個主要執行個體,其啟用中和待命節點分別位於 us-central1-a 和 us-central1-b 可用區。us-central1-a 服務中斷會觸發自動容錯移轉,導致 us-central1-b 可用區託管使用中節點。如果您想將使用中的節點保留在 us-central1-a 可用區,可以啟動手動容錯移轉,讓 AlloyDB 將主要執行個體節點切換回中斷前的所在位置。

執行維護作業時,高可用性主要執行個體和基本執行個體通常只會停機不到一秒。手動容錯移轉是刻意且受控的程序,因此不適合用於模擬非預期的硬體或網路故障。您可以改用錯誤插入功能,測試主要執行個體的高可用性。

次要執行個體的高可用性

AlloyDB 為次要執行個體提供高可用性,支援災難復原,並在次要執行個體無法使用時縮短停機時間。

根據預設,系統會在次要執行個體上設定高可用性。

AlloyDB 次要執行個體包含下列節點:

  • 一個運作中的次要節點,負責回應要求
  • 待命次要節點

主動和待命節點位於同一區域的兩個不同可用區。如果 AlloyDB 偵測到使用中節點無法使用,使用中節點會容錯移轉至待命節點,做為新的使用中節點。資料會重新轉送至新的有效節點。這項程序稱為容錯移轉。

事前準備

  • 您使用的 Google Cloud 專案必須啟用 AlloyDB 存取權。
  • 您必須在使用的 Google Cloud 專案中具備下列其中一個 IAM 角色:
    • roles/alloydb.admin (AlloyDB 管理員預先定義的 IAM 角色)
    • roles/owner (擁有者基本 IAM 角色)
    • roles/editor (編輯者基本 IAM 角色)

    如果您不具備上述任一角色,請向組織管理員要求存取權。

對主要執行個體執行手動容錯移轉

控制台

  1. 前往「Clusters」(叢集) 頁面。

前往叢集

  1. 在「Resource Name」(資源名稱) 欄中,按一下叢集名稱。

  2. 在「Instances in your cluster」(叢集中的執行個體) 區段中,開啟主要執行個體的 「Instance actions menu」(執行個體動作選單)。

  3. 按一下「容錯移轉」。

  4. 在隨即顯示的對話方塊中,輸入執行個體 ID。

  5. 按一下「Trigger failover」(觸發容錯移轉)。

gcloud

執行 gcloud alloydb instances failover 指令:

gcloud alloydb instances failover INSTANCE_ID \
    --region=REGION_ID \
    --cluster=CLUSTER_ID \
    --project=PROJECT_ID

更改下列內容:

  • INSTANCE_ID:執行個體的 ID。
  • REGION_ID:執行個體所在的區域。
  • CLUSTER_ID:執行個體所在的叢集 ID。
  • PROJECT_ID:叢集所在專案的 ID。

如要確認容錯移轉是否成功,請按照下列步驟操作:

  1. 執行容錯移轉前,請記下主要執行個體節點的可用區。

  2. 執行容錯移轉後,請記下兩個節點的新可用區。

  3. 確認使用中和待命節點的可用區已互換。

對次要執行個體執行手動容錯移轉

手動容錯移轉次要執行個體的步驟,與手動容錯移轉主要執行個體的步驟類似。

如要手動容錯移轉次要叢集,請按照下列步驟操作:

控制台

  1. 前往 Google Cloud 控制台的「Clusters」(叢集) 頁面。

    前往叢集

  2. 在「Resource Name」(資源名稱) 欄中,按一下次要叢集的名稱。

  3. 在「Overview」(總覽) 頁面中,前往「Instances in your cluster」(叢集中的執行個體) 區段,選擇次要執行個體,然後按一下「Failover」(容錯移轉)。

  4. 在隨即顯示的對話方塊中,輸入執行個體 ID,然後按一下「觸發容錯移轉」。

gcloud

如要使用 gcloud CLI,您可以安裝並初始化 Google Cloud CLI,也可以使用 Cloud Shell。

使用 gcloud alloydb instances failover 指令,強制次要執行個體容錯移轉至待命執行個體。

 gcloud alloydb instances failover SECONDARY_INSTANCE_ID \
 --cluster=SECONDARY_CLUSTER_ID \
 --region=REGION_ID \
 --project=PROJECT_ID

更改下列內容:

  • SECONDARY_INSTANCE_ID:要容錯移轉的次要執行個體 ID。
  • SECONDARY_CLUSTER_ID:與次要執行個體相關聯的次要叢集 ID。
  • REGION_ID:次要執行個體所在區域的 ID,例如 us-central1。
  • PROJECT_ID:次要叢集的專案 ID。

後續步驟