在上一篇,我们学会了redis集群的扩容。从3主3从扩容到4主4从。
那么,接着,活动过去了。流量没有那么大了。需要缩容了。从4主4从缩容到3主3从了。那么这个时候又该怎么处理呢?
缩容思考问题:
1:需要删除主节点的槽位怎么分配?
2:需要删除的主从节点,是先删除主节点呢?还是先删除从节点呢?
缩容步骤:
目的:将6387和6388下线
1:检查集群情况第1次
获取到6388的节点id
命令:
redis-cli --cluster check 192.168.50.128:6381
6388的id:6ddeab32c1bc0dd4e0015f231e349188685331c2
2:将6388(从节点)删除
从集群中将4号从节点6388删除
新命令:
redis-cli --cluster del-node ip:从机端口 从机6388的节点id
对应本实战的命令为:
redis-cli --cluster del-node 192.168.50.128:6388 6ddeab32c1bc0dd4e0015f231e349188685331c2
3:检查集群情况第2次
4:将6387的槽号情况,重新分配,
本例将请出来的槽号都给6381
注意:6381的节点id为:dc08acda69ec63e21267c1fd201f34352014b0ed
6387节点id为:2b0751e59cdf0ae0f74be7ab74981ab41e37e372
命令:
redis-cli --ccluster reshard ip:端口
执行完成后,会自动重新分配。输入yes.执行一段时间。
5:检查集群情况第3次
6:将6387删除
命令:
redis-cli --cluster del-node 192.168.50.128:6387 2b0751e59cdf0ae0f74be7ab74981ab41e37e372
7:检查集群情况第4次
大家好,我是凯哥Java(kaigejava),乐于分享,每日更新技术文章,欢迎大家关注“凯哥Java”,及时了解更多。让我们一起学Java。也欢迎大家有事没事就来和凯哥聊聊~~~
领取专属 10元无门槛券
私享最新 技术干货