redis集群——删除节点

想要删除集群节点中的某一个节点,需要严格执行2步:

1、 将这个节点上的所有插槽转移到其他节点上
2、 使用 Redis-trib.rb 删除节点


下面 假设我们要删除 6382 这个节点为例


1、 将这个节点上的所有插槽转移到其他节点上


1.1、查看集群节点情况:

  1. /usr/local/bin/redis-cli   
  2.   
  3. cluster nodes  
/usr/local/bin/redis-cli 

cluster nodes



2.2、 调整插槽

a )   在    /my_soft/redis安装包及jar包/redis-3.0.4/src    目录下执行脚本:

  1. ./redis-trib.rb reshard  192.168.3.15:6382   
./redis-trib.rb reshard  192.168.3.15:6382 

b )   选择需要转移的插槽的数量,因为 6382 上 有 100 个插槽,所以转移 100 个。

c )   接收 转移的节点的id,我们转移到 6379 节点:904cfd517c446a9546a90cfafcc86f820b0883ab

d ) 输入插槽来源id,也就是6382的id : a3c45f11019e14bfabe47e7c4060772c473e86b3

e ) 输入done,开始转移





f ) 查看集群信息

可以 看到6382 节点上已经没有插槽了。

  1. /usr/local/bin/redis-cli   
  2.   
  3. cluster nodes  
/usr/local/bin/redis-cli 

cluster nodes




2、 使用 redis-trib.rb 删除节点


2.1、redis-trib.rb 语法命令

  1. del-node host:port node_id  
del-node host:port node_id


2.2、删除节点

  1. ./redis-trib.rb del-node 192.168.3.15:6382 a3c45f11019e14bfabe47e7c4060772c473e86b3  
./redis-trib.rb del-node 192.168.3.15:6382 a3c45f11019e14bfabe47e7c4060772c473e86b3




2.3、查看集群

执行命令:

  1. /usr/local/bin/redis-cli   
  2.   
  3. cluster nodes  
/usr/local/bin/redis-cli 

cluster nodes




可以看到集群中已经没有了6382 这个节点了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值