1、原因:
broker使用的IP一般是本机IP地址,默认系统自动识别,但是某些多网卡机器会存在识别错误的情况,导致无法识别到正确的本地IP地址,从而导致broker启动是使用了内网IP。
虽然启动时已经配置了本地IP地址,但是并为通过配置文件启动broker,导致配置文件没有生效
2、解决方案
这是由于跨域造成的:
-
修改服务器中broker的配置,添加服务器IP(公网)即可
-
编辑"/root/soft/rocketmq-all-4.4.0-bin-release/conf/broker.conf" 文件
新增一行:文章来源:https://uudwc.com/A/yAe5G
brokerIP1=xx.xx.xx.xx # 你的公网IP,这个写你当前linux机器的ip地址
然后重启 BrokerStartup,记得先杀死你的BrokerStartup进程文章来源地址https://uudwc.com/A/yAe5G
[root@zjj101 rocketmq-all-4.4.0-bin-release]# jps
45041 Jps
22902 jar
44283 NamesrvStartup
38397 BrokerStartup
[root@zjj101 rocketmq-all-4.4.0-bin-release]# kill -9 38397
- 重新启动BrokerStartup
nohup sh mqbroker -n localhost:9876 -c /usr/local/rocketmq-4.4/conf/broker.conf &