<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何在Raspberry Pi樹莓派上安裝Mosquitto部署MQTT服務器呢?

jf_Ufm3lVrj ? 來源:凌順實驗室 ? 2024-03-12 11:29 ? 次閱讀

MQTT 介紹

MQTT代表消息隊列遙測傳輸,是一種網絡消息協議,通常用于物聯網設備之間的消息傳輸。

為了讓我們的Raspberry Pi支持MQTT協議,我們將使用一個名為Mosquitto的服務器軟件。

Mosquitto 是一個消息代理,它實現了多個版本的 MQTT 協議,包括最新的 5.0 版本。

MQTT協議的工作原理是讓客戶機充當發布者和訂閱者。發布者將消息發送給充當中介的代理。

訂閱者連接到MQTT代理并閱讀特定主題下廣播的消息。

您可以使用MQTT讓多個傳感器將它們的數據發送到您的Raspberry Pi的MQTT代理,然后客戶端設備可以接收數據。

如果你想了解更多關于MQTT協議的信息,以及為什么它非常適合樹莓Pi等物聯網設備,請務必查看MQTT官方網站。

樹莓派上安裝 Mosquitto

1,首先 ,需要最新的系統,輸入以下命令:

sudo apt update
sudo apt upgrade

2,運行Mosquitto和Mosquitto客戶端的安裝命令,這樣方便在樹莓派上 進行連接測試:

sudo apt install mosquitto mosquitto-clients

在安裝過程中,包的管理器會自動配置 Mosquitto 服務器在開機時啟動。

安裝完成,此時,您將在您的設備上啟動并運行 Mosquitto MQTT 代理。

3,您可以使用以下命令驗證它是否已安裝并正在運行。

sudo systemctl status mosquitto

此命令將返回“mosquitto”服務的狀態。

如果服務已正常啟動,您應該會看到文本active (running)。

測試MQTT

我們的下一步將是測試該服務是否正常工作,并且現在在我們的 Raspberry Pi 上充當 MQTT 代理。

為此,我們將使用本指南前面安裝的 Mosquitto 客戶端。

對于本節,您將需要打開兩個終端會話到您的 Raspberry Pi(本地或通過 SSH)。

1.我們的首要任務是啟動訂閱者。

訂閱者將監聽我們在 Raspberry Pi 上運行的 MQTT 代理。

我們可以使用我們之前為訂閱者安裝的 Mosquitto 客戶端來執行此操作。

在下面的示例中,我們連接到一個localhost連接并等待來自代理的關于“mqtt/pimylifeup”主題的消息。

mosquitto_sub -h localhost -t "mqtt/pimylifeup"

使用“-h”參數,您可以指定要連接的主機名。在我們的例子中,我們使用安裝在 Raspberry Pi 上的本地 MQTT 代理。

接下來,我們使用“-t”參數告訴 Mosquitto 訂閱者我們應該從 MQTT 代理收聽什么主題。

對于我們的示例,我們正在收聽一個名為“mqtt/pimylifeup”的主題。

2.現在我們已經加載了一個客戶端并正在監聽消息,

讓我們嘗試向它發布一個消息。

我們需要使用之前安裝在 Raspberry Pi 上的 MQTT 發布者客戶端向主題發布消息。

運行以下命令將消息“Hello World”發布到我們localhost服務器的“mqtt/pimylifeup”主題下。

mosquitto_pub -h localhost -t "mqtt/pimylifeup" -m "hello lingshunlab.com"

其中兩個參數與前面的命令相同,“-h”指定要連接的服務器,“-t”指定要發布到的主題。

我們在這里使用的另一個參數是“-m”參數。此參數允許您指定要發送到 Raspberry Pi MQTT 代理的消息。

3.回到您啟動 Mosquitto 發布器的終端會話,

您現在應該會看到 您的消息出現。

因此,如果您按照我們的示例進行操作,您應該會在命令行中看到以下文本。

hello lingshunlab.com

2bd953bc-e01f-11ee-a297-92fbcf53809c.png

測試,mqtt服務器成功。

如果您將mqtt與UFW 等防火墻一起使用,請確保打開端口1883。

設置遠程訪問(無身份驗證)

要啟用遠程訪問以便我們可以與其他物聯網設備進行通信,我們需要編輯/創建一個配置文件。

1)Mosquitto Broker 啟用遠程訪問(無身份驗證)

運行以下命令打開mosquitto.conf文件文件。

sudo nano /etc/mosquitto/mosquitto.conf

2 )使用箭頭鍵移動到文件末尾并粘貼以下兩行:

listener 1883
allow_anonymous true

最后如下圖:

2bff1336-e01f-11ee-a297-92fbcf53809c.png

保存,推出。

3)重啟mosquitto

為了使配置生效,需要重啟mosquitto

sudo systemctl restart mosquitto

或者,直接重啟樹莓派

sudo reboot

這樣就遠程主機就可以通過ip地址遠程訪問mqtt服務器了。




審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2526

    文章

    48110

    瀏覽量

    740122
  • SSH
    SSH
    +關注

    關注

    0

    文章

    177

    瀏覽量

    16077
  • Raspberry Pi
    +關注

    關注

    1

    文章

    552

    瀏覽量

    22054
  • 樹莓派
    +關注

    關注

    113

    文章

    1640

    瀏覽量

    104750
  • MQTT
    +關注

    關注

    5

    文章

    538

    瀏覽量

    21978

原文標題:Raspberry Pi 樹莓派上安裝 Mosquitto部署MQTT服務器

文章出處:【微信號:凌順實驗室,微信公眾號:凌順實驗室】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    何在Raspberry Pi安裝TensorFlow

     在本教程中,我們將學習如何在 Raspberry Pi安裝 TensorFlow,并將展示一些在預訓練神經網絡上進行簡單圖像分類的示例。
    發表于 09-01 16:35 ?1740次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>上<b class='flag-5'>安裝</b>TensorFlow

    【飛騰派4G版免費試用】如何在飛騰開發板上安裝EMQX MQTT服務器

    系統中搭建一個單節點的MQTT服務器。 1. 安裝EMQX 本文演示的環境為: 硬件:飛騰派開發板,ARMV8架構 操作系統:Ubuntu 20.04 EMQX 安裝與運行 下載
    發表于 12-26 11:16

    何在樹莓派上安裝系統

    何在樹莓派上安裝系統
    發表于 11-17 16:17

    Raspberry Pi 3試用體驗】搭建minidlna服務器(結項二)

    `傳送門:【Raspberry Pi 3試用體驗】搭建Samba服務器(結項一)https://bbs.elecfans.com/jishu_900387_1_1.html【Raspberry
    發表于 06-21 12:20

    【Banana Pi M1+試用體驗】在香蕉派上面體驗MQTT. 上

    ## 代理服務器`mosquitto`啟動代理服務器mosquitto -vv: 打印出調試信息, 啰嗦模式## 訂閱者`mosquitto
    發表于 07-28 17:34

    如何外網直接訪問樹莓派上搭建的服務器?

    我在我的樹莓派上用flask搭建了一個服務器,放上了自己的網頁,開放在80端口。但是我樹莓派連接的是寢室的WiFi,并沒有公網IP。我有阿里云的服務
    發表于 07-04 17:55

    【最全】樹莓派(Raspberry Pi)平臺資源合集

    `資源目錄:樹莓派(Raspberry Pi)平臺資源大全樹莓派的硬件及配置使用Unix系統社區與交流資料、項目參考與視頻教程樹莓派(
    發表于 08-29 17:37

    何在樹莓派上安裝鴻蒙系統?

    何在樹莓派上安裝鴻蒙系統?
    發表于 09-29 11:07

    什么是樹莓派(Raspberry Pi

    什么是樹莓派(Raspberry Pi)?樹莓派可以做什么?樹莓派支持的系統有哪些?
    發表于 07-30 06:21

    安裝Raspberry Pi Clock Hat的教程分享

    Raspberry Pi 用于基于服務器的應用程序(如 NAS 服務器、家庭自動化服務器等)的人來說非常有用。這頂帽子支持從
    發表于 07-05 06:01

    通過Mosquitto發布到代理到服務器后如何斷開MQTT?

    我正在處理 MQTT 代碼 (tuanpmt),我想在數據通過 Mosquitto 發布到代理到服務器后斷開 MQTT。 MQTT:發送,類
    發表于 06-12 07:44

    怎么搭建MQTT服務器

    ? ? ??服務器端建議采用Mosquitto 1.14 Broker ( mqtt v3.1),它是一個開源的MQTT 代理??????Eclipse
    發表于 06-11 15:39 ?479次閱讀
    怎么搭建<b class='flag-5'>MQTT</b><b class='flag-5'>服務器</b>

    何在樹莓派上安裝MQTT

    如果要通過mqtt從另一個系統通過網絡/互聯網連接,則需要鍵入主機的IP地址(Broker System,在我們的情況下為Raspberry Pi),然后就可以連接。在圖3中,顯示了來自局域網
    的頭像 發表于 11-04 17:16 ?9843次閱讀
    如<b class='flag-5'>何在</b><b class='flag-5'>樹莓</b><b class='flag-5'>派上</b><b class='flag-5'>安裝</b><b class='flag-5'>MQTT</b>

    Raspberry Pi安裝Android的方法

    可以在樹莓派上輕松安裝 Linux 和 Windows 操作系統,但由于缺乏 Android 的官方支持,在樹莓派上
    的頭像 發表于 09-05 15:10 ?1.6w次閱讀
    在<b class='flag-5'>Raspberry</b> <b class='flag-5'>Pi</b>上<b class='flag-5'>安裝</b>Android的方法

    何在樹莓派4上安裝 openwrt?

    何在 Raspberry Pi 4上安裝 openwrt
    的頭像 發表于 06-07 10:25 ?937次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>