DCS Redis緩存類型都支持主備實例,本章節主要介紹Redis緩存類型的主備實例,有四個版本選擇,Redis3.0、Redis4.0、Redis5.0和Redis6.0。
主備實例特點
DCS的主備實例在單機實例基礎上,增強服務高可用以及數據高可靠性。
主備實例具有以下特性:
1.持久化,確保數據高可靠
實例默認包含一個主節點和一個備節點,都默認開啟數據持久化。
Redis主備實例的備節點對用戶不可見,不支持客戶端直接讀寫數據。
2.數據同步
主備節點通過增量數據同步的方式保持緩存數據一致。
說明當網絡發生異常或有節點故障時,主備實例會在故障恢復后進行一次全量同步,保持數據一致性。
3.故障后自動切換主節點,服務高可用
當主節點故障后,連接會有秒級中斷、不可用,備節點在30秒內自動完成主備切換,切換完成后恢復正常訪問,無需用戶操作,業務平穩運行。
4.容災策略
跨AZ部署(可用區):DCS支持將主備實例的主備副本部署在不同的AZ內,節點間電力與網絡均物理隔離。您可以將應用程序也進行跨AZ部署,從而達到數據與應用全部高可用。
Redis 3.0實例架構設計
DCS的Redis主備實例架構,如下圖所示。
主備實例示意圖


示意圖說明:
- VPC
虛擬私有云。實例的內部所有服務器節點,都運行在相同VPC中。
說明VPC內訪問,客戶端需要與主備實例處于相同VPC,并且配置安全組訪問規則。
- 客戶應用
運行在ECS上的客戶應用程序,即Redis的客戶端。
Redis實例兼容開源協議,可直接使用開源客戶端進行連接,關于客戶端連接示例,請參考連接實例。
- DCS緩存實例
DCS主備實例包含了Master和Slave兩個節點。默認開啟數據持久化功能,同時保持節點間數據同步。
DCS實時探測實例可用性,當主節點故障后,備節點升級為主節點,恢復業務。
Redis 3.0的訪問端口默認為6379,不支持定義端口。
Redis 4.0/5.0/6.0主備實例架構設計
Redis 4.0/5.0主備實例的架構設計,如下圖所示。
Redis 4.0/5.0/6.0主備實例示意圖


圖說明如下:
1.Redis 4.0/5.0/6.0主備實例使用哨兵模式(Sentinel)進行管理,Sentinel會一直監控主備節點是否正常運行,當主節點出現故障時,進行主備倒換。
Sentinel對用戶不可見,僅在服務內部中使用。
2.備節點和主節點規格一致,用戶創建主備實例時,默認包含一個主節點和一個備節點。
Redis 4.0/5.0/6.0實例支持定義端口,如果不自定義端口,則使用默認端口6379。圖中以默認端口6379為例,如果已自定義端口,請根據實際情況替換。