EMQX部署


前言

物联网通信最常用的协议之一是MQTT,而EMQX是作为一个消息中间件或者是一个MQTT的服务器,能够支持MQTT协议的通信

一、mqtt是什么?

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT协议属于应用层的协议,和HTTP属于统一层级。

MQTT协议的通信是通过一条条消息通道,在这里称为主题(topic),来进行消息的传输。 例如,现在有一条主题 :a/b/c 其中拥有发布权限的客户端A,可以向 a/b/c中发布消息。而具有这条主题的订阅权限的客户端B,则可以订阅主题a/b/c。那么在A向主题a/b/c发布一条消息之后,B则可以接收到该消息。

而EMQX则是实现mqtt消息代理分发的一个消息中间件。

二、EMQX部署步骤

1.下载压缩包

2.解压

在这里插入图片描述

3.配置EMQX连接属性

在etc目录下有一个emqx.conf文件。在该文件中,可以配置mqtt的连接地址信息
listener.tcp.external = 0.0.0.0:1883 tcp连接地址
listener.ssl.external = 8883 ssl加密连接地址
以及配置证书路径
listener.ssl.external.cacertfile =
listener.ssl.external.keyfile=

4.配置redis认证

配置文件位于etc/plugin/emqx_auth_redis.conf,该文件中可配置redis地址以及客户端账号密码和主题权限
auth.redis.type = single redis节点类型
auth.redis.server= redis连接地址
auth.redis.password redis连接密码
auth.redis.auth_cmd = HMGET mqtt_user:%u password redis中用户名密码存储格式
auth.redis.password_hash = sha256 密码加密算法plain代表明文
auth.redis.acl_cmd = HGETALL iot_mqtt_acl:%u redis中权限存储格式

5.配置默认启用插件

配置文件位于 data/load_plugins
在这里插入图片描述

6.EMQX - Dashboard

dashboard相当于emqx的后台管理员运维界面。
默认地址ip:18083
账号 admin
密码 public
可以在etc/plugin/emqx_dashboard.conf中配置

在这里插入图片描述
clinet是客户端管理,可以在此强制踢出客户端
topic 是当前使用的主题列表
Subscriptions 当前已经被订阅的主题信息
plugin菜单中可以对dashboard进行启动、停止操作
在这里插入图片描述

listener菜单中可以看到mqtt的连接信息
在这里插入图片描述

7.MQTT.fx工具连接mqtt

①配置mqtt客户端连接信息
在这里插入图片描述

②订阅或发布主题
在这里插入图片描述

总结

EMQX还可以使用MYSQL,配置文件,命令等方式进行密码和权限的认证,具体请参考plugin中的各个插件的使用

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值