Help us understand the problem. What is going on with this article?

MacとRaspberryPiにMosquitto入れてみた

More than 1 year has passed since last update.

はじめに

仕事でMQTTを使うことになり、手軽にMQTTが扱えるらしいMosquittoについて調べました。
既に様々な方が同様のMosquittoの導入記事をまとめていますが、Macとラズパイで微妙に導入方法が違ったりで、私自身が多少迷ったので、備忘録もかねて記事にします。
MQTTとは何かについては、ここでは触れませんので、ぐぐって見てください。

Mosquittoのインストール

Macの場合

Homebrewを使ってインストールできます。

brew install mosquitto

以下のパスにソフトがそれぞれインストールされます。

  • mosquitto(ブローカー):/usr/local/opt/mosquitto/sbin
  • mosquitto_sub(購読用):/usr/local/opt/mosquitto/bin
  • mosquitto_pub(配信用):/usr/local/opt/mosquitto/bin

これらのパスは、環境変数のPathに追加しておきます。

RaspberryPiの場合

ラズパイというかLinuxの場合ですが、以下のコマンドでMosquittoをインストールできます。

# Mosquitto(Broker)をインストールします。
sudo apt-get install mosquitto

# Mosquittoクライアントをインストールします。
sudo apt-get install mosquitto-clients

ブローカーの起動

ブローカーは、MQTT通信を仲介するサーバーです。一般的には、AWS IoT等のクラウドサービスを利用すると思いますが、あくまで動作確認のため、ここでは、MacまたはRaspberryPiで起動します。どちらで起動しても良いです。1つあれば良いので、両方同時に起動する必要はありません。
また、次の動作確認のステップで必要になるので、ブローカー端末のIPアドレスをメモに控えておいてください。

Macの場合

以下のコマンドでMosquittoのブローカーを起動します。

mosquitto

RaspberryPiの場合

以下のコマンドでMosquittoのブローカーを起動します。

sudo service mosquitto status

動作確認

上記の手順でMosquittoをインストールすると、一緒に購読用と配信用の簡易クライアントもインストールされます。簡易クライアントで動作を確認します。
説明のため、以下のようにします。

  • ブローカーのIPアドレス:192.168.11.18
  • トピック名:tp1/test
  • 配信メッセージ:Hello

購読用端末のターミナルを開いて、以下のコマンドでトピックを購読します。
購読用端末はブローカーと同じ端末でも問題ありません。

mosquitto_sub -h 192.168.11.18 -t tp1/test

配信用端末のターミナルを開いて、以下のコマンドでトピックにメッセージを配信します。
配信用端末はブローカーと同じ端末でも問題ありません。

mosquitto_pub -h 192.168.11.18 -t tp1/test -m Hello

これで購読側のターミナルにHelloというメッセージが表示されれば成功です。

まとめ

Mosquittoを使ってお手軽にMQTTの動作環境を作ることができました。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした