云服务器上MQTT:EMQ服务搭建使用教程

MQTT系列1.1

我自己也是学物联网的,自己制作的小设备不少。
因此想搭建一个平台去管理,之前也根据mqtt库自己通过C#写过几次客户端,可以自己慢慢实现功能,但是总归不完善,而且那时候.net core也没正式出来,.net framework也不跨平台。因此自己写了一段时间就落下了。

选择EMQ的原因

目前MQTT协议的服务端里面第一个知道的就是EMQ,接触了一下发现功能还挺全的,就想着使用一段时间时间后分享一下。

选择服务器

现在手头上面有两台云服务器,分别是放个人网站的华为云和一台便宜买的阿里云的。
自己家里也有好多电脑。
至于选择云服务器做MQTTserver主要是以下几点优点:
1.有公网ip(自己电脑有动态的公网IP,要需要做DDNS,又多了一步,较为麻烦。)
2.可以用域名做跳转
3.方便做备份
4.随时随地都能访问,方便上传数据(手机电脑访问较为方便)
5.省电

选择自己的EMQ版本

以下是三种EMQ X产品的功能点对比图,Broker 是免费版本,商业版和平台版本是要付费的。

官网地址:https://www.emqx.io/cn/

文档地址:https://docs.emqx.io/broker/latest/cn/tutorial/device-management.html

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装

EMQ X 目前支持的操作系统:

Centos6 Centos7 OpenSUSE tumbleweed Debian 8 Debian 9 Debian 10 Ubuntu 14.04 Ubuntu 16.04 Ubuntu 18.04 macOS 10.13 macOS 10.14 macOS 10.15 Windows Server 2019 产品部署建议 Linux 服务器,不推荐 Windows 服务器。 支持以下多种安装方式

在这里插入图片描述

Shell 脚本一键安装 (Linux) 安装的是EMQ X Broker的版本

curl https://repos.emqx.io/install_emqx.sh | bash

以下是cmd窗口的输出

//安装开始

% Total % Received % Xferd Average Speed Time Time Time Current

Dload Upload Total Spent Left Speed

100 2031 100 2031 0 0 1003 0 0:00:02 0:00:02 –:–:– 1003

Loaded plugins: fastestmirror

Determining fastest mirrors

epel/x86_64/metalink | 7.5 kB 00:00:00

* base: mirror.bit.edu.cn

* epel: mirrors.yun-idc.com

* extras: mirrors.tuna.tsinghua.edu.cn

* updates: mirrors.bfsu.edu.cn

base | 3.6 kB 00:00:00

epel | 4.7 kB 00:00:00

extras | 2.9 kB 00:00:00

updates | 2.9 kB 00:00:00

(1/7): base/7/x86_64/group_gz | 153 kB 00:00:00

(2/7): base/7/x86_64/primary_db | 6.1 MB 00:00:00

(3/7): epel/x86_64/group_gz | 95 kB 00:00:01

(4/7): epel/x86_64/updateinfo | 1.0 MB 00:00:00

(5/7): epel/x86_64/primary_db | 6.8 MB 00:00:00

(6/7): extras/7/x86_64/primary_db | 165 kB 00:00:00

(7/7): updates/7/x86_64/primary_db | 120 kB 00:00:00

//中间部分省略

.

.

.

.

Installed:

emqx.x86_64 0:4.0.6-1.el7

Complete!

EMQ X install success

//安装完成

出现以上语句,EMQ x Broker 就安装完成了

启动 EMQ X Broker

原文链接: 启动地址.

启动 EMQ X
后台启动 EMQ X

$ emqx start EMQ X v4.0.0 is started successfully!

第一次启动会等稍微久一点的

在这里插入图片描述

关闭 EMQ X

$ emqx stop ok

在这里插入图片描述

systemctl 启动

$ sudo systemctl start emqx EMQ X v4.0.0 is started successfully!

与官网写的不一致,但是通过查看状态的命令,发现也是能成功启动的,就是没有输出。

在这里插入图片描述

service 启动

$ sudo service emqx start EMQ X v4.0.0 is started successfully!

查看 EMQ X 的状态

EMQ X 正常启动:

$ emqx_ctl status Node 'emqx@127.0.0.1' is started emqx 4.0.0 is running

EMQ X 未能正常启动:

$ emqx_ctl status Node 'emqx@127.0.0.1' not responding to pings。

你可以查看 logs 下的日志文件并确认是否属于 常见错误。

其他命令

在这里插入图片描述

网页查看

网页打开安装的服务器的18083端口,这个端口是MQTT的网页端口。
可能会连接不上,这个时候就要去检查,华为云或者阿里云的安全策略里面,18083端口是否正确打开。

在这里插入图片描述

通过宝塔面板进行端口放行。

在这里插入图片描述

如果显示端口是处于正常状态的,那就说明此时是有程序在占用这个端口的。

在这里插入图片描述

此时再去刷新原来的页面,就能进入了。

在这里插入图片描述

初始用户名是:admin
初始密码是:public
输入之后就能登陆了。

登陆后的第一件事,就是去创建新的账户或者修改admin的初始密码,否则不安全。

在这里插入图片描述

纵观整个页面,能看到就算是免费的EMQ X Broker 也提供了非常丰富的接口和管理。此外也提供了很多插件可以选择。

在这里插入图片描述

本文结束

原文链接:https://www.bilibili.com/read/cv7357293/

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享