CentOS9操作系统安装EMQX5.8.9最后一个开源版 业务的需要接入连接数较多也曾考虑过mosquitto主要考虑的是持久化存储的问题后来还是选择了开源版EMQX因为有别的方式可以实现持久化到mysql数据库中没选择其他数据库的原因也是因为一直在用mysql免费的穷人家要什么自行车。Mosquitto 是一个小型轻量的开源 MQTT Broker由 C/C 语言编写。Mosquitto 采用单核心单线程架构支持部署在资源有限的嵌入式设备接入少量 MQTT 设备终端并实现了 MQTT 5.0 和 3.1.1版本协议。EMQ X 与 Mosquitto 均完整支持了 MQTT 协议特性但 EMQ X 支持更多通信协议以及私有协议接入。应用层的功能拓展方面Mosquitto 缺乏开箱即用的如认证鉴权、规则引擎、数据持久化与高性能消息桥接EMQ X 企业版等业务相关功能 监控运维与可视化管理方面 EMQ X 有完整的现有功能和拓展方案支持基础功能上 Mosquitto 集群功能羸弱官方和第三方实现的集群方案均难以支撑物联网大规模海量连接的性能需求。因此 Mosquitto 不适合用来做规模化服务的 MQTT Broker但由于其足够轻量精简可以运行在任何低功率单片机包括嵌入式传感器、手机设备、嵌入式微处理器上在物联网边缘消息接入上是较好的技术选型结合桥接功能能够实现消息的本地处理并透传至云端。————————————————主要是参考了CSDN博主「香菜」的原创文章原文链接https://blog.csdn.net/perfect2011/article/details/126520919再加上以前在单位Windos工作站上安装的也是EMQX不想费事了。第一步连接服务器并切换管理员服务器如同无头骑士一般只接主机电源、网线鼠标键盘显示器一概都摘走所以需要远程接入。一般我用MobaXterm软件通过 SSH会话 接入 CentOS 9 服务器。连接成功后先输入以下命令并回车切换到root管理员用户如果已经是root用户可跳过sudo -s第二步下载并运行官方安装脚本EMQX 官方提供了一个自动脚本可以一键配置软件源并安装。在终端中输入以下命令curl -s https://assets.emqx.com/scripts/install-emqx-rpm.sh | sudo bash这个命令会从 EMQX 官网下载一个安装脚本并自动执行。它会帮你完成添加 EMQX 的软件源repository等准备工作。第三步安装 EMQX上一步的脚本执行完毕后再用包管理工具yum来安装 EMQX。输入以下命令sudo yum install emqx -y命令最后的-y表示对所有询问都自动回答“yes”这样安装过程就不需要你手动确认了。第四步启动 EMQX 服务安装完成后需要启动 EMQX 服务。依次执行以下三个命令启动 EMQX 服务sudo systemctl start emqx设置 EMQX 开机自启动这样每次服务器重启后EMQX 都会自动运行。sudo systemctl enable emqx检查 EMQX 运行状态确认服务是否成功启动。sudo systemctl status emqx如果看到绿色的active (running)字样就说明启动成功了。第五步配置防火墙如果需要CentOS 9默认 开启了防火墙需要放行 EMQX 的默认端口否则无法从外部访问。在终端中依次执行以下命令# 开放 MQTT 默认端口 1883 sudo firewall-cmd --permanent --add-port1883/tcp # 开放 Web Dashboard 管理后台端口 18083 sudo firewall-cmd --permanent --add-port18083/tcp # 重新加载防火墙规则使配置生效 sudo firewall-cmd --reload执行后可以运行sudo firewall-cmd --list-all来检查端口是否已成功添加。第六步访问 EMQX Dashboard 管理后台一切就绪后就可以通过浏览器访问 EMQX 的图形化管理后台了。在浏览器地址栏输入http://你的服务器IP地址:18083例如如果服务器 IP 是192.168.1.100就访问http://192.168.1.100:18083。默认用户名admin默认密码public重要提示首次登录后系统会强制要求修改默认密码按照提示设置一个安全的新密码即可。