DCS Redis的集(ji)(ji)(ji)(ji)群(qun)實例有兩種(zhong)(zhong)版本(ben)可(ke)(ke)供(gong)選擇(ze),一種(zhong)(zhong)是基于LVS+Proxy的高可(ke)(ke)用集(ji)(ji)(ji)(ji)群(qun)版本(ben)(以(yi)下簡(jian)稱為Proxy版Redis集(ji)(ji)(ji)(ji)群(qun)),另一種(zhong)(zhong)是原生Cluster的集(ji)(ji)(ji)(ji)群(qun)版本(ben)。Proxy版集(ji)(ji)(ji)(ji)群(qun)兼容開(kai)(kai)源(yuan)Redis 3.0,Cluster版本(ben)兼容開(kai)(kai)源(yuan)Redis的4.0和(he)5.0。
Redis3.0 Proxy集群實例
DCS Redis3.0 Proxy集群實例基于開源Redis 3.0版本構建,提供64G~1024G多種大容量規格版本,用于滿足百萬級以上并發與大容量數據緩存的(de)需要(yao)。Redis集(ji)群的(de)數據分布式(shi)存儲(chu)和(he)讀取,由DCS內部(bu)實現,用戶(hu)無需投入開發與(yu)運維(wei)成本。
Redis集(ji)群實例由“負載均(jun)衡器(qi)(qi)”、“Proxy服務器(qi)(qi)”、“集(ji)群配置管理器(qi)(qi)”、“集(ji)群分片”共4個部分組成(cheng)。
Redis3.0集(ji)群實例規格(ge)和Proxy數、分片(pian)數的對(dui)應關(guan)系(xi)
| 集群版規格 | Proxy節點數 | 分片數(Shard) |
|---|---|---|
| 64G | 3 | 8 |
| 128G | 6 | 16 |
| 256G | 8 | 32 |
| 512G | 16 | 64 |
| 1024G | 32 | 128 |
Redis Proxy集群實例示意圖
示意圖說明:
- VPC
虛擬私有云。集群(qun)實例的內部(bu)所有服(fu)務(wu)器(qi)節點,都(dou)運(yun)行在相(xiang)同VPC中。
說明VPC內訪問,客戶端需要與Proxy集群實例處于相同VPC,并且配置安全組訪問規則。
- 客戶應用程序
客戶應用程序,即Redis集群客戶端。
Redis可直接使用開源客戶端進行連接,關于客戶端連接示例,請參考連接實例。
- LB-M/LB-S
負載均(jun)衡服(fu)務器(qi)(qi),采用主備高(gao)可(ke)用方式。Redis集群(qun)實例(li)提供訪(fang)問的IP地址,即為負載均(jun)衡服(fu)務器(qi)(qi)地址。
- Proxy
Redis集群(qun)代理服務器(qi)。用于實(shi)現Redis集群(qun)內(nei)部的(de)高(gao)可用,以(yi)及(ji)承(cheng)接(jie)客戶(hu)端的(de)高(gao)并發請求。
支持使(shi)用Proxy節點(dian)的IP連接(jie)集群實例。
- Redis shard
Redis集群的分片。
每個(ge)分(fen)片(pian)也是一個(ge)Redis主(zhu)備實例,分(fen)片(pian)上的主(zhu)實例故障時,系(xi)統會(hui)自動進(jin)行(xing)主(zhu)備切(qie)換,集群正常提供服務(wu)。
某個分片的主備實例都故(gu)障(zhang),集群可正常提供服(fu)務,但(dan)該分片上的數據不能(neng)讀取。
- Cluster manager
集群配置管理(li)器,用于存(cun)儲集群的配置信息與分(fen)區策略。用戶不能修改配置管理(li)器的信息。
Redis 4.0/5.0 Proxy集群實例
Redis 4.0/5.0 Proxy集群實(shi)例,當前僅部(bu)分(fen)區域支持(chi),請(qing)以控制臺實(shi)際上線區域為(wei)準。
DCS Redis 4.0和5.0 Proxy集群實例基于開源Redis的(de)4.0和5.0版本(ben)構建,兼容(rong)開源codis,提供(gong)4G~1024G多種(zhong)大容(rong)量(liang)規格版本(ben),支持(chi)x86和Arm兩種(zhong)CPU架(jia)構。
Proxy集群每種實例(li)規格(ge)對應的分片(pian)數(shu),如下表所示,在創建實例(li)時,支持(chi)自(zi)定(ding)義(yi)分片(pian)大小。當前暫時不支持(chi)自(zi)定(ding)義(yi)分片(pian)數(shu)和副本數(shu),默認每個分片(pian)為雙副本架構。
每個分(fen)片內存=實(shi)例規(gui)格/分(fen)片數(shu),例如,集群(qun)規(gui)格為(wei)48GB的實(shi)例,分(fen)片數(shu)為(wei)6,則每個集群(qun)分(fen)片的大小(xiao)為(wei)48G/6=8G。
表:Redis 4.0/5.0 Proxy集群實例規格和分片數的對應關系
| 集群版規格 | Proxy節點數 | 分片數 | 每個分片內存(GB) |
|---|---|---|---|
| 4GB | 3 | 3 | 1.33 |
| 8GB | 3 | 3 | 2.67 |
| 16GB | 3 | 3 | 5.33 |
| 24GB | 3 | 3 | 8 |
| 32GB | 3 | 3 | 10.67 |
| 48GB | 6 | 6 | 8 |
| 64GB | 8 | 8 | 8 |
| 96GB | 12 | 12 | 8 |
| 128GB | 16 | 16 | 8 |
| 192GB | 24 | 24 | 8 |
| 256GB | 32 | 32 | 8 |
| 384GB | 48 | 48 | 8 |
| 512GB | 64 | 64 | 8 |
| 768GB | 96 | 96 | 8 |
| 1024GB | 128 | 128 | 8 |
圖 Redis 4.0/5.0 Proxy集群實例示(shi)意圖
實例示意圖說明:
- VPC
虛擬私(si)有云(yun)。集群實(shi)例的內部所有服務器節點,都運行在相同VPC中(zhong)。
客戶端(duan)需要與集群實例(li)處于相同VPC,并且實例(li)白名單允(yun)許客戶端(duan)的IP地址(zhi)訪問。
- 客戶應用程序
客戶(hu)應用程序(xu),即Redis集群客戶(hu)端。
Redis可直接使用開源客戶端進行連接,關于多語言客戶端連接示例(li)(li),請參考(kao)連接實(shi)例(li)(li)。
- 終端節點服務
終端(duan)節(jie)(jie)點服(fu)務,主要是(shi)將(jiang)Redis緩存實(shi)例配置(zhi)為(wei)VPC終端(duan)節(jie)(jie)點支持的(de)服(fu)務,用(yong)戶可以直(zhi)接通過終端(duan)節(jie)(jie)點服(fu)務的(de)地址訪問。
Redis Proxy集群實例(li)提供的(de)IP地址(zhi)和(he)域名(ming),即(ji)為(wei)終端節(jie)點(dian)服務的(de)地址(zhi)。
- ELB
彈(dan)性(xing)負載均衡(heng)服(fu)務器,采用(yong)集群(qun)高可用(yong)方(fang)式(shi),支持(chi)多可用(yong)區部署(shu)。
- Proxy
Redis集群代理(li)服務(wu)器(qi)。用于實現Redis集群內部的高可(ke)用,以(yi)及承接客(ke)戶(hu)端的高并發請(qing)求。
暫不支持(chi)使用(yong)Proxy節點的IP連接集群(qun)實例。
- Cluster集群
Redis集群的分(fen)片。
每個(ge)分(fen)片也是一個(ge)雙(shuang)副(fu)本的(de)Redis主備實例(li),分(fen)片上(shang)的(de)主實例(li)故障(zhang)時,系統會自動進行主備切換,集群正常提供(gong)服(fu)務(wu)。
某個分片(pian)的主備實例(li)都故障,集群可正(zheng)常提供服務,但該分片(pian)上(shang)的數據不能讀取。