EMQX基本安裝與使用


一、EMQX官網

官網地址: https://www.emqx.io/zh

image

文檔地址: https://www.emqx.io/docs/zh/v4.4/getting-started/getting-started.html

image

二、EMQX介紹

2.1 概覽

EMQX (Erlang/Enterprise/Elastic MQTT Broker) 是基於 Erlang/OTP 平台開發的開源物聯網 MQTT 消息服務器。

Erlang/OTP是出色的軟實時 (Soft-Realtime)、低延時 (Low-Latency)、分布式 (Distributed)的語言平台。

MQTT 是輕量的 (Lightweight)、發布訂閱模式 (PubSub) 的物聯網消息協議。

EMQX 設計目標是實現高可靠,並支持承載海量物聯網終端的 MQTT 連接,支持在海量物聯網設備間低延時消息路由:

  1. 穩定承載大規模的 MQTT 客戶端連接,單服務器節點支持 200 萬連接。
  2. 分布式節點集群,快速低延時的消息路由。
  3. 消息服務器內擴展,支持定制多種認證方式、高效存儲消息到后端數據庫。
  4. 完整物聯網協議支持,MQTT、MQTT-SN、CoAP、LwM2M、WebSocket 或私有協議支持。

2.2 消息服務器功能列表

  • 完整的 MQTT V3.1/V3.1.1 及 V5.0 協議規范支持
    • QoS0, QoS1, QoS2 消息支持
    • 持久會話與離線消息支持
    • Retained 消息支持
    • Last Will 消息支持
  • MQTT/WebSocket TCP/SSL 支持
  • HTTP 消息發布接口支持
  • $SYS/# 系統主題支持
  • 客戶端在線狀態查詢與訂閱支持
  • 客戶端 ID 或 IP 地址認證支持
  • 用戶名密碼認證支持
  • LDAP、Redis、MySQL、PostgreSQL、MongoDB、HTTP 認證集成
  • 瀏覽器 Cookie 認證
  • 基於客戶端 ID、IP 地址、用戶名的訪問控制 (ACL)
  • 多服務器節點集群 (Cluster)
  • 支持 manual、mcast、dns、etcd、k8s 等多種集群發現方式
  • 網絡分區自動愈合
  • 消息速率限制
  • 連接速率限制
  • 按分區配置節點
  • 多服務器節點橋接 (Bridge)
  • MQTT Broker 橋接支持
  • Stomp 協議支持
  • MQTT-SN 協議支持
  • CoAP 協議支持
  • LwM2M 協議支持
  • Stomp/SockJS 支持
  • 延時 Publish ($delay/topic)
  • Flapping 檢測
  • 黑名單支持
  • 共享訂閱 ($share/:group/topic)
  • TLS/PSK 支持
  • 規則引擎
    • 空動作 (調試)
    • 消息重新發布
    • 橋接數據到 MQTT Broker
    • 檢查 (調試)
    • 發送數據到 Web 服務

三、安裝

EMQX支持各個系統的安裝(官網也有安裝教程)(筆者這里選擇centos 7 zip壓縮包安裝)

image

3.1 下載壓縮包(筆者選擇 centos 7 v4.1.5)

下載地址: https://www.emqx.com/zh/downloads-and-install?product=broker&version=4.1.5&os=Centos7&oslabel=CentOS 7

image

3.2 安裝步驟

# 1. 下載 emqx-centos7-v4.1.5.zip (自己下載壓縮包,上傳至centos7中也可)
wget https://www.emqx.com/zh/downloads/broker/4.1.5/emqx-centos7-v4.1.5.zip

# 2. 安裝 -> 解壓縮
unzip emqx-centos7-v4.1.5.zip

# 3. 運行 -> 進入解壓后的文件夾下
./bin/emqx start

運行

image

查看狀態

image

停止

image

四、打開可視化dashboard

地址為: http://ip地址:18083/ (默認賬號: admin 密碼: public)

image

可設置為中文

image

五、配置 EMQX 服務器 用戶名/密碼登錄

5.1 停止服務

./bin/emqx stop

5.2 編輯用戶名密碼的配置文件

# 在emqx 目錄下執行
vim ./etc/plugins/emqx_auth_username.conf 

增加用戶名、密碼,密碼算法改為plain,透傳

image

5.3 關閉匿名登錄

vim ./etc/emqx.conf

查找allow_anonymous,修改為false

image

5.4 啟動emqx服務

./bin/emqx start

5.5 進入后台管理界面dashboard,啟動用戶名密碼認證。

http://服務器IP:18083

image

六、使用MQTTX連接

image

image

image

image

image

七、EMQX服務器動態添加用戶密碼

CLI命令

啟動emqx_auth_username插件后,可以使用CLI命令管理username

 ./bin/emqx_ctl users help

image


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM