zoukankan      html  css  js  c++  java
  • LiteOS云端对接教程02-使用EMQ-X搭建私有MQTT服务器

    1. EMQ X

    EMQ X与emqttd的关系

    EMQ X全称Erlang/Enterprise/Elastic MQTT Broker,它是基于Erlang/OTP语言平台开发,支持大规模连接和分布式集群,发布订阅模式的百万级开源MQTT消息服务器。

    说起EMQ-X,其它的前身就是emqttd消息服务器,自emqttd 3.0 版本起更名为EMQ-X。

    EMQ X

    EMQ X支持的协议

    EMQ X 消息服务器完整支持 MQTT V3.1/V3.1.1/V5.0 版本协议规范,并扩展支持 MQTT-SN 、WebSocket、CoAP、LwM2M、Stomp 以及私有 TCP/UDP 协议。

    其中,MQTT-SN、CoAP 协议已在2.0-rc.1版本发布,LwM2M、LoRaWan 协议在 3.0 版本中发布。

    EMQ X支持的部署平台

    EMQ X 的每个版本都提供如下平台的软件包:

    • Linux:CentOS、Ubuntu、Debian、FreeBSD、OpenSUSE
    • MacOS
    • Windows

    部署时直接在官方下载链接下载zip压缩包,解压后直接运行即可。

    另外,EMQ X 还提供Docker镜像,可以在Docker中直接部署。

    关于各个平台的部署方法,可以参考官方部署文档,本文中只讲述如何在Linux服务器上使用zip方式部署和使用docker方式部署,本文所使用的是腾讯云服务器,配置1核2G,系统是Ubuntu 18.04 64位。

    2. 使用zip压缩包部署

    使用v3.1.0版本,其它高版本测试有问题!

    获取zip包下载链接

    访问官方下载链接,选择需要下载的版本和系统,之后复制下载链接:

    获取下载链接

    下载软件包

    登录云服务器,使用wget工具下载:

    wget <刚刚复制的下载链接>
    

    比如这里我的下载命令是:

    wget https://www.emqx.io/downloads/broker/v3.1.0/emqx-ubuntu18.04-v3.1.0.zip
    

    下载zip包

    解压zip包

    zip包需要使用unzip工具解压,使用如下命令查询unzip是否安装:

    unzip -v
    

    我的电脑上已安装,所以查询结果如图:

    unzip查询结果

    如果没有查询到,请使用如下命令安装:

    sudo apt-get install unzip
    

    确保已经安装unzip之后,解压刚刚下载的压缩包:

    unzip e<按一下Tab自动补全>
    

    解压zip包

    启动EMQ X

    进入解压出的文件夹:

    cd emqx
    

    然后使用如下命令启动emqx:

    sudo ./bin/emqx start
    

    启动成功之后如图:

    启动成功

    查询一下emqx的状态,检查一下是否真正成功启动:

    sudo ./bin/emqx_ctl status
    

    查询启动成功

    特别注意:如果云服务器默认有安全组配置(阿里云),或者开启了宝塔面板,一定要记得放行如下TCP端口。

    EMQ X 消息服务器默认占用的 TCP 端口包括:

    端口 说明
    1883 MQTT 协议端口
    8883 MQTT/SSL 端口
    8083 MQTT/WebSocket 端口
    8080 HTTP API 端口
    18083 Dashboard 管理控制台端口

    接下来可以跳至第4节,登录后面控制面板。

    3. 使用docker部署

    安装docker

    参考我的博客:Docker-ce最新版在Ubuntu18.04上的安装、更新、卸载方法(存储库方式)

    获取docker镜像

    通过 Docker Hub 获取docker镜像:

    sudo docker pull emqx/emqx:v3.1.0
    

    拉取docker镜像

    启动 docker 容器

    使用如下命令启动docker容器:

    sudo docker run -d --name emqx31 -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:v3.1.0
    

    启动之后如图:

    启动docker容器

    启动之后查看docker进程,检查一下是否运行:

    sudo docker ps
    

    查看docker运行进程

    特别注意:如果云服务器默认有安全组配置(阿里云),或者开启了宝塔面板,一定要记得放行如下TCP端口。

    EMQ X 消息服务器默认占用的 TCP 端口包括:

    端口 说明
    1883 MQTT 协议端口
    8883 MQTT/SSL 端口
    8083 MQTT/WebSocket 端口
    8080 HTTP API 端口
    18083 Dashboard 管理控制台端口

    停止docker服务

    如果不需要使用EMQ-X,使用如下命令停止docker服务:

    sudo docker stop <查看到的进程号>
    

    如图:

    停止docker服务

    4. 访问DashBoard并进行简单设置

    访问DashBoard

    访问http://<服务器ip地址或域名>:18083即可访问到EMQ-X的后台登录界面,使用用户名admin和密码public登录:

    登录界面

    登陆成功之后,后台界面如图:

    后台界面

    语言和主题设置

    默认是英文和dark-themes,可以在setting界面进行更改:

    设置界面

    中文界面如下:

    中文界面

    用户设置

    刚刚登录面板使用的是默认用户名和密码,安全起见,可以在user界面修改:

    设置用户名和密码

  • 相关阅读:
    Vue 2.x windows环境下安装
    VSCODE官网下载缓慢或下载失败 解决办法
    angular cli 降级
    Win10 VS2019 设置 以管理员身份运行
    XSHELL 连接 阿里云ECS实例
    Chrome浏览器跨域设置
    DBeaver 执行 mysql 多条语句报错
    DBeaver 连接MySql 8.0 报错 Public Key Retrieval is not allowed
    DBeaver 连接MySql 8.0报错 Unable to load authentication plugin 'caching_sha2_password'
    Linux系统分区
  • 原文地址:https://www.cnblogs.com/bearpi/p/12383189.html
Copyright © 2011-2022 走看看