5.0中redis-cli的集群管理測試
阿新 • • 發佈:2018-10-27
water 記得 bcb dff eba code copy 所有 mage 集群管理工具redis-trib.rb已經被廢棄,所以不用安裝ruby啥的了,當時redis-trib.rb的功能,現在已經集成到了redis-cli中,可以通過./redis-cli --cluster help查看使用方式。
這裏必須是沒有槽的節點,所以必須先移除槽,否則報如下錯誤
通過reshard遷移走槽後,刪除成功,並且關閉了該節點
被刪除的node重啟後,依然記得集群中的其它節點,這是需要執行cluster forget nodeid來忘記其它節點
Cluster-from後面跟外部redis的ip和port
如果只使用cluster-copy,則要導入集群中的key不能在,否則如下:
如果集群中已有同樣的key,如果需要替換,可以cluster-copy和cluster-replace聯用,這樣集群中的key就會被替換為外部的
環境
#創建集群#
./redis-cli --cluster create 192.168.1.172:6379 192.168.1.172:6380 192.168.1.172:6381
查看所有槽已經均勻分配
#檢查集群#
./redis-cli --cluster check 192.168.1.172:6379
查看集群一切正常
#查看集群key、slot、slave分布信息#
./redis-cli --cluster info 192.168.1.172:6379
#在線遷移槽#
./redis-cli --cluster reshard 192.168.1.172:6379
選擇一個目標節點的id
源選擇all
#平衡各節點槽數量#
./redis-cli --cluster rebalance --cluster-threshold 1 192.168.1.172:6379
已平衡
#刪除集群節點#
./redis-cli --cluster del-node 192.168.1.172:6379 b97cde23f3c1a1b13e42728562180355b985831a
通過reshard遷移走槽後,刪除成功,並且關閉了該節點
被刪除的node重啟後,依然記得集群中的其它節點,這是需要執行cluster forget nodeid來忘記其它節點
#添加集群節點#
./redis-cli --cluster add-node 192.168.1.172:6379 192.168.1.172:6380
再平衡各節點slot數量
#將集群外部redis實例中的數據導入到集群中去#
./redis-cli --cluster import 192.168.1.172:6379 --cluster-from 192.168.1.172:6382 --cluster-copy
Cluster-from後面跟外部redis的ip和port
如果只使用cluster-copy,則要導入集群中的key不能在,否則如下:
如果集群中已有同樣的key,如果需要替換,可以cluster-copy和cluster-replace聯用,這樣集群中的key就會被替換為外部的
5.0中redis-cli的集群管理測試