笔记 20240530
20240530
记一次 RocketMQ 异常 No route info of this topic 处理过程
RocketMQ 集群部署如下:
Docker 容器化部署的 broker 和 namesrv,使用 host 模式
三台机器 10.107.17.112、10.107.17.113、10.107.17.114
每台机器部署一个 broker 和一个 namesrv,broker 角色都为 master
客户端发送消息异常信息如下:
No route info of this topic:xxx
排查过程如下:
查看集群状态 = 正常
查看 topic 是否存在 = 存在
查看 topic 权限 = 6(读写权限)
查看 Rocketmq 客户端日志是否正常连接 namesrv 并获取 topic 路由信息 = 正常
通过官方运维工具./mqadmin 测试发现消息 = 失败(提示上面异常信息)
查看 docker 容器实例发现 10.107.17.113、10.107.17.114 节点容器实例发生过批量重启
解决过程如下:
重启 namesrv 和 broker = 未解决问题
使用相同的 broker.conf 配置重新部署 namesrv 和 broker = 未解决问题
检查 broker.conf 发现 brokerPermission=4,代表当前 broker 默认只读权限 = 真相
修改 broker.conf 中的 brokerPermission=6,代表读写权限 = 问题解决
总结:
运维给服务器降低配置时批量重启过服务,broker 重启后读取到配置文件中的 brokerPermission=4 只读权限,所以导致此 broker 上的 topic 均不可写入,报错 No route info of this topic,修改 brokerPermission=6 重启 broker 问题解决。
版权声明: 本文为 InfoQ 作者【Geek_d01095】的原创文章。
原文链接:【http://xie.infoq.cn/article/eac8522e1641d6d4e3f221b86】。文章转载请联系作者。
评论