You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Redis Enterprise中CRDB同步器无法同步成员:连接CRDB成员失败

排查CRDB同步连接失败的进阶方案

1. 核查TLS配置(若启用)

  • 要是集群开了TLS,得确认同步用的证书在所有CRDB成员间都有效:
    • 用redis-cli -h <目标节点IP> -p <CRDB端口> --tls --cacert <CA证书路径> --cert <客户端证书路径> --key <客户端密钥路径>验证成员节点能否通过TLS连接到目标CRDB
    • 检查所有成员的crdb-sync-tls配置参数是否一致,要么全启用要么全禁用TLS同步

2. 验证端口映射与监听地址

  • 确认CRDB实例没只绑定localhost或内部私有IP:
    • 在成员节点执行redis-cli config get bind,查看返回地址是否包含集群内可访问的IP
    • 检查节点防火墙是否放行CRDB的同步专用端口(默认12000-13000区间,可通过rladmin status查具体实例端口)
  • 用telnet <目标节点IP> <CRDB同步端口>或nc -zv <目标节点IP> <CRDB同步端口>测试端口连通性,注意这是同步专用端口,不是普通Redis服务端口

3. 检查同步器权限与身份验证

  • 若CRDB启用了ACL,确认同步器用的用户有这些权限:CRDB-SYNC、REPLICATION、CONFIG
  • 执行redis-cli config get requirepass和redis-cli config get aclfile,核对同步配置里的密码/ACL用户是否匹配
  • 查看成员节点的/var/opt/redislabs/log/redis_<实例ID>.log日志,找带CRDB sync或connection refused的条目,定位具体认证失败原因

4. 排查集群元数据一致性

  • 执行rladmin crdb status <CRDB名称>,检查所有成员状态是否为active,元数据是否一致
  • 尝试重启CRDB同步器进程:在成员节点执行supervisorctl restart redislabs_crdb_sync_<实例ID>(替换成实际实例ID)
  • 若元数据不一致,可执行rladmin crdb rebalance <CRDB名称>重新同步集群元数据

5. 检查系统级限制

  • 查看成员节点文件描述符限制:执行ulimit -n,确保值不低于65535(Redis Enterprise推荐值)
  • 检查sysctl参数:确认net.core.somaxconn至少设为1024,net.ipv4.tcp_tw_reuse已启用
  • 查看/var/log/messages或/var/log/syslog系统日志,找是否有网络栈相关错误(比如TCP连接被重置、端口耗尽)

内容的提问来源于stack exchange,提问作者Aditya Mishra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 20:22:09