EMQ MQTT云服务器搭建 - 阿里云轻量应用服务器

Posted Mark_md

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EMQ MQTT云服务器搭建 - 阿里云轻量应用服务器相关的知识,希望对你有一定的参考价值。

玩物联网,当然要自己搭建物联网云平台。一方面可以有更多的功能定制空间,同时学习网络建站,最重要的是运营成本。作为普通开发者,使用阿里云、腾讯云、OneNet等免费实例固然香,但是一旦开通企业版并上线后,费用就会异常高,高到离谱。

自己家庭构建云服务器,受限于没有公网IP,也略麻烦。而使用大厂的云服务器,除了有公网IP,也不用担心断电、断网、外部网络攻击。一键系统部署、在线后台查看、云端系统快照,这些功能也大大方便了用户。总之比自己买硬件建站要方便太多。(确切的说,是比树莓派安装系统还要简单)


下面来组建年轻人的第一台云服务器吧。并运行 EMQ MQTT服务器。


一、购买云服务器

我使用的阿里云,与其最近主推的ECS共享型服务器,明显轻量应用服务器更香。5M网速带宽,SSD系统盘,CPU独享,公网IP。上月限时特价,¥96/年可以连续续三年,果断入了一台。

最近618优惠,套餐好像升级了?变成双核2G?难道之前买早了?

购买后我预装了 ubuntu20.04。管理后台:阿里云 - 云服务器列表
在这里插入图片描述


二、熟悉阿里云服务器管理后台、及基本控制操作


查看服务器IP

打开控制台,启动后,可以看到 公网/内网IP
按照下面方框里的步骤,可以快速搭建应用。
在这里插入图片描述

设置端口、防火墙

防火墙,对外开放的服务端口,老版的界面管这叫安全组。
在这里插入图片描述

远程连接的方式

远程登录有三种方式。

  • 网页连接。(就是个网页的终端,不如直接用终端软件远程连接)
  • 用SSH终端软件通过公网IP连接。(推荐,操作同局域网内的虚拟机连接是一样的)
    在这里插入图片描述
  • 第1种连接方式,网页连接。(感觉别别扭扭的,也没有字符颜色提示,不如用SSH客户端远程连接)
    在这里插入图片描述

一键重置系统

内置了丰富的 应用镜像 和 系统镜像。真 · 一键刷机。
在这里插入图片描述


三、正式配置云服务器并安装EMQ


1、重置云服务器root密码

重置root密码,自己记心里。
在这里插入图片描述

2、SSH远程连接(用MobaXterm)

其他的SSH客户端都可以,用自己习惯的用的。

MobaXterm的原因在于它功能多,SSHFTPVNCSerial这些常用的调试工具它都有,实在讨厌一个功能单独装个exe,这样集成的工具再好不过了。
在这里插入图片描述
MobaXterm的第三步需要从用户组中指定用户。将刚刚重置的 root密码 填入。
在这里插入图片描述
有了,成功连接云服务器主机。
在这里插入图片描述
之后安装emq。
参照emq的官方文档:EMQ 安装


3、安装EMQ(推荐Docker)

安装及测试MQTT的流程可以参照视频:
阿里云服务器购买、安全组端口配置、SSH连接、EMQ Shell脚本一键安装、MQTT.fx测试连接
阿里云服务器,Docker安装EMQ、MQTT.fx测试连接

推荐用Docker安装,但我这几天,阿里云开源镜像站在升级维护,用不了,就勉强用 Shell脚本一键安装,来进行演示。改天重置下系统再用Docker装。
在这里插入图片描述

Shell脚本一键安装

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

SSH终端连接云服务器,复制粘贴命令,回车运行
在这里插入图片描述
在这里插入图片描述
稍作等待,不到一分钟安装完成。
在这里插入图片描述


4、配置云服务器MQTT端口、防火墙

添加端口、防火墙(以前的版本叫安全组)

云服务器默认只开启了 80、443、22 这几个端口。

emqx mqtt 会用到:

  • 1883 端口(MQTT/TCP 协议端口)
  • 8083 端口(MQTT/WebSocket 调试工具的端口)
  • 18083 端口(网页控制台)

将这三个端口依次添加。

需要的配置及端口,详见EMQ文档:EMQ 配置说明
在这里插入图片描述
就这样将3个端口依次添加。
在这里插入图片描述


5、启动EMQ

参照文档:启动 EMQ

emqx start

复制粘贴命令,回车运行。
过程要等待十几秒,直到弹出 successfully ,启动成功。
在这里插入图片描述


6、登录EMQ网页后台管理界面

EMQ启动成功后,用户可根据Web后台去管理MQTT服务器。

根据自己的云服务器公网IP,浏览器输入:139.xxx.xxx.80:18083

回车即可看到EMQ网页后台管理界面。

默认的登录账号为:admin、public
在这里插入图片描述
在这里插入图片描述
将语言切换为中文。
在这里插入图片描述
在这里插入图片描述


7、EMQ - WebSocket 调试调试

WebSocket 相当于Web版的MQTT客户端,主要用来调试,可以 订阅主题、查看MQTT客户端的连接状态 和 MQTT报文消息。

点击连接。
在这里插入图片描述
订阅一条自定义topic。
在这里插入图片描述
接下来配置MQTT.fx客户端,让它连接上云服务器,来模拟客户端连接。

MQTT.fx 现在版本要收费,以前的版本下载不好找:MQTT.fx 1.7.1下载

配置,将云服务器的公网IP填入。ClientId随便填,userName和passWord不需要填写。
在这里插入图片描述
connect连接、订阅与WebSocket相同的topic。
在这里插入图片描述
在EMQ管理后台查看。可以看到在线的设备
在这里插入图片描述
点击客户端名称,还可以查看详情。
在这里插入图片描述


8、收发测试

现在两个客户端已经连接上同一个MQTT服务器,并订阅了相同的主题,所以这两个客户端,都会收到这个Topic发布的消息。

先用WebSocket发布一条消息。{ “msg”: “Hello, World!” }
在这里插入图片描述
MQTT.fx 收到topic内容。
在这里插入图片描述

让MQTT.fx发布一条消息测试。
在这里插入图片描述
WebSocket也能收到相同的内容。MQTT服务器功能测试正常。
在这里插入图片描述


总结

以上就是 EMQ MQTT阿里云服务器搭建 ,两个字:方便。

大多数的篇幅都在介绍使用,而非安装。阿里云一键重置系统、EMQ一键安装 实在太方便了。有这相同的时间,来给树莓派装系统、装FTP、VNC工具都不一定能搞得好。

另外现在还没有买域名,只有公网IP,不好记,是不是固定IP,以后会不会变也说不好。购买个域名并备案,就可以使用域名来连接了。

以上是关于EMQ MQTT云服务器搭建 - 阿里云轻量应用服务器的主要内容,如果未能解决你的问题,请参考以下文章

EMQ X Cloud - MQTT 5.0 公有云服务正式发布

阿里云下Ubuntu18.04安装部署EMQ X 消息服务器

阿里云下Ubuntu18.04安装部署EMQ X 消息服务器

尝试使用开源 MQTT 代理 EMQ 为我的 IoT 项目设置我的 MQTT 云服务

阿里云MQTT服务器搭建与测试(全图文,非常详细)

在云服务器上搭建了mqtt,为啥手机连接不上mqtt,要怎么做才能连接上?求求大神帮忙