Redis學習筆記七——向叢集節點新增、刪除和分配slot
阿新 • • 發佈:2018-12-25
上邊文章講了如何搭建redis叢集,這邊文章講叢集節點的新增、刪除和重新分配slot。
1、新增節點
新增節點:redis-trib.rb add-node 192.168.72.100:7006 192.168.72.100:7005
前面的IP加埠號是要新增的redis節點,後面的IP和埠號是叢集中的任意一個節點。
2、為節點分配slot
為節點分配slot:redis-trib.rb reshard 192.168.72.100:7006
新增之後,分配之前節點slot的情況分配之後節點的slot情況
3、新增從節點
和上面情況類似,新增之後用redis-cli 登陸新新增的節點,然後執行設定主節點新增從節點:redis-trib.rb add-node 192.168.72.100:7007 192.168.72.100:7005
設定主節點:cluster replicate 578d27842e8da87f89f14c73faf8f5bbe2f9ed85(對應master的nodeID)
4、刪除叢集節點
先刪除主節點的情況 刪除叢集主節點 刪除叢集主節點之前要先將其上面的slot分配到其他主節點上重新分配slot:redis-trib.rb reshard 192.168.72.100:7006 刪除主節點:redis-trib.rb del-node 192.168.72.100:7006 578d27842e8da87f89f14c73faf8f5bbe2f9ed85
可以看到刪除之後原來主節點的從節點自動變為其他主節點的從節點了(可以試驗一下,觀察一下該從節點與移動的slot有什麼關係) 刪除從節點
刪除從節點:redis-trib.rb del-node 192.168.72.100:7007 4e3c459e26040f49b51dce8fdae5cb571b066ff0
先移除從節點的情況
先刪除從節點
刪除從節點:redis-trib.rbdel-node 192.168.72.100:7007 4e3c459e26040f49b51dce8fdae5cb571b066ff0
再刪除主節點
重新分配slot:redis-trib.rb reshard 192.168.72.100:7006
然後再刪除主節點
刪除主節點:redis-trib.rb del-node 192.168.72.100:7006 578d27842e8da87f89f14c73faf8f5bbe2f9ed85
一般建議的如果要移除主節點,先將從節點移除,避免出錯。