iOS x IoT ( 4 ) — 建立 MQTT Broker

Syashin Chen
彼得潘的 Swift iOS App 開發教室
5 min readJun 27, 2018

--

IoT picture from https://www.freepik.com/
本系列文旨在實驗一個用iOS App接收資料的微型物聯網(IoT)架構。

上個章節我們成功建立了一個 Ubuntu 系統的 Server,接下來要在這台 Server 裡面建立 MQTT Broker。

忘記 Broker 是什麼?可以點回去連結複習一下!

我們將會使用 Eclipsemosquitto 來建立 Broker。

mosquitto picture from https://mosquitto.org/

mosquitto 是一個非常有名的 open source ( Github連結 ),你可以用它建立一個 MQTT Broker,甚至可以在作業系統裡建立一個 MQTT 客戶端 ( client )它還提供了 WindowsMac 以及各種主流 Linux 系統 ( exDebianFreeBSDUbuntu 等) 的安裝方法

mosquitto 提供了 4Broker 認證方法:無認證帳號 / 密碼預先共享金鑰( Pre-shared Key )、憑證加密,這篇文章會先採用無認證的方式建立。

大致了解一下,我們就開始建立 Broker 吧!

請注意!以下步驟務必使用 Chrome 瀏覽器,方能順利進行。

📕 使用 mosquitto 建立 Broker

1. 在瀏覽器開啟命令列視窗:

打開 Chrome 瀏覽器,進入 GCP 專案VM 執行個體頁面,點選連線底下的:在瀏覽器視窗中開啟選項,就能打開命令列介面 ( 終端機 )。

選擇在瀏覽器視窗中開啟
命令列介面

2. 在命令列視窗中,依序執行以下 command

📍 下載 mosquitto 程式庫:

sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa

📍 更新程式庫:

sudo apt-get update

📍 安裝 mosquitto:

sudo apt-get install mosquitto

📍 確認運行:安裝好後Broker 會自動開始運行。

sudo service mosquitto status

Broker status : running

📗 開啟 Server 防火牆的 Port : 1883

這個步驟非常重要,mosquittoBroker 通訊埠號 ( Port ) 預設為 1883,因此,我們要在 Server 防火牆上開個通道,允許外界透過這個通道MQTT Broker 溝通。

1. 左上方打開資訊欄 ▶️ VPC 網路 ▶️ 防火牆規則。

選擇防火牆規則

2. 建立防火牆規則。

點擊建立防火牆規則

3. 如下圖詳細設定後,點擊建立。

防火牆規則設定

4. 等待一小段時間後,便會建立成功。

Port : 1883 成功開啟

5. 測試:

如果想要測試 Broker 是否能正常運行,可以使用 MQTTLens,它是一個 Chrome 瀏覽器的應用程式,使用方式請參考另一位大大的文章

📝 小結

完成上面的步驟,我們成功在雲端的 Server 裡面建立了 MQTT Broker,下一章,我們將進入 Arduino 裝置的部分,建立一個簡易的溫溼度感測電路

如果您覺得這篇文章還不錯或有幫助請幫我按個一兩下[拍手👏]給我點鼓勵吧!另外,您對文章內容有任何問題或發現錯誤,請不吝指正,強烈歡迎留言討論💬!

--

--

Syashin Chen
彼得潘的 Swift iOS App 開發教室

轉行滿兩年的小RD,喜歡做簡單有趣的東西,常常不小心複雜化。