单台服务器部署多台emqx第一个正常第二个可以通信但订阅设备上线主题无反应

节点名称和端口这些都修改了,但第二台emqx出现前端页面无法访问,并且订阅上线主题代码没有抛出异常但设备上线没有回调通知
配置文件.zip (30.5 KB)

你好,能否提供一下第二个节点上的 EMQX 后台日志?

9点启动订阅了$SYS/brokers/emqx@127.0.0.1/clients/#主题,然后设备上线并没有上线通知,但我设备连接第一台mqtt的时候第二台mqtt回调了设备的上线通知
{“username”:“12170828614”,“ts”:1675818046244,“sockport”:1883,“proto_ver”:4,“proto_name”:“MQTT”,“keepalive”:50,“ipaddress”:“117.132.191.220”,“expiry_interval”:0,“connected_at”:1675818046244,“connack”:0,“clientid”:“gtcdz2l:12170828614”,“clean_start”:true}topic$SYS/brokers/emqx@127.0.0.1/clients/gtcdz2l:12170828614/connected
log.zip (33.4 KB)

日志压缩包好像有点问题无法解压,你是怎么判断回调在哪个节点触发的?

我测试错误了,我重新测试一下之前连接有问题

第一张图片我订阅了2个队列,随后启动第二个程序连接mqtt并且发送信息,发送信息第一个程序接收到信息并且打印,但$SYS/brokers/emqx@127.0.0.1/clients/#队列的回调没有触发,日志压缩包里面装着log文件
微信截图_20230208093509

log.zip (54.8 KB)


找到问题了,我第二台设备节点名称改了订阅上线队列这里的emqx需要和节点名称一致才行
image

你在 EMQX 集群前有部署 LB 吗?如果有部署 LB 的话,最好是订阅 $SYS/broker/+/clients/#,这样不管客户端连接到哪个节点都可以接收到上线消息。

目前是打算1台服务器上装2个不同的emqx然后2个emqx互不干扰

所以不会组成集群是吗?这样也可以,只要确保端口不冲突就可以了。