全台最快的MQTT上線了(<-廣告用詞),大家不用再跑澳門emqx,也不用打名子超長的eclipseprojects
享用小霸王實驗室所建立的台灣最快最穩(<-廣告用詞)由HiveMQ所架設的MQTT Broker,完全免費~以後也不會收費
直接在MQTT Broker輸入
位址:mqttgo.io
port:1883
不須帳號密碼,Topic自己取,也可以用中文Topic喔。
Websocket也即將開通喔~

本筆記將說明如何在ubuntu安裝HiveMQ CE,可以分成以下五個步驟

一、安裝HiveMQ CE

二、安裝相關Plug-in

三、安裝Prometheus監測軟體

四、安裝Grafana數據化面板

五、設定所有服務為開機自動執行


一、安裝HiveMQ CE

1. Update系統:
sudo apt-get update
sudo apt-get upgrade -y

2. 建議安裝Chromium(此為個人習慣,與本安裝無關):
sudo apt-get install chromium-browser

3. 安裝Java環境:
sudo apt-get install default-jre -y default-jdk -y

4. HiveMQ CE版原始檔網址:https://github.com/hivemq/hivemq-community-edition
直接下載執行檔,解壓縮後,放到Home目錄下
image

解壓縮後,進入資料夾

cd hivemq-ce-<version>/bin
並執行命令即可啟動mqtt

. run.sh

image

image

此時可以利用MQTTLENS(Chrome搜尋MQTTLENS安裝此應用程式),使用localhost:1883進行測試

訂閱並推播同一個主題,看看是否能收到資料,如果有的話,就算完成基礎的MQTT Broker的安裝了。

image

目前這個Broker仍屬於最基本的服務,建議完成第二步驟的插件安裝


二、安裝相關Plug-in

本部份預期安裝兩個插件:Prometheus效能檢視、denywildcard禁止瀏覽目錄安全套件
Prometheus:https://www.hivemq.com/extension/prometheus-extension/
denywildcard:https://www.hivemq.com/extension/deny-root-wildcard-subscriptions-extension/
下載後,解壓縮放置到hive資料夾的extension內,加上原本的allow-all-extension,這樣就一共三個

image

視需要進行修改設定檔,開啟Prometheus-extension資料夾內的設定檔prometheusconfiguration.properties,其中port=9399、metric_path=/metrics,代表這個服務會建立在localhost:9399/metric下。

image

使用Ctrl+C,關閉HiveMQ服務,並重新啟動,即可啟動插件服務

image

Prometheus啟動後,我們可以到localhost:9399/metric查看數據
image

這些數據為文字方式,不好辨識,因此我們需要再安裝圖形界面,第一個是Prometheus的Web服務,然後是Grafana數據化面板,請參考第三第四節

到這裡為止,其實1883的Broker已經可以正常運作了,如果要新增WSS(WebSocket)的話,可以開啟hivemq資料夾內的conf資料夾的檔案config.xml

並將以下內容加入到原本的listeners區段

------------------------------
    <websocket-listener>
          <port>8000</port>
          <bind-address>0.0.0.0</bind-address>
          <path>/mqtt</path>
          <name>my-websocket-listener</name>
          <subprotocols>
              <subprotocol>mqttv3.1</subprotocol>
              <subprotocol>mqtt</subprotocol>
          </subprotocols>
          <allow-extensions>true</allow-extensions>
    </websocket-listener>

------------------------------

image

存檔後,重新開啟HiveMQ,就可以使用8000進行WSS通訊了


三、安裝Prometheus監測軟體
接下來要啟動Prometheus的Web服務,請至此處下載:https://prometheus.io/download/,下載需要的版本

image

下載後,一樣解壓縮到Home底下
image

如須設定相關內容,請開啟資料夾內的prometheus.yml,修改資料來源為上面localhost:9399,所以改為9393,完成修改後存檔。

image

執行方式:直接點兩下執行檔prometheus即可執行。

image

此時可以利用瀏覽器開啟:localhost:9090,在中間空白處輸入hive就可以列出hiveMQ的相關數據欄位,如果沒有列出hive的任何數據,請檢查上面的設定port是否相符。

此處我選擇incoming_publish_count作為監測內容,選擇後,按下右側的Execute按鈕。

image

並選擇Graph,就可以看到即時數據。

image

不過這個圖表數據不會自己更新,也不能存檔,所以沒什麼屁用。安裝這個的真正原因是要把數據再傳給下面這個Grafana來顯示


四、安裝Grafana數據化面板

執行以下命令進行安裝
sudo apt-get install -y apt-transport-https software-properties-common wget -y
wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
sudo apt-get update
sudo apt-get install grafana

以下命令則為啟動本服務命令

sudo systemctl daemon-reload
sudo systemctl start grafana-server

接著我們開啟localhost:3000,即可開啟Grafana網站。第一次登入使用admin/admin登入,然後會馬上要求輸入後續的登入密碼

image

進入主功能區

image

加入prometheus資料來源

image

在URL處輸入prometheus的網址:http://localhost:9090,其餘不用變更,直接按最下面的Save and Test

image

完成後,即會出現資料來源沒問題的訊息

image

加入一個Dashboard圖表,並選New Panel

image

下方加入一個要監測的欄位後,點選+Query,確認數據是否正確,最後按右上的Apply即可完成第一個監測圖表

image

可以依據需求加入多個圖表,但記得對Dashboard存檔

image

作到這裡系統不僅可以正常運作,也可以有系統運作的數據畫面。

最後一步就是將上面三個服務都設定為自動啟動。


五、設定所有服務為開機自動執行

確認上面的設定都沒問題後,我們可以將所有服務都設定為自行啟動。包括
1. HiveMQ CE
2. prometheus
3. Grafana

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 夜市 小霸王 的頭像
    夜市 小霸王

    夜市小霸王

    夜市 小霸王 發表在 痞客邦 留言(0) 人氣()