EMQX部署

导读:本篇文章讲解 EMQX部署,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com


前言

物联网通信最常用的协议之一是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中的各个插件的使用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/71760.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!