dibo

Redis入门到高可用-9.Redis集群伸缩

2019-09-14  本文已影响0人  笨鸡

1.概要

2.伸缩原理

Redis伸缩原理.png

3.扩容集群

Redis扩容集群1.png

4.集群扩容-操作

[root@master redis-cluster-config]# sed 's/7000/7006/g' redis-7000.conf > redis-7006.conf
[root@master redis-cluster-config]# sed 's/7000/7007/g' redis-7000.conf > redis-7007.conf
[root@master redis-cluster-config]# ll
总用量 36
-rw-r--r--. 1 root root   0 9月   8 22:16 7000.log
-rw-r--r--. 1 root root   0 9月   8 22:16 7001.log
-rw-r--r--. 1 root root   0 9月   8 22:16 7002.log
-rw-r--r--. 1 root root   0 9月   8 22:16 7003.log
-rw-r--r--. 1 root root   0 9月   8 22:16 7004.log
-rw-r--r--. 1 root root   0 9月   8 22:16 7005.log
-rw-r--r--. 1 root root 153 9月   8 22:34 addslots.sh
-rw-r--r--. 1 root root 225 9月   8 22:14 redis-7000.conf
-rw-r--r--. 1 root root 225 9月   8 22:15 redis-7001.conf
-rw-r--r--. 1 root root 225 9月   8 22:15 redis-7002.conf
-rw-r--r--. 1 root root 225 9月   8 22:15 redis-7003.conf
-rw-r--r--. 1 root root 225 9月   8 22:15 redis-7004.conf
-rw-r--r--. 1 root root 225 9月   8 22:15 redis-7005.conf
-rw-r--r--. 1 root root 225 9月   9 21:31 redis-7006.conf
-rw-r--r--. 1 root root 225 9月   9 21:31 redis-7007.conf
[root@master redis-cluster-config]# cat redis-7006.conf 
port 7006
daemonize yes
pidfile /var/run/redis-7006.pid
dbfilename "dump-7006.rdb"
logfile "7006.log"
dir "/opt/soft/redis/redis/data/"
cluster-enabled yes
cluster-config-file nodes-7006.conf
cluster-require-full-coverage no
[root@master redis-cluster-config]# redis-server redis-7006.conf 
[root@master redis-cluster-config]# redis-server redis-7007.conf 
[root@master redis-cluster-config]# redis-cli -p 7000 cluster meet 127.0.0.1 7006
OK
[root@master redis-cluster-config]# redis-cli -p 7000 cluster meet 127.0.0.1 7007
OK
[root@master redis-cluster-config]# redis-cli -p 7007 cluster replicate 755f7e38f4cb85d1937aac01993090e4dfa10cb7
OK
[root@master redis-cluster-config]# redis-cli -p 7000 cluster nodes
755f7e38f4cb85d1937aac01993090e4dfa10cb7 127.0.0.1:7006@17006 master - 0 1568036081012 6 connected
0fee682eb0247d98bcffe694fe745af194f708dd 127.0.0.1:7005@17005 slave 80602baaf52498f27be91a8b9169dc78de6e6e07 0 1568036079000 5 connected
df740a3f64985bb4645c1f9fff276d29ad1bcb25 127.0.0.1:7000@17000 myself,master - 0 1568036080000 0 connected 0-5461
2e6827954a8dd1b7a1455e9aec057cb89fd56fa4 127.0.0.1:7003@17003 slave df740a3f64985bb4645c1f9fff276d29ad1bcb25 0 1568036081000 3 connected
80602baaf52498f27be91a8b9169dc78de6e6e07 127.0.0.1:7002@17002 master - 0 1568036079005 2 connected 10923-16383
7a233b8a7cfd6369302d4d1f073b342c8088a388 127.0.0.1:7007@17007 slave 755f7e38f4cb85d1937aac01993090e4dfa10cb7 0 1568036083021 7 connected
c09e9379e37ee282219a07399bfb0dcbb933159a 127.0.0.1:7001@17001 master - 0 1568036082017 1 connected 5462-10922
97969f534d03b6c7c346df035e35b676c79e2d51 127.0.0.1:7004@17004 slave c09e9379e37ee282219a07399bfb0dcbb933159a 0 1568036082000 4 connected
[root@master ~]# redis-cli --cluster reshard 127.0.0.1:7000 --cluster-from df740a3f64985bb4645c1f9fff276d29ad1bcb25,80602baaf52498f27be91a8b9169dc78de6e6e07,c09e9379e37ee282219a07399bfb0dcbb933159a --cluster-to 755f7e38f4cb85d1937aac01993090e4dfa10cb7 --cluster-slots 4096
[root@master ~]# redis-cli -p 7000 cluster nodes | grep master
755f7e38f4cb85d1937aac01993090e4dfa10cb7 127.0.0.1:7006@17006 master - 0 1568039684000 8 connected 0-1365 5462-6826 10923-12287
df740a3f64985bb4645c1f9fff276d29ad1bcb25 127.0.0.1:7000@17000 myself,master - 0 1568039679000 0 connected 1366-5461
80602baaf52498f27be91a8b9169dc78de6e6e07 127.0.0.1:7002@17002 master - 0 1568039683000 2 connected 12288-16383
c09e9379e37ee282219a07399bfb0dcbb933159a 127.0.0.1:7001@17001 master - 0 1568039683000 1 connected 6827-10922

4.收缩集群

Redis收缩集群1.png
Redis收缩集群2.png
Redis收缩集群3.png
[root@master ~]# redis-cli --cluster reshard 127.0.0.1:7000 --cluster-from df740a3f64985bb4645c1f9fff276d29ad1bcb25,80602baaf52498f27be91a8b9169dc78de6e6e07,c09e9379e37ee282219a07399bfb0dcbb933159a --cluster-to 755f7e38f4cb85d1937aac01993090e4dfa10cb7 --cluster-slots 4096
[root@master ~]# redis-cli --cluster del-node 127.0.0.1:7000 755f7e38f4cb85d1937aac01993090e4dfa10cb7

5.客户端路由

6.JedisCluster

7.故障转移

8.Redis Cluster开发运维常见问题

9.集群总结

集群总结1.png
集群总结2.png
上一篇 下一篇

猜你喜欢

热点阅读