阿里云服务器ECS搭建EMQ快速实现MQTT通信


一、简介

  为了实现树莓派采集传感器数据存入云服务器的需求,学习如何在阿里云ECS部署EMQ,通过其实现与树莓派和PC的数据通信。
EMQ

二、环境准备

  环境准备分为树莓派、阿里云ECS、PC三方面。

1、树莓派

  • 型号:树莓派4b
  • 操作系统:2021-01-11-raspios-buster-armhf-full
  • MQTT:mosquito-1.5.5

 关于树莓派如何安装mosquito请看上一篇树莓派使用mosquito实现订阅发布

2、阿里云ECS

  我的阿里云服务器是通过阿里云高校计划免费领的两个月,算是学生党的福利。
在这里插入图片描述
阿里云配置

  • 操作系统:CentOS 8.0 64位
  • CPU&内存:2核 4 GiB

3、PC

  • 操作系统:Windows10 20H2
  • MQTT客户端:MQTTX.1.5.2

三、ECS搭建部署EMQ

  此次部署的EMQ采用的是EMQ X EnterpriseEMQ X Enterprise免费试用的License:下载链接:License下载

1、EMQ X Enterprise的安装

点击上方下载链接,按照自己对应的操作系统进行选择,获取License
EMQ
安装命令:

# 如果有安装过其他版本的EMQ,需要先进行卸载
sudo yum remove emqx emqx-edge emqx-ee

# 卸载完成后,即可进行正式安装
# 1. 下载 emqx-ee-centos8-4.2.5-x86_64.rpm SHA256
wget https://www.emqx.cn/downloads/enterprise/v4.2.5/emqx-ee-centos8-4.2.5-x86_64.rpm

# 2. 安装
rpm -ivh emqx-ee-centos8-4.2.5-x86_64.rpm

# 3. 运行
sudo emqx start

其他辅助命令:

# 查看EMQ的状态
emqx_ctl status

# 后台启动 EMQ X Broker
emqx start

# 关闭 EMQ X Broker
emqx stop

# 重启 EMQ X Broker;
emqx restart

2、添加License文件

①、通过注册登录,即可成功下载license.zip文件,将其解压至桌面。
license
②、通过xftp将我们需要的emqx.keyemqx.lic这两个文件上传至ECS的/etc/emqx/目录下
xftp
另外xftp新建会话的时候注意协议选择SFTP,不然连接不上。
新建会话
③、执行emqx_ctl license reload命令更新 License 文件
在这里插入图片描述
此时ECS算是正式成功部署EMQ。

四、MQTT通信

  EMQ部署成功,下一步就是用其实现通信。

1、准备工作

  因为阿里云服务器有安全组设置,也就是防火墙,它会限制端口的使用,我们需要将其手动开放,下图就是一般常用的端口开放:
在这里插入图片描述
  打开http://localhost:18083/ ,测试是否能够成功登录EMQDashboard,初始账号:admin,密码:public
在这里插入图片描述
  登录成功后,我们可以在websocket页面中进行订阅发布的测试。
websocket

2、树莓派通信

树莓派通信
1、在树莓派中开启MQTT服务

mosquitto -v

2、在云服务中订阅消息

mosquitto_sub -v -t gpio -h 192.168.1.110
# -h指定MQTT代理服务器主机,指向PC机IP地址192.168.1.110

3、在树莓派中发布消息

mosquitto_pub -t gpio -h 192.168.1.110 -m "{\"pin\":17,\"value\":0}"
# -h指定MQTT代理服务器主机,指向PC机IP地址192.168.1.110

3、PC通信

PC通信
①、PC打开MQTTX新建客户端,与服务器进行连接。
在这里插入图片描述
②、通过添加订阅,可以接收到相关主题发布的信息,通过设定主题点击发送即可将设置好的信息进行发送。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TomLazy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值