目录

一、集群扩容

step1:创建节点并启动

step2:集群中添加节点 

step3:新节点分配slot 

step4:新主节点添加从节点 

二、添加从节点

三、验证主从切换 

step1:主节点6388下线 

step2:查看节点信息 

step3:启动6388节点 

step4:查看节点信息

四、主节点删除 

step1:重新分配slot

step2:删除主节点 

step3:slot是否均匀

五、参考资料


        本章节主要是cluster集群验证,如集群扩容、主从切换、删除节点等验证。

一、集群扩容

step1:创建节点并启动

参考Cluster集群搭建<一>中的节点创建并启动,这里添加:6388、6389两个节点,作为主从。

c cli redis 命令 redis-cli --cluster create_c cli redis 命令

step2:集群中添加节点 

./redis-cli --cluster add-node 172.17.0.7:6388 172.17.0.2:6382 -a abcdef
./redis-cli --cluster add-node 172.17.0.7:6389 172.17.0.2:6382 -a abcdef

注意:a. 第一个ip:port(如:172.17.0.7:6388):表示需要添加的节点

           b. 第二个ip:port(如:172.17.0.2:6382):表示集群中任意节点

           c. -a abcdef:添加节点需要的auth

都是主节点且slot为0,需要分配slot,见step3步骤

c cli redis 命令 redis-cli --cluster create_bc_02

c cli redis 命令 redis-cli --cluster create_2d_03

step3:新节点分配slot 

分配slot有两种方式:      all:所有主节点都给一点slot

                                    done:指定主节点给slot

        注意:新加的节点都是主节点,slot都是0,需要重新分配slot

a. 重新分配slot 

./redis-cli --cluster reshard 172.17.0.2:6382 -a abcdef

 注意:1). ip:port(如:172.17.0.2:6382):是当前集群中的任意节点

c cli redis 命令 redis-cli --cluster create_bc_04

b. 输入分配多少节点 

c cli redis 命令 redis-cli --cluster create_bc_05

 

c. 输入给哪个节点分配slot 

c cli redis 命令 redis-cli --cluster create_2d_06

d. 选择分配方式

c cli redis 命令 redis-cli --cluster create_2d_07

e. 是否继续分配:选择yes,完成分配 

c cli redis 命令 redis-cli --cluster create_c cli redis 命令_08

f. 查看slot分配详情 

c cli redis 命令 redis-cli --cluster create_c cli redis 命令_09

step4:新主节点添加从节点 

step3中,6388分配slot,而6389还是主节点:这里把6389作为6388主节点的从节点

a. 删除已添加的6389节点

./redis-cli --cluster del-node 172.17.0.7:6389 2011a2f499f94fadfb831fec6da21a541c831611 -a abcdef

注意:1). 删除的ip:port节点,及节点的ID

6389没有slot可以直接删除,若是有slot需要同步到其他节点

b. 主节点添加从节点 

./redis-cli --cluster add-node --cluster-slave --cluster-master-id d7352da65040b9736a7696f8074036323bd90583 172.17.0.7:6389 172.17.0.7:6388 -a abcdef

注意:1). d7352da65040b9736a7696f8074036323bd90583:主节点ID

           2). 172.17.0.7:6389:添加的从节点

           3). 172.17.0.7:6388:指定6388主机点添加从节点

c cli redis 命令 redis-cli --cluster create_redis_10

二、添加从节点

参考第一节:集群扩容step4,这里新建节点6390,添加到主机点6388 

./redis-cli --cluster add-node --cluster-slave --cluster-master-id d7352da65040b9736a7696f8074036323bd90583 172.17.0.7:6390 172.17.0.7:6388 -a abcdef

c cli redis 命令 redis-cli --cluster create_bc_11

三、验证主从切换 

step1:主节点6388下线 

./redis-cli -h 127.0.0.1 -p 6388 -a abcdef shutdown

step2:查看节点信息 

c cli redis 命令 redis-cli --cluster create_2d_12

step3:启动6388节点 

./redis-server ./conf/redis-6388.conf

step4:查看节点信息

c cli redis 命令 redis-cli --cluster create_2d_13

四、主节点删除 

主节点没有slot可以直接删除,若是有slot需要同步到其他节点。参考集群扩容step3。

step1:重新分配slot

注意:1). slot迁移到其他节点,分配方式done

           2). 移除的主节点作为源

c cli redis 命令 redis-cli --cluster create_c cli redis 命令_14

step2:删除主节点 

./redis-cli --cluster del-node 172.17.0.7:6389 2011a2f499f94fadfb831fec6da21a541c831611 -a abcdef

c cli redis 命令 redis-cli --cluster create_bc_15

step3:slot是否均匀

若删除后感觉其余主节点的slot不均衡,若是修改:重新slot,否则需要整个集群停掉,flushdb等重新创建集群。