RocketMQ:设置broker的对外IP
作者:互联网
背景
最近在公司遇到这么一个问题:我在测试环境中搭建了一套RocketMQ,开发想要使用本机连接进行生产消费的测试,但是发现服务无法正常访问,报如下错误:
send heart beat to broker error {"fields": {"underlayError":{"Op":"dial","Net":"tcp","Source":null,"Addr":{"IP":"10.13.10.29","Port":10911,"Zone":""},"Err":{}}}}
分析
这个错误指的是本机向broker服务(10.13.10.29)发生心跳失败。开发尝试去telnet这个ip和端口,发现确实无法访问。然后我去云平台上查了一下这个broker机器,其ip为10.13.10.29,属于内网段ip,外界网络无法直接访问此ip。
解决方法
由于这台broker机器已绑定了外网IP,那是不是给broker服务配置一下外网IP就可以了呢?
于是我查了下broker的配置文件,发现确实有两个配置项可以做到:
brokerIP1:当前broker监听的IP。
brokerIP2:broker为master-slave模式时,broker的从节点通过brokerIP2和主节点进行连接。
如下图:我给broker配置brokerIP1为外网IP。
然后,重启broker服务。
这时候本机再通过nameserver去连接broker进行生产消费,就不会报ip和端口无法连上的问题了。
博主:测试生财(一个不为996而996的测开码农)
座右铭:专注测试开发与自动化运维,努力读书思考写作,为内卷的人生奠定财务自由。
内容范畴:技术提升,职场杂谈,事业发展,阅读写作,投资理财,健康人生。
csdn:https://blog.csdn.net/ccgshigao
博客园:https://www.cnblogs.com/qa-freeroad/
51cto:https://blog.51cto.com/14900374
在码农的苦闷岁月里,期待我们一起成长,欢迎关注,感谢拍砖!
标签:ip,IP,broker,https,10.29,10.13,RocketMQ 来源: https://www.cnblogs.com/qa-freeroad/p/14394931.html