透過可用區和區域複製功能保護資料

選取說明文件版本:

本頁面說明 AlloyDB Omni Premium Availability 參考架構,包括使用區域內可用區複製功能保護資料 (高可用性),以及使用跨大型地理界線的非同步串流功能,新增災難復原 (DR) 保護機制。

這項參考架構最適合用於下列用途:

  • 除了區域防護外,您還需要為任務關鍵型應用程式提供區域防護。

這個可用性參考架構會在區域內納入唯讀副本,以確保高可用性,並在區域間納入唯讀副本,以確保災難復原能力。這個多區域部署作業可防範重大中斷事件,包括大範圍停電和大規模天災。

可用性參考架構注意事項

評估這項可用性參考架構時,請考量下列因素:

  • 區域內和跨區域的網路延遲和頻寬
  • 資料庫和應用程式伺服器的地理位置
  • 將唯讀工作負載卸載至副本的策略
  • 在遠端 DR 區域部署高可用性

您可能需要唯讀負載平衡,特別是使用區域應用程式伺服器時,這樣要求就會轉送至最近的資料庫,以獲得最快的回應。詳情請參閱「將要求轉送至多區域傳統型應用程式負載平衡器」。

跨區域複製作業可能需要額外監控,確保複製延遲不會因交易負載或網路容量而開始增加。

為確保 DR 成功,請務必執行徹底的 DR 測試。如果應用程式伺服器與資料庫之間有任何高延遲網路連線,請務必測試應用程式功能和輸送量。

區域內高可用性和跨區域災難復原架構

圖 1 顯示建議的高可用性和 DR 設定,其中有三個可用區和兩個區域,各有一個讀取備用資料庫。

AlloyDB Omni,提供備份和跨區域高可用性選項

圖 1. AlloyDB Omni,提供備份和跨區域高可用性選項。

如圖 1 所示,同步串流複製到本機 (同一區域內) 副本可提供高可用性,而非同步串流複製到地理上不同的遠端副本,則可提供區域性災難復原保護。在整個設定中,只有主要執行個體可以執行讀寫作業,其他副本則可處理讀取查詢。

將主要執行個體到區域內備用資源的複製作業設定為同步模式,並將主要執行個體到跨區域備用資源的複製作業設定為非同步模式,避免延遲影響主要執行個體的寫入效能。如果發生區域性故障,這項設定可能會導致 RPO 不為零。不過,如果發生故障,這項設定可加快 RTO。這是因為主要資料庫不需要等待遠端待命資料庫確認,即可提交交易。

您可以讓額外的跨區域備份作業從讀取副本資料庫進行備份,藉此為從主要資料庫進行的備份作業增加備援。

唯讀備用資源備份

使用 Kubernetes 部署作業時,系統會自動在替代區域中設定次要部署作業,並提供額外備份。使用非 Kubernetes 部署時,您可以選擇部署備份,以滿足業務需求。請考量下列事項:

  • 如果遠端備份可能受到區域故障影響,您需要在替代區域啟動額外備份。
  • 如要備援備份,您需要備份區域唯讀副本。

唯讀備用資源位置,支援多可用區可用性

在非 Kubernetes 部署作業中,您可以選擇特定唯讀備用資源,在主要資源故障時擔任主要資源的角色。AlloyDB Omni Kubernetes 運算子會自動處理區域中的節點放置位置,以及 Pod 應部署至哪些節點。影響放置位置的某些設定選項 (例如 Pod 親和性和容許度),可在用於透過 AlloyDB Omni 運算子部署的資料庫設定中找到。

從僅限高可用性架構遷移至高可用性和災難復原架構

如果不是 Kubernetes 部署作業,您需要在新區域中建立新的待命狀態,並將此設定新增至 Patroni 叢集設定。如果是 Kubernetes 部署作業,您需要建立新的 Kubernetes 地區部署作業 (稱為次要資料庫叢集),並啟用跨資料中心複製功能。

導入作業

選擇可用性參考架構時,請注意下列優點、限制和選項。

優點

  • 防範可用區和執行個體故障
  • 防範區域性故障
  • 資料庫發生區域性故障時,RTO 會縮短

限制

  • 您可以透過同步複製功能縮短區域復原的 RPO,但這種做法會導致交易效能的延遲時間增加。針對災難復原和遠端區域複製,建議您只使用非同步複製。
  • 以同步模式設定 PostgreSQL WAL 串流,可在正常運作或一般容錯移轉期間,確保資料不會遺失 (RPO=0)。不過,這種做法無法避免特定雙重故障情況下的資料遺失,例如所有待命執行個體都遺失或無法從主要執行個體存取,且主要執行個體隨即重新啟動。

資料保護選項

後續步驟