redis集群管理
1. 增加主节点
默认增加一个节点到一个集群中,这个节点默认为主节点。
cluster meet 192.168.1.48 7003
加入进去集群后, 该redis是一个master的角色,而且没有分配槽。
进入这个新加入集群的redis中,执行一个命令: cluster replicate 2e13d27dd3426032ab8274b66e45651c175a02fa
这个新的redis,就变成从节点。
2. 增加从节点
./redis-trib.rb add-node --slave --master-id 3c3a0c74aae0b56170ccb03a76b60cfe7dc1912e 127.0.0.1:7006 127.0.0.1:7000
[root@cachecloud-48 7003]# /opt/cachecloud/redis/src/redis-trib.rb add-node 192.168.1.231:6379 192.168.1.48:7001 >>> Adding node 192.168.1.231:6379 to cluster 192.168.1.48:7001 >>> Performing Cluster Check (using node 192.168.1.48:7001) M: 5c83158d9afb6de1ab2aeee3b84cb0d8aa281430 192.168.1.48:7001 slots:0-5460 (5461 slots) master 1 additional replica(s) M: dd97e2be5096090d9dce9e0425597b1b860c6bfc 192.168.1.49:7001 slots:5461-10922 (5462 slots) master 1 additional replica(s) M: d4298e710342c5fd383b84d9b47785d689db2d50 192.168.1.48:7002 slots:10923-16383 (5461 slots) master 1 additional replica(s) S: 62594b8989f17691c3d51106b7e8b1752e8d433a 192.168.1.48:7003 slots: (0 slots) slave replicates dd97e2be5096090d9dce9e0425597b1b860c6bfc S: 8b565ddc460e0fbdae049a99e4aee2223a590e7d 192.168.1.49:7003 slots: (0 slots) slave replicates d4298e710342c5fd383b84d9b47785d689db2d50 S: 980b713a9cb8079fb09d6304c90ca536f9d5f07f 192.168.1.49:7002 slots: (0 slots) slave replicates 5c83158d9afb6de1ab2aeee3b84cb0d8aa281430 [OK] All nodes agree about slots configuration. >>> Check for open slots... >>> Check slots coverage... [OK] All 16384 slots covered. [ERR] Node 192.168.1.231:6379 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.
解决方法;
1. 关闭要新增的redis服务。
2. 删除aof,rdb还有node.conf文件
3、还不行再删除所有redis节点的appendonly.aof、dump.rdb、nodes.conf,再执行
4、还不行清库再执行
[root@localhost ~]# cd /usr/local/redis-3.0.6/src/
[root@localhost src]# redis-cli -c -p 7000
127.0.0.1:7000> flushdb
OK
3. 删除主节点
4. 删除从节点
5. 节点错误:
出现错误:0 master,no addr
使用cluster del-node 删除节点的时候报错。
解决方法:cluster forget <node-id>
6. 删除节点
del-node可以把某个节点从集群中删除。del-node只能删除没有分配slot的节点。删除命令传递两个参数:
host:port:从该节点获取集群信息。
node_id:需要删除的节点id。
/opt/cachecloud/redis/src/redis-trib.rb del-node 192.168.1.231:6379 6b43c5e240e1c179c2bcd9e9bdaa99d28eebd438
/opt/cachecloud/redis/src/redis-trib.rb del-node 192.168.1.231:7379 ea9cfed7a230cef0575d01b013804f7a1cd07947

浙公网安备 33010602011771号