Redis集群部署(二)

經(jīng)歷了redis5.x之前(redis3.x或redis4.x)集群部署過(guò)程中ruby版本及各種依賴包蹂躪后,再感受一下redis5.x之后集群部署的便捷。
1、安裝redis集群節(jié)點(diǎn)
因本次為偽分布式部署,生產(chǎn)環(huán)境部署時(shí)建議至少3臺(tái)機(jī)器部署(其中每臺(tái)機(jī)器1主1從),依舊和redis4.0.14的方式一樣部署
| ip | port |
| 192.168.56.101 | 7000 |
| 192.168.56.101 | 7001 |
| 192.168.56.101 | 7002 |
| 192.168.56.101 | 7003 |
| 192.168.56.101 | 7004 |
| 192.168.56.101 | 7005 |
1.1 啟動(dòng)cluster各節(jié)點(diǎn)
創(chuàng)建數(shù)據(jù)目錄
mkdir -p /data/redis/cluster/{7000,7001,7002,7003,7004,7005}配置文件中主要修改如下內(nèi)容,其他的可按需調(diào)整,也可保持默認(rèn)值,各節(jié)點(diǎn)中注意修改對(duì)應(yīng)的端口號(hào)
bind?192.168.56.103port 7000daemonize yespidfile /data/redis/cluster/7000/redis_7000.pidlogfile "/data/redis/cluster/7000/redis_7000.log"appendonly yesappendfilename "appendonly.aof"appendfsync everyseccluster-enabled yescluster-config-file nodes-7000.conf #注意此文件自動(dòng)生成,且初始化時(shí)不要有和此重名的文件cluster-node-timeout 5000cluster-slave-validity-factor 10cluster-migration-barrier 1cluster-require-full-coverage yescluster-slave-no-failover no
啟動(dòng)各節(jié)點(diǎn),建議用redis用戶啟動(dòng)
useradd redischown -R redis:redis /data/redis/su - rediscd /data/redis/cluster/7001cp /data/redis/cluster/7000/redis.conf .sed -i "s#7000#7001#g" redis.confredis-server redis.conf
其他節(jié)點(diǎn)和7001類似啟動(dòng),啟動(dòng)后進(jìn)程中會(huì)標(biāo)記redis節(jié)點(diǎn)以cluster模式啟動(dòng)

2.? 初始化集群
redis5.x之后的版本初始化集群相當(dāng)便捷,命令及過(guò)程如下
--cluster create --cluster-replicas 1 192.168.56.103:7000 192.168.56.103:7001 192.168.56.103:7002 192.168.56.103:7003 192.168.56.103:7004 192.168.56.103:7005Performing hash slots allocation on 6 nodes...-> Slots 0 - 5460-> Slots 5461 - 10922-> Slots 10923 - 16383Adding replica 192.168.56.103:7004 to 192.168.56.103:7000Adding replica 192.168.56.103:7005 to 192.168.56.103:7001Adding replica 192.168.56.103:7003 to 192.168.56.103:7002Trying to optimize slaves allocation for anti-affinitySome slaves are in the same host as their masterM: 84ea774c08450db01bf5a518e3b9e55fd26d4d34 192.168.56.103:7000slots:[0-5460] (5461 slots) masterM: eb98e53273fd348deb5eabcc6bfffc20484749b1 192.168.56.103:7001slots:[5461-10922] (5462 slots) masterM: e059d418c11401189558d0f33bd5658297c10939 192.168.56.103:7002slots:[10923-16383] (5461 slots) masterS: 23eed1c27ad11c685e5a226e2f82d5c0b6384c79 192.168.56.103:7003replicates e059d418c11401189558d0f33bd5658297c10939S: cfa2549ea7782bb4f0ed6d45e9e3704a7d38d540 192.168.56.103:7004replicates 84ea774c08450db01bf5a518e3b9e55fd26d4d34S: c3e14c4139bfa88af03ea97679715f051a122806 192.168.56.103:7005replicates eb98e53273fd348deb5eabcc6bfffc20484749b1Can I set the above configuration? (type 'yes' to accept): yesNodes configuration updatedAssign a different config epoch to each nodeSending CLUSTER MEET messages to join the clusterWaiting for the cluster to join.Performing Cluster Check (using node 192.168.56.103:7000)M: 84ea774c08450db01bf5a518e3b9e55fd26d4d34 192.168.56.103:7000slots:[0-5460] (5461 slots) master1 additional replica(s)S: 23eed1c27ad11c685e5a226e2f82d5c0b6384c79 192.168.56.103:7003slots: (0 slots) slavereplicates e059d418c11401189558d0f33bd5658297c10939M: eb98e53273fd348deb5eabcc6bfffc20484749b1 192.168.56.103:7001slots:[5461-10922] (5462 slots) master1 additional replica(s)S: c3e14c4139bfa88af03ea97679715f051a122806 192.168.56.103:7005slots: (0 slots) slavereplicates eb98e53273fd348deb5eabcc6bfffc20484749b1S: cfa2549ea7782bb4f0ed6d45e9e3704a7d38d540 192.168.56.103:7004slots: (0 slots) slavereplicates 84ea774c08450db01bf5a518e3b9e55fd26d4d34M: e059d418c11401189558d0f33bd5658297c10939 192.168.56.103:7002slots:[10923-16383] (5461 slots) master1 additional replica(s)All nodes agree about slots configuration.Check for open slots...Check slots coverage...All 16384 slots covered.
看到如下結(jié)果,代表成功配置并分配slot完成

查看各節(jié)點(diǎn)信息也可以用如下命令
[redis@localhost 7005]$ redis-cli -h 192.168.56.103 -p 7000 cluster nodes23eed1c27ad11c685e5a226e2f82d5c0b6384c79 192.168.56.103:7003@17003 slave e059d418c11401189558d0f33bd5658297c10939 0 1646118171000 4 connectedeb98e53273fd348deb5eabcc6bfffc20484749b1 192.168.56.103:7001@17001 master - 0 1646118171604 2 connected 5461-10922c3e14c4139bfa88af03ea97679715f051a122806 192.168.56.103:7005@17005 slave eb98e53273fd348deb5eabcc6bfffc20484749b1 0 1646118171000 6 connectedcfa2549ea7782bb4f0ed6d45e9e3704a7d38d540 192.168.56.103:7004@17004 slave 84ea774c08450db01bf5a518e3b9e55fd26d4d34 0 1646118170000 5 connectede059d418c11401189558d0f33bd5658297c10939 192.168.56.103:7002@17002 master - 0 1646118169590 3 connected 10923-1638384ea774c08450db01bf5a518e3b9e55fd26d4d34?192.168.56.103:7000@17000?myself,master?-?0?1646118171000?1?connected?0-5460

1.??MySQL高可用之MHA集群部署
2.??mysql8.0新增用戶及加密規(guī)則修改的那些事
3.? 比hive快10倍的大數(shù)據(jù)查詢利器-- presto
4. ?監(jiān)控利器出鞘:Prometheus+Grafana監(jiān)控MySQL、Redis數(shù)據(jù)庫(kù)
5.? PostgreSQL主從復(fù)制--物理復(fù)制
6.??MySQL傳統(tǒng)點(diǎn)位復(fù)制在線轉(zhuǎn)為GTID模式復(fù)制



