8.redis cluster新增,删除节点

一.扩容节点

1.启动一个新的redis节点,例如端口号为7007节点的端口号(之前文章有所涉及,此处不赘述)

2.将新增的节点添加进集群

redis-trib.rb add-node 192.168.40.158:7007 192.168.40.156:7001 将新节点连接到源数据(7007新节点,7001源数据节点)
执行新增后 检查节点信息redis-trib.rb check 192.168.40.158:7007没有slots,无法处理数据

3.填充新节点的solts

redis-trib.rb reshard 192.168.40.158:7001 用来从一个节点获取整个集群信息,相当于获取集群信息的入口

16384/节点数,此处是4个节点,每个节点即4096
(1)输入接收者的id:上方check出来7007对应的id
(2)输入源数据id:此处的三个节点的id(输一个回车一个)最后输入done
(3)yes 可以再check检查一下

4.挂载新的slave

redis-trib.rb add-node --slave --master-id 28927912ea0d59f6b790a50cf606602a5ee48108 192.168.31.227:7008 192.168.31.187:7001 (redis-trib.rb add-node --slave --master-id + master节点的id+被挂载的节点+主节点)

二.缩容节点

(1) 移除一个master节点,首先将被移除节点的slot平均分配给其他的master节点,分配方式同3(不同的在于,要一个个去分配:例如4096拆分成2个1365,一个1366,分别挂到另外3个节点)
(2) 关闭节点 redis-trib.rb del-node 192.168.31.158:7007 bd5a40a6ddccbd46a0f4a2208eb25d2453c2a8db

你可能感兴趣的:(Redis)