水平扩容和移除节点没有实际操作过,只做记录,下次再进行本次实验性操作: 1.加入新的master mkdir -p /var/redis/7007 修改配置文件信息 /etc/redis/7007.conf port 7007 cluster-enabled yes cluster-config-file /etc/redis-cluster/node-7007.conf cluster-node-timeout 15000 daemonize yes pidfile /var/run/redis_7007.pid dir /var/redis/7007 logfile /var/log/redis/7007.log bind 192.168.31.227 appendonly yes 启动脚本 /etc/init.d/redis_7007 redis-trib.rb add-node 192.168.1.107:7007 192.168.1.107:7001 redis-trib check 192.168.1.107:7001

2.reshared数据,slot从一些master移动到新的master,达到扩容减轻其他主节点的压力 redis-trib.rb reshared 192.168.1.107:7001

3.加入新的slave 新增一个redis实例,如上192.168.1.105:7008 redis-trib.rb add-node --slave --master-id <master-id> 192.168.1.105:7008 192.168.1.107:7001

4.删除node 先用resharding 将数据移到其他主节点,确保node为空后才remove redis-trib.rb del-node 192.168.1.107:7001 <master-id> 2个是1365,1个是1366 当你清空了一个master的hashslot,redis cluster自动将slave挂载到其他master上去