使用EMQ平台搭建MQTT服务器
一、EMQ X及EMQ X Broker介绍
EMQ官网的链接https://www.emqx.io/cn EMQ X (Erlang/Enterprise/Elastic MQTT Broker) 是基于 Erlang/OTP 平台开发的开源物联网 MQTT 消息服务器。Erlang/OTP是出色的软实时 (Soft-Realtime)、低延时 (Low-Latency)、分布式 (Distributed)的语言平台。EMQ X 设计目标是实现高可靠,并支持承载海量物联网终端的MQTT连接,支持在海量物联网设备间低延时消息路由。
EMQ X Broker 是基于高并发的 Erlang/OTP 语言平台开发,支持百万级连接和分布式集群架构,发布订阅模式的开源 MQTT 消息服务器。EMQ X Broker 在全球物联网市场广泛应用。无论是产品原型设计、物联网创业公司、还是大规模的商业部署,EMQ X Broker 都支持开源免费使用。
EMQ X Broker的文档:https://docs.emqx.io/broker/latest/cn
二、在Linux下部署EMQ X Broker
1、下载安装包
下载连接:https://www.emqx.io/cn/downloads#broker 打开下载连接后我们选择版本,例如我选择目前的最新版v4.0.5,因为我使用的Liunx 系统是Ubuntu16,所以选择Linux/Ubutu16.04/zip。我们将下载连接复制下来,
然后在ubuntu下直接使用wget命令下载下来:
wget https://www.emqx.io/downloads/broker/v4.0.5/emqx-ubuntu16.04-v4.0.5.zip
或者也可以直接点击下载。
2、启动EMQ X Broker
下载完成后,使用unzip命令解压,如果没有安装unzip,则使用命令sudo apt-get install unzip
安装,
unzip emqx-ubuntu16.04-v4.0.5.zip
然后进入解压出来的emqx文件夹,使用命令启动即可
sudo ./bin/emqx start
看到启动成功即可
然后可以使用命令查看emqx的状态,
sudo ./bin/emqx_ctl status
如果要停止 EMQ X Broker,使用如下命令:
sudo ./bin/emqx stop
如果要卸载 EMQ X Broker,直接删除 EMQ X 目录即可
注意:如果是在云服务器上部署的话,例如阿里云默认有安全组配置,或者开启了宝塔面板,一定要记得放行如下TCP端口:
端口 说明
1883 MQTT 协议端口
8883 MQTT/SSL 端口
8083 MQTT/WebSocket 端口
8080 HTTP API 端口
18083 Dashboard 管理控制台端口
阿里云设置方法可以参考:
4、进入控制台
EMQ X 提供了 Dashboard 以方便用户管理设备与监控相关指标。通过 Dashboard,你可以查看服务器基本信息、负载情况和统计数据,可以查看某个客户端的连接状态等信息甚至断开其连接,也可以动态加载和卸载指定插件。除此之外,EMQ X Dashboard 还提供了规则引擎的可视化操作界面,同时集成了一个简易的 MQTT 客户端工具供用户测试使用。
查看我Linux的IP地址,(云服务器需要使用公网IP地址),然后打开浏览器,直接输入<ip地址或域名>:18083
即可访问到EMQ-X的后台登录界面,默认用户名是 admin
,密码是 public
。
进入控制台后可以将控制台界面换成中文,另外主题也可以切换成白色,然后点击【Apply】即可
如下所示
如果在云服务器上部署的,使用的是默认用户名和密码不安全,可以在用户界面修改:
二、在Windows下部署EMQ X Broker
1、下载安装包
下载连接:https://www.emqx.io/cn/downloads#broker 打开下载连接后我们选择版本,例如我选择目前的最新版v4.0.5,然后选择Windows/zip,点击下载
2、启动EMQ X Broker
下载完成后,将其解压
然后进入解压出来的emqx/bin文件夹,在路径栏输入cmd
然后确定,打开命令行
然后使用命令安装
emqx install
启动
emqx start
然后可以使用命令查看emqx的是否已经启动,
emqx_ctl status
安装时可能报错:
这是因为没有安装如下软件导致的,点击如下链接,下载vcredist并安装:https://www.microsoft.com/zh-CN/download/details.aspx?id=40784 如果要停止 EMQ X Broker,使用如下命令:
emqx stop
4、进入控制台
EMQ X 提供了 Dashboard 以方便用户管理设备与监控相关指标。通过 Dashboard,你可以查看服务器基本信息、负载情况和统计数据,可以查看某个客户端的连接状态等信息甚至断开其连接,也可以动态加载和卸载指定插件。除此之外,EMQ X Dashboard 还提供了规则引擎的可视化操作界面,同时集成了一个简易的 MQTT 客户端工具供用户测试使用。
查看我Windows的IP地址,或者直接使用localhost,打开浏览器,直接输入<ip地址或域名>:18083
即可访问到EMQ-X的后台登录界面,默认用户名是 admin
,密码是 public
。
进入控制台后可以将控制台界面换成中文,另外主题也可以切换成白色,然后点击【Apply】即可
修改后可以看到控制台
可以在用户界面修改用户名和密码: