本頁面概述 Memorystore for Redis Cluster 的跨區域複寫功能。
如需管理跨區域複製功能的說明,請參閱「跨區域複製資料」。
透過跨區域複製功能,您可以從主要叢集建立次要叢集,讓叢集在不同區域提供讀取服務。如果發生區域服務中斷,次要叢集也能提供災難復原的備援機制。
本頁面的重要概念包括:
- 主要叢集:單一區域中的讀寫叢集。
- 次要叢集:從主要叢集非同步複製資料的唯讀叢集。如要瞭解如何升級及分離次要叢集,請參閱「如何管理跨區域複製」中的 detach 和 switchover 工作。
- 複製器節點:主要叢集分片的節點,會複製到次要叢集的追隨者節點。分片中的任何主要或副本節點都可以擔任複寫器角色。
- 追隨者節點:次要叢集中的節點,會從主要叢集中的複製器節點複製資料。次要叢集中只有主要節點可以擔任追隨者角色。
- 分片數量和時段指派:主要和次要叢集的分片數量和時段指派相同。
優點
在 Memorystore for Redis Cluster 上使用跨區域複寫的優點包括:
- 災難復原:如果主要叢集的區域無法使用,您可以分離或切換至另一個區域的次要叢集,以處理讀取和寫入要求。次要叢集會處理讀取要求,而不發出切換或分離指令。
- 地理區域分散式資料:將資料分散到不同地理區域,可讓資料更靠近您,並縮短讀取延遲時間。
- 讀取流量的地理位置負載平衡:如果某個區域的連線速度緩慢或過載,您可以將流量轉送至其他區域。
功能行為
本節說明跨區域複寫功能的重要行為。
- 調度叢集容量:調度主要叢集的容量時,Memorystore for Redis Cluster 會自動調度次要叢集,以符合主要叢集。
- 調整副本數量:您可以根據工作負載需求,調整主要和次要叢集的副本數量。副本數量只會在本地更新,不會傳播至叢集跨區域複製集合中的其他叢集。
- 在可能發生服務中斷時切換:即使主要叢集因服務中斷而無法使用,您也可以執行切換作業來升級次要叢集。服務中斷問題解決後,無法使用的主要叢集會變成次要叢集。
- 建立線上次要叢集:將次要叢集新增至主要叢集時,主要叢集會保持連線狀態。在 Memorystore for Redis Cluster 建立次要叢集期間,主要叢集會處理要求並複製資料。
- 建立次要叢集:最多可有兩個次要叢集。這些叢集可以位於相同或不同的區域。您無法將現有叢集設為次要叢集,只能新增叢集做為次要叢集。
- 同步設定:Memorystore for Redis Cluster 會自動在主要和次要叢集之間同步大多數叢集設定。如要進一步瞭解這些設定,請參閱「叢集設定」。
- 價格:如果客戶使用跨區域複寫功能,Memorystore for Redis Cluster 會針對為跨區域複寫功能佈建的任何次要叢集收費。對於 Memorystore for Redis Cluster 在次要叢集上部署的每個節點和副本,系統會按照任何其他主要叢集的收費標準計費。此外,在不同區域的叢集之間轉移資料時,會產生網路費用。
- 執行維護更新:為確保與跨區域複製功能相容,建立次要叢集時,主要叢集可能會進行維護更新。如果主要叢集未執行必要軟體版本,就會進行這項更新。更新程序可能會在建立次要叢集時,造成一些額外延遲。詳情請參閱「關於維護作業」。
如何管理跨區域複製功能
跨區域複製作業包含下列工作:
- 建立次要叢集:建立次要叢集,持續從主要叢集複製資料。
- 查看次要叢集:查看次要叢集的相關資訊,包括主要叢集的名稱和複製群組中的其他次要叢集。
卸載次要叢集:卸載次要叢集是指將次要叢集與主要叢集分離的作業。卸載後,次要叢集會成為功能完整的獨立叢集,允許讀取和寫入作業。卸載作業完成後,次要叢集就不會再從原先相關聯的主要叢集複製資料。原始主要叢集和新卸載的叢集 (原先的次要叢集) 會成為獨立叢集,彼此沒有任何關係。
卸載次要叢集的原因如下:
- 區域遷移:將 Memorystore for Redis Cluster 資源從主要區域遷移至其他區域。
- 災難復原:如果主要區域的資源無法使用,請在次要區域快速啟用 Memorystore for Redis Cluster 資源。如果次要叢集未完全趕上主要叢集,可能會遺失部分資料。
切換叢集:執行切換作業,反轉主要和次要叢集的角色。您可以基於下列原因執行切換作業:
- 測試災難復原設定
- 在實際的災難復原情境中切換
- 遷移工作負載
完成切換後,Memorystore for Redis Cluster 會反轉複製方向。先前的次要叢集現在可以接受讀取和寫入作業,而先前的主要叢集則會切換為唯讀模式。
跨區域複製的架構範例
這張圖顯示 us-east1 區域中的主要叢集,以及 us-west1 和 asia-east1 區域中的次要叢集。複製方向一律是從主要叢集到次要叢集 (以這個範例來說,是從 us-east1 區域到其他區域)。
雖然這張圖表顯示所有區域的副本數量相同,但跨區域複製功能可讓您根據需求調整副本數量。

叢集設定
本節說明使用跨區域複寫功能時,主要和次要叢集需要、複製及覆寫的設定。此外,本節也會說明您在主要叢集上設定的項目,以及在本地設定的項目。
建立次要叢集時的必要參數
如要建立次要叢集,請為下列參數設定值:
- Google Cloud project:主要叢集所在的專案,也是您建立次要叢集的專案。
- 區域:您希望次要叢集所在的區域。
- Private Service Connect 設定:次要叢集的網路設定。
- 主要叢集:建立次要叢集時,您必須指定主要叢集。除了次要叢集,您可以使用任何叢集做為主要叢集。如果沒有主要叢集,請建立主要叢集。
次要叢集從主要叢集複製的設定
建立次要叢集時,這個叢集會從主要叢集複製下列設定:
覆寫預設設定
建立次要叢集時,您可以使用下列設定覆寫預設設定:
更新叢集設定
在 Memorystore for Redis Cluster 中更新叢集設定時,您只能在主要叢集上變更部分設定。Memorystore for Redis Cluster 會自動將這些變更同步至次要叢集。
您可以分別變更主要和次要叢集上的其他設定。Memorystore for Redis Cluster 只會在本地套用這些變更,不會與其他叢集同步。
設定主要叢集
您必須變更主要叢集上的下列設定。Memorystore for Redis Cluster 會自動將這些變更同步至次要叢集。
設定地區設定
您可以在本機設定下列項目:
切換主要和次要叢集的最佳做法
執行切換作業時,建議按照本節的操作說明進行。這樣一來,應用程式就能追蹤寫入作業,並將所有寫入內容傳送至適當叢集。
- 讓應用程式停止將資料寫入主要叢集。
如果要升級多個次要叢集,請決定要將哪個次要叢集升級為主要叢集。您可以根據下列因素決定要升級哪個次要叢集:
- 應用程式與叢集的距離。這可能會影響寫入延遲時間。
- 資料最接近最新狀態的次要叢集。
- 設定最接近主要叢集的次要叢集。
等待切換作業完成。
更新應用程式,將所有寫入作業傳送至您在步驟 2 中選取的新升級叢集。