管理容錯移轉
如果 Bigtable 叢集沒有回應,複製功能可將傳入流量容錯移轉至同一執行個體中的其他叢集。容錯移轉可以手動或自動執行,具體取決於應用程式使用的應用程式設定檔,以及應用程式設定檔的設定方式。
本頁面說明在叢集之間執行容錯移轉的步驟。
閱讀本頁之前,請先熟悉 Bigtable 複製功能總覽。您也應熟悉 Bigtable 的轉送選項。
執行手動容錯移轉
如果應用程式設定檔將所有要求轉送至單一叢集,而該叢集沒有回應,請使用手動容錯移轉。如需判斷叢集是否無回應的條件範例,請參閱「手動容錯移轉」。決定容錯移轉前,請先檢查執行個體的複製延遲時間。詳情請參閱「複製圖表」。
如要執行手動容錯移轉,請更新應用程式設定檔,將要求轉送至有回應的叢集,而非無回應的叢集:
控制台
在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。
在「Application profiles」(應用程式設定檔) 欄中,按一下將流量轉送至無回應叢集的應用程式設定檔。
如果找不到要編輯的應用程式設定檔,您可以按一下執行個體的名稱,再按一下左側窗格的 [Application profiles] (應用程式設定檔),即可查看完整清單。
在「Cluster routing」(叢集轉送) 下方,選取執行個體中的回應叢集。
按一下 [Save] (儲存)。隨即會顯示確認對話方塊。
詳閱確認對話方塊中的警告,然後按照對話方塊中的指示並按一下 [Continue] (繼續)。
gcloud
如果不知道執行個體 ID,請使用
bigtable instances list指令查看專案的執行個體清單:gcloud bigtable instances list如果您不知道執行個體的叢集 ID,請使用
bigtable clusters list指令查看執行個體中的叢集清單:gcloud bigtable clusters list --instances=INSTANCE_ID將
INSTANCE_ID替換為執行個體的永久 ID。如果您不知道應用程式設定檔的 ID,請使用
bigtable app-profiles list指令,查看執行個體的應用程式設定檔清單:gcloud bigtable app-profiles list --instance=INSTANCE_ID將
INSTANCE_ID替換為執行個體的永久 ID。使用
bigtable app-profiles update指令變更應用程式設定檔使用的叢集:gcloud bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ --route-to=CLUSTER_ID提供下列資訊:
APP_PROFILE_ID:應用程式設定檔的永久 ID。INSTANCE_ID:執行個體的永久 IDCLUSTER_ID:所有要求應該轉送到這個叢集的叢集 ID。這個旗標會啟用單一叢集轉送。
如果收到錯誤訊息,請詳閱錯誤訊息中的任何警告。如要覆寫錯誤,請再次執行指令,並加上
--force旗標。
當您更新應用程式設定檔後,使用這個應用程式設定檔的任何應用程式會立即開始將所有要求導向至您選取的健康叢集。不健康的叢集會繼續使用 CPU 處理複製功能及其他維護工作。
不健康的叢集復原之後,您可以遵循相同的步驟更新應用程式設定檔,以便將所有要求轉送至已復原的叢集。
執行自動容錯移轉
Bigtable 的自動容錯移轉功能完全自動化,如果應用程式設定檔採用多叢集轉送功能,且最靠近應用程式伺服器的叢集狀態不佳,您就不必採取任何行動。即使叢集只是短暫處於健康狀態不佳,Bigtable 也會自動容錯移轉,並使用最近的健康叢集處理要求,直到健康狀態不佳的叢集復原為止。
自動容錯移轉的速度取決於要求期限。期限越短,容錯移轉的速度就越快,但期限仍須預留足夠的時間,讓要求在備份叢集上完成。詳情請參閱「自動容錯移轉」。
如要查看特定時間範圍內自動重新轉送的要求數量,請在Google Cloud 控制台中查看「Automatic Failovers」(自動容錯移轉) 圖表:開啟執行個體清單,按一下執行個體名稱,然後點選「Monitoring」(監控)。
後續步驟
瞭解如何監控 Bigtable 執行個體。