EMQ 9 月 新發 | EMQ X Enterprise 3.4.0 功能概覽

9 月正式開啓,EMQ 發佈了 EMQ X Enterprise 3.4.0 正式版。該版本強化了管理配置和規則引擎功能,新增消息編解碼、集羣熱配置及車聯網協議支持,設計了全新的管理監控 Dashboard 頁面,是目前企業應用推薦使用的穩定版本。前端

相關安裝包已在 EMQ 官網 開放下載,同時官網提供 License 免費自助申請試用、在線購買 License 受權服務。git

EMQ X Enterprise 企業級物聯網 MQTT 消息平臺,支持百萬級物聯網設備一站式接入、MQTT&CoAP 多協議處理、低時延實時消息通訊。支持基於 SQL 的內置規則引擎,靈活處理/轉發消息到後端服務,存儲消息數據到各類數據庫,或橋接 Kafka、RabbitMQ、Pulsar 等企業中間件。github

EMQ X Enterprise 適用於各類物聯網應用場景,助企業快速構建物聯網應用,並支持公有云、私有云、物理機、容器/K8S 任意部署。sql

全新的 Dashboard UI

在以往版本的 EMQ X 裏 EMQ 圍繞 MQTT 消息接入,拓展了一系列方便快速構建物聯網應用的基礎功能,如認證鑑權/ACL,數據持久化和消息橋接(企業版)並集成至 Dashboard 中。數據庫

爲了支撐更多新功能的引入及功能引入後系統易用性、監控管理能力的同步改進提高,EMQ 開發團隊率先針對企業版設計了全新的 Dashboard UI,對界面風格、操做性、應用結構和數據展現重點進行了調整,致力於打造一個功能全面的 IoT Hub 管理平臺:後端

  • 實現對 EMQ X 集羣狀態全面掌控,增長關鍵運行指標實時展現界面;
  • 提供運行指標匯聚統計與持久化記錄並前端展現,集羣歷史消息、鏈接、主題、訂閱指標一目瞭然;
  • 強化商業功能,展現 License 受權信息包括簽發公司、受權線數、到期日期,企業運維使用更加方便快捷;
  • 實現基礎的設備管理功能,簡化鏈接信息,支持在線踢出設備、查看並管理設備訂閱信息,手動添加訂閱關係等;
  • 優化規則建立步驟、提供建立嚮導方便企業快速學習掌握,明確規則引擎應用關係;
  • 新增告警管理,全局展現當前告警條數,提供歷史告警記錄排查,便於發現問題、解決問題規避告警帶來的風險。

Dashboard 支持熱配置參數

在 3.4.0 以前全部對 EMQ X 主要配置 etc/emqx.conf 進行的修改都須要重啓才能應用,好比匿名認證(allow_anonymous)、ACL 開關與策略(enable_acl)、鏈接統計(enable_stats)等等都存在不停機更改的需求。安全

EMQ 評估後列舉了數十項不會影響系統穩定性可是存在熱配置需求的配置項,同時在 Dashboard 與 REST API 中提供了熱配置功能。網絡

Dashboard 支持集羣管理

此版本中 Dashboard 新增了針對集羣的管理操做功能,可視化界面在手動集羣模式下提供集羣的邀請加入、踢出功能;其餘自動集羣的模式下下展現了集羣參數,極大的方便了監控管理和新節點的參考配置工做。架構

強大的 Schema Registry

物聯網應用中爲了兼顧網絡傳輸性能與設備處理能力,不少底層設備通訊依賴的消息數據都是較爲底層、精簡的格式,Broker 須要處理編解碼各類壓縮的二進制數據格式、行業專有的數據格式甚至是私有數據格式。框架

以往的處理方案是將這類數據橋接到應用系統中,應用系統編解碼處理後再發送回 Broker 進行處理,整個架構集成起來十分複雜,存在處理時延較高、處理邏輯不清晰的問題。

爲解決這一痛點 EMQ 設計開發出一套 Broker 內置的、實時的編解碼系統 Schema Registry 。Schema Registry 支持 Avro, Protocol Buffers 和第三方編解碼服務報文解析。

Schema 與規則引擎結合使用示意圖:

目前 EMQ X 支持三種協議解析方式:

  • Avro 是一種遠程過程調用和數據序列化框架,是在 Apache 的 Hadoop 項目以內開發的。它使用 JSON 來定義數據類型和通信協議,使用壓縮二進制格式來序列化數據,EMQ X Enterprise 內置支持;
  • Protocol Buffers 是一種輕便高效的結構化數據存儲格式,能夠用於結構化數據串行化,或者說序列化。它很適合作數據存儲或 RPC 數據交換格式。可用於通信協議、數據存儲等領域的語言無關、平臺無關、可擴展的序列化結構數據格式,EMQ X Enterprise 內置支持;
  • 第三方編解碼服務是經過 TCP、HTTP 通訊向外置編解碼服務傳遞原始報文數據,等待返回編解碼後的數據然後進行後續邏輯,第三方服務能夠是自建的編解碼網關甚至能夠是目前雲計算中火熱的 Serverless 應用。

上圖所示咱們新建了一個編解碼服務,該服務在規則引擎中這樣使用:

SELECT decode('schema:1.0', payload) as payload
FROM 
	"message.publish"
WHERE
	topic =~ 't/#'

使用 Schema Registry 結合規則引擎功能,在規則引擎中直接經過 decode、encode 函數調用建立好的編解碼規則,這一過程極大的簡化消息應用的集成能力。

車聯網中國國標協議 JT/T808 的支持

新增車聯網協議接入 JT/T808,全稱 《JT/T 808 - 2013 道路運輸車輛衛星定位系統 北斗兼容車載終端通信協議技術規範》,該協議是行業性較強的通訊協議。經過該協議的適配,EMQ 創建起了完整的行業/私有協議接入開發模式,爲後續其餘協議定製開發提供了成功的模板。

JT/T808 協議接入架構示意圖:

新版本功能規劃

將來版本中,Dashboard 的功能將被繼續加強,計劃持續進行調整優化實現如下功能改進:

  • 優化插件配置功能:出於安全性考慮目前 Dashboard 上進行的插件配置不會持久化至 Broker,穩定的配置須要調試成功後手動寫入到配置文件。隨着 Dashboard 及相關 API 安全性的提高,後續 EMQ 計劃將界面上的插件配置進行持久化,大部分場景下無需再對配置文件進行額外操做;
  • 提供插件功能管理界面:目前 Dashboard 對插件的管理僅限於進行配置,衆多插件如 emqx_auth_clientid、emqx_auth_username、emqx_configs 除了基礎配置外還有相應的業務功能和使用方式,EMQ 將逐一在 Dashboard 中適配開發,提供插件的配置與使用界面;
  • 插件熱安裝與熱升級:在 Dashboard 中上傳二進制插件包,實現不停機的插件安裝、升級,熱安裝熱升級主要用於應對 EMQ X 的重要修復和小規模功能升級;
  • 自定義告警實現:後續將支持用戶自定義告警規則與告警觸發方式,實現告警提醒不離線。

更多信息請訪問咱們的官網 emqx.io,或關注咱們的開源項目 github.com/emqx/emqx ,詳細文檔請訪問 官方文檔

相關文章
相關標籤/搜索