Redis集群节点主从关系调整
发表于:2025-02-07 作者:千家信息网编辑
千家信息网最后更新 2025年02月07日,一.概述Redis集群创建后,可能会出现互为主从关系的节点从属于同一台服务器的情况。在此种情况下,若服务器故障宕机或需要停机维护,互为主从关系的节点同时停止运行,导致redis集群暂时失去一部分slo
千家信息网最后更新 2025年02月07日Redis集群节点主从关系调整
一.概述
Redis集群创建后,可能会出现互为主从关系的节点从属于同一台服务器的情况。在此种情况下,若服务器故障宕机或需要停机维护,互为主从关系的节点同时停止运行,导致redis集群暂时失去一部分slot插槽。此时,redis集群为fail状态,对其进行的数据读写操作均无法正常进行。为避免此种情况的发生,应对redis集群节点的主从关系进行调整,使互为主从关系的节点分属于不同的服务器。
二.调整方法描述
1.使用redis-trib.rb脚本将待调整的从节点从redis集群中删除。(执行此步操作时,从节点会从redis集群中去除。同时,此从节点进程会被杀掉。)命令如下:
redis-trib.rb del-node 集群中某节点IP:PORT 待调整的从节点ID
2.删除待调整从节点rdb子目录下的所有文件。(包括"dump.rdb"和"nodes-节点端口号.conf"文件。)3.重新启动待调整的从节点。4.使用redis-trib.rb脚本将待调整的从节点加入到redis集群中,使其与合适的主节点对应,建立起新的主从关系。命令如下:
redis-trib.rb add-node --slave --master-id 主节点ID 待调整的从节点IP:PORT 集群中某节点IP:PORT
三.具体操作方法举例
1.redis集群节点主从关系信息
图一 redis集群节点主从关系
主节点信息 从节点信息
主节点ID | 主节点地址 | 从节点ID | 从节点地址 |
---|---|---|---|
487247ac4e34c0102d54eaca3256dce9b24667f4 | 132.46.115.146:6580 | 23b674847132d82c355b3f440aa3f1f940316b69 | 132.46.115.148:6581 |
3e745792f2a1f179501aea3264186aa55103a434 | 132.46.115.148:6580 | 06b296c1d87fbf69638076d53054d89bd15ef2ad | 132.46.115.146:6581 |
2d93e76a04d20ca0a91e22694201f3b4b18c740b | 132.46.115.149:6580 | f8a342695baac0bce608ed468f2414c2e68abc49 | 132.46.115.149:6581 |
表一 redis集群节点主从关系
从图一、表一可见,其中一对主从节点(132.46.115.149:6580和132.46.115.149:6581)从属于同一台服务器。需要从redis集群中去除两个从节点(包括132.46.115.149:6581),而后建立新的主从关系。具体操作方法如下。
(1)从redis集群中删掉两个从节点(132.46.115.146:6581和132.46.115.149:6581)在任意一台服务器上执行下面2条命令:redis-trib.rb del-node 132.46.115.146:6580 06b296c1d87fbf69638076d53054d89bd15ef2adredis-trib.rb del-node 132.46.115.146:6580 f8a342695baac0bce608ed468f2414c2e68abc49(2)删除两个从节点rdb子目录下的所有文件分别在132.46.115.146和132.46.115.149服务器上执行如下命令:rm ${REDIS_CLUSTER_HOME}/redis6581/rdb/*(3)重新启动删掉的两个从节点分别在132.46.115.146和132.46.115.149服务器上执行如下命令:${REDIS_CLUSTER_HOME}/redis6581/bin/redis-server ${REDIS_CLUSTER_HOME}/redis6581/conf/redis.conf(4)将删掉的两个从节点加入redis集群并建立新的主从关系在任意一台服务器上执行下面2条命令:redis-trib.rb add-node --slave --master-id 2d93e76a04d20ca0a91e22694201f3b4b18c740b 132.46.115.146:6581 132.46.115.146:6580redis-trib.rb add-node --slave --master-id 3e745792f2a1f179501aea3264186aa55103a434 132.46.115.149:6581 132.46.115.146:6580
调整之后的redis集群节点关系见表二
主节点ID | 主节点地址 | 从节点 | 从节点地址 |
---|---|---|---|
487247ac4e34c0102d54eaca3256dce9b24667f4 | 132.46.115.146:65 | 23b674847132d82c355b3f440aa3f1f940316b69 | 132.46.115.148:6581 |
3e745792f2a1f179501aea3264186aa55103a434 | 132.46.115.148:6580 | f8a342695baac0bce608ed468f2414c2e68abc49 | 132.46.115.149:6581 |
2d93e76a04d20ca0a91e22694201f3b4b18c740b | 132.46.115.149:6580 | 06b296c1d87fbf69638076d53054d89bd15ef2ad | 132.46.115.146:6581 |
表二 redis集群节点新主从关系
四.自动检测redis集群节点主从关系的脚本
图二 自动检测redis集群节点主从关系的脚本
图二为自动检测redis集群节点主从关系的脚本。执行此脚本时需要传入2个参数。参数一为redis集群任一节点IP,参数二为redis集群任意节点port。若存在主从节点从属于同一台服务器的情况,信息将以红色底色显示。否则,信息以绿色底色显示。脚本执行方法及输出结果如图三所示。
图三 自动检测redis集群节点主从关系脚本执行情况
节点
集群
主从
调整
服务器
服务
脚本
命令
两个
信息
情况
地址
方法
检测
参数
文件
同时
子目
子目录
底色
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
国际网络安全手抄报图片
网络安全警报怎么取消
海康校园管理服务器密码
《统一软件开发过程》
新ipad登录无法联系服务器
数据库形考任务
众智互联网学院软件开发怎么样
619宝盒服务器连接不上
王者qq服所有服务器名称
服务器销售不好做
重庆程序软件开发价钱是多少
外包软件开发公司是什么
学习hadoop用的云服务器
咪莫服务器不合理
梦幻西游网络服务器在哪
鸿蒙软件开发计算器
山东软件开发人员工资待遇
无锡服务器机柜定制
扬州宏图远景软件开发怎么样
天津互联网科技学校
桂林游戏软件开发
网络安全四个坚决
电脑远程服务器被关闭
德惠智能网络技术服务
苏州金税盘安全服务器
网络安全源头有哪些
网络安全a站什么意思
学生应该注意的网络安全
数据库抽象数据类型有哪几种
国内ar软件开发公司