Linux环境(Ubuntu)上搭建MQTT服务器(EMQX )

目录

概述

1 认识EMQX

1.1 EMQX 简介

1.2 EMQX 版本类型

2 Ubuntu搭建EMQX 平台

2.1 下载和安装

2.1.1 下载

2.1.2 安装

2.2 查看运行端口

3 运行Dashboard 管理控制台

3.1 查看Ubuntu上的防火墙

3.2 运行Dashboard 管理控制台


概述

本文主要介绍EMQX 的一些内容,终端介绍如何在Ubuntu上安装EMQX,并可以在第三方电脑上访问该服务器。本文通过实际操作方式,详细记录每个步骤应该注意的要点。

1 认识EMQX

1.1 EMQX 简介

EMQX 是一款开源的大规模分布式 MQTT 消息服务器,功能丰富,专为物联网和实时通信应用而设计。EMQX 5.0 单集群支持 MQTT 并发连接数高达 1 亿条,单服务器的传输与处理吞吐量可达每秒百万级 MQTT 消息,同时保证毫秒级的低时延。

EMQX 支持多种协议,包括 MQTT (3.1、3.1.1 和 5.0)、HTTP、QUIC 和 WebSocket 等,保证各种网络环境和硬件设备的可访问性。EMQX 还提供了全面的 SSL/TLS 功能支持,比如双向认证以及多种身份验证机制,为物联网设备和应用程序提供可靠和高效的通信基础设施。

1.2 EMQX 版本类型

EMQX 有 4 种部署模式,包括两种云服务模式(EMQX Cloud Serverless 和 EMQX Cloud 专有版)和两种自托管模式(EMQX 开源版 和 EMQX 企业版)。以下表格列出了这些部署模式的对比,以帮助您根据业务需求进行选择。想进一步了解具体的功能对比,参考功能对比。

对于非企业级应用,使用EMQX开源版即可,本文也是以该版本作为Demo,介绍其搭建和使用方法。

2 Ubuntu搭建EMQX 平台

2.1 下载和安装

2.1.1 下载

下载地址:

https://www.emqx.io/zh/downloads

打开网站,选择安装环境:

2.1.2 安装

使用如下三个步骤在Ubuntu上安装EMQX:

Step 1: 从软件链接源下载软件包,并装载安装环境

curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | sudo bash

下载完成后,可以看见如下log:

Step-2: 安装软件

sudo apt-get install emqx

Step-3: 运行软件

执行如下代码,如果没有任何信息打印出来,说明EMAX已经正常启动了

sudo systemctl start emqx

2.2 查看运行端口

和EMQX相关的端口有如下这些:

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

查看EMQX的运行端口:

netstat -ap | grep 18083

查看MQTT 协议端口:

netstat -ap | grep 1883

3 运行Dashboard 管理控制台

要在第三方终端上运行Dashboard 管理控制台,必须保证18083端口运行被访问,那么怎么做呢?检查该端口是否被允许外网访问。

3.1 查看Ubuntu上的防火墙

首先确保ufw 已经安装在当前的Ubuntu系统中,如果没有安装,使用如下命令:

sudo apt update
sudo apt install ufw

一种最简单的方式就是关闭防火墙,如果允许外网访问,不建议这样做:

sudo ufw disable

3.2 运行Dashboard 管理控制台

step-1: 查看当前Ubuntu主机的ip,使用命令:

ifconfig 

执行命令后,终端会打印当前主机所有网卡相关的IP信息,找到主机的实际ip,然后在第三方电脑主机上登录

step-2: 登录服务器

打开浏览器,输入相应IP和端口号,就能打开网页了。举个例子,以笔者本人测试主机为例

192.168.1.11:18083


如果安装成功,可以看见如下页面,说明EMQX可以正常工作了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/536878.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

滴滴 Flink 指标系统的架构设计与实践

毫不夸张地说,Flink 指标是洞察 Flink 任务健康状况的关键工具,它们如同 Flink 任务的眼睛一般至关重要。简而言之,这些指标可以被理解为滴滴数据开发平台实时运维系统的数据图谱。在实时计算领域,Flink 指标扮演着举足轻重的角色…

关于分布式微服务数据源加密配置以及取巧方案(含自定义加密配置)

文章目录 前言Spring Cloud 第一代1、创建config server项目并加入加解密key2、启动项目,进行数据加密3、实际项目中的测试server Spring Cloud Alibaba低版本架构不支持,取巧实现无加密配置,联调环境问题加密数据源配置原理探究自定义加密解…

考研C语言复习进阶(2)

目录 1. 字符指针 2. 指针数组 3. 数组指针 3.1 数组指针的定义 3.2 &数组名VS数组名 4. 函数指针 5. 函数指针数组 6. 指向函数指针数组的指针 7. 回调函数 8.三步辗转法 9. 指针和数组笔试题解析 10. 指针笔试题 指针的主题,我们在初级阶段的《指…

短剧在线搜索源码(全网首发)

一个非常哇塞的在线短剧搜索页面,接口已经对接好了,上传源码到服务器解压就能直接用,有能力的可以自己改接口自己写自己的接口 接口文档地址:doc.djcat.sbs 源码下载地址:https://pan.xunlei.com/s/VNstN8C6N3VK1a1k…

C++Qt学习——添加资源文件

目录 1、创建好了文件之后,在左边空白处按下CtrlN,创建Qt 以及Qt Resource File 2、写入名称,点击下一步 3、可以发现已经创建好啦。 4、点击Add Prefix 5、写上前缀,最好加上斜杠 6、选择提前放好的图片或者icon 7、发…

Python中的类【详谈】

零.前言: 本文适合对Python有浅浅了解的读者,并不能作为Python入门使用。 一.Python中类的属性、方法 在Python中有变量,有函数,例如下方: def IAmAFunction():print("I am a function")IAmVariable 25…

查找jdk的安装

方式1:which或者where java which java -- linux where java --windows 方式2: echo 使用echo 打印配置的java home环境变量 echo $JAVA_HOME$ --linux echo %JAVA_HOME% --windows 方式3:使用ls -lrt -a :显示所有文件即目录…

挑战杯 大数据房价预测分析与可视

0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 大数据房价预测分析与可视 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:3分工作量:3分创新点:4分 该项目较为新颖,适合…

【刷题笔记】动态规划

动态规划刷题笔记(基础题) ① 打家劫舍② 删除并获得点数③ 不同路径④ 最小路径和⑤ 不同路径Ⅱ⑥ 统计全为 1 的正方形子矩阵⑦ 最大正方形 ① 打家劫舍 //不在栈内申请内存,防止溢出 int dp[101] {0}; class Solution { public:int rob(…

机器学习笔记 - 用于3D物体检测的KITTI数据集的使用及说明

一、什么是 KITTI 数据集? KITTI 是由卡尔斯鲁厄理工学院和芝加哥丰田理工学院开发的自动驾驶数据集(目前分2012和2015版本)。它是计算机视觉研究中使用的图像和 LIDAR 数据的集合,例如立体视觉、光流、视觉里程计、3D 对象检测和…

【Ubuntu-20.04】OpenCV-3.4.16的安装并对图片与视频处理

【Ubuntu-20.04】OpenCV-3.4.16的安装并对图片与视频处理 一、安装OpenCV-3.4.161.下载OpenCV-3.4.16安装包2.将安装包放到/home,并解压3.使用 cmake 安装 opencv4.配置环境5.查看 opencv 的版本信息 二、处理图片(一)创建文件夹 code &#…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Toggle)

组件提供勾选框样式、状态按钮样式及开关样式。 说明: 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 仅当ToggleType为Button时可包含子组件。 接口 Toggle(options: { type: ToggleType, is…