十一、Docker 中redis集群扩容、缩容

接上篇redis集群3主3从搭建,如果您没看过,建议先看下:https://blog.csdn.net/u011837804/article/details/128321703

适逢双十一等大型活动流量爆增时redis集群扛不住了,这个时候怎么办呢,不能说把redis停了,我再搭建一个5主5从集群吧,这个时候就需要用到redis自动扩容。

1、redis集群设计

redis官网有这么一段话,大概意思是 redis集群设计了16384个槽位,然后针对每个集群主节点,需要分配一些或者一个槽位,这样一来,最大就是可以有16384个集群主节点(一个槽位一个节点),但是因为redis集群超过1000个节点后,速度会变慢,所以就建议最大1000个集群主节点。

注意:这里说的是主节点

接上篇3主3配置,我们可以看到redis将16384个槽位平均分配到3个主节点

说到这里,大家知道怎么集群怎么扩容了吗,那就是将槽位再分配下呗。 

2、新建6387、6388两个Redis容器节点

涉及命令:

docker run -d --name redis-node-7 --net host --privileged=true -v /usr/local/tool/volumn/redis/node-7:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6387;

docker run -d --name redis-node-8 --net host --privileged=true -v /usr/local/tool/volumn/redis/node-8:/data redis:6.0.8 --cluster-enabled yes --appendonly yes --port 6388;

命令选项这里就不说了,不懂的看下上篇

实例:

3、将新增的6387节点(空槽位)作为master节点加入原集群

进入任意节点(非6387、6388),执行命令

涉及命令:

#命令格式: redis-cli --cluster add-node 要新增的节点IP:Port 当前进入的节点IP:Port
redis-cli --cluster add-node 192.168.13.61:6387 192.168.13.61:6381

实例:

4、检查集群情况第1次

涉及命令:

redis-cli --cluster check 192.168.13.61:6381

实例:

5、重新分派槽位

进入任意节点(非6388),执行命令

涉及命令:

redis-cli --cluster reshard 192.168.13.61:6381

实例:

选择yes即可执行槽位重新分配 

6、检查集群情况第2次

执行命令同4

实例:

7、为主节点6387分配从节点6388

涉及命令:

#格式 redis-cli --cluster add-node ip:新slave端口 ip:新master端口 --cluster-slave --cluster-master-id 新主机节点ID 
#新主机节点ID 可以通过redis-cli --cluster check 192.168.13.61:6381 查到
redis-cli --cluster add-node 192.168.13.61:6388 192.168.13.61:6387 --cluster-slave --cluster-master-id 351512dc4c50f36ac3ac9f3e334094e69fbef59f

实例:

8、检查集群情况第3次

执行命令同4

实例:

至此,redis扩容就实现了,轻松愉快的扛过活动,活动过后是不是得缩回3主3从呢?

9、删除6387从节点

进入任意节点(非6387),执行命令

涉及命令:

#格式  redis-cli --cluster del-node ip:端口  节点ID 
redis-cli --cluster del-node 192.168.13.61:6388 d106683d0f11ca8f294133dbd696f41fc85f2cde

注意:必须先删除从节点,否则报错(主节点槽位需要被分配其他主节点后才可以删除)

 实例:

10、将6387主节点槽位分给其他主节点

进入任意节点,执行命令 

涉及命令:

#192.168.13.61:6381 可以为任意节点IP:Port
redis-cli --cluster reshard 192.168.13.61:6381

11、删除6387节点 

涉及命令:

redis-cli --cluster del-node 192.168.13.61:6387 351512dc4c50f36ac3ac9f3e334094e69fbef59f

 实例:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈行动派

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值