Redis分片备库切换操作
场景描述:
分片集群:
1.ipa:5001-ipa:5002
2.ipb:5001-ipb:5002
需将两个分片备库互置完成灾备
操作步骤
准备工作
主机密码:1qaz!QAZ
获取节点信息命令
/redispath/bin/redis-cli -a password -h ip -p port
redispath:redis安装路径
password:redis密码
ip:redis所在服务器ip地址
port:redis端口查看节点信息命令:
cluster nodes需要切换的redis的主机ip和redis的端口:如ipa:5002:从节点id:56ac85xxxxxxxxxxxxxxxxxx1676dba9c
需要切换到的redis集群的主节点id信息:如ipb:5002:主节点id:d89dd66d8xxxxxxxxxxxxxxxxxxxxxa0087d21121be默认redis-cli路径为/redispath/bin/
默认redis5002.cnf路径为/data/redis/redis5002
默认node5002.cnf路径为/data/redis/cluster
默认redis5002.rdb、redis5002.aof路径为/data/redis/data/
切换步骤
删除从节点信息
# -a 密码认证(没有密码不用带此参数)
# --cluster del-node 连接任意一个存活的节点IP:连接任意一个存活的节点端口 要删除节点ID
/redispath/bin/redis-cli -a password --cluster del-node ipa:5002 56ac85xxxxxxxxxxxxxxxxxx1676dba9c
删除node5002.cnf、redis5002.rdb、redis5002.aof文件(此处我采用了mv)
mv /data/redis/5002/cluster/node5002.cnf /data/redis/5002/bak/
mv /data/redis/5002/data/redis5002.rdb /data/redis/5002/bak/
mv /data/redis/5002/data/redis5002.aof /data/redis/5002/bak/
启动被删除的从节点Redis服务
/redispath/bin/redis-server /data/redis/5002/redis5002.cnf
添加集群节点
# 使用如下命令即可添加节点将一个新的节点添加到集群中
# -a 密码认证(没有密码不用带此参数)
# --cluster add-node 添加节点 新节点IP:新节点端口 任意存活节点IP:任意存活节点端口
/redispath/bin/redis-cli -a password --cluster add-node ipb:5002 ipa:5001
配置从节点信息
# 连接需设为从节点的Redis服务
/redispath/bin/redis-cli -a password -h ipb -p 5002
# 将当前节点分配为d89dd66d872xxxxxxxxxxxxxxxxxx21121be的从节点
cluster replicate d89dd66d87255cfff04a8591e16a0087d21121be
至此,完成ipa:5002切换至ipb:5002
当前情况:
1.ipa:5001
2.ipb:5001-ipb:5002/ipa:5002
同上述步骤完成ipb:5002切至ipa:5001
1.ipa:5001-ipb:5002
2.ipb:5001-ipa:5002