การติดตั้ง MQTT Broker (mosquitto) บน Raspberry pi

MQTT คือ 


MQTT คือ protocol ที่ออกเเบบมาสำหรับการเชื่อมต่อระหว่าง machine-to-machine MQTT ออกเเบบมาเพื่อใช้งานบนอุปกรณ์ขนาดเล็กเพื่อรับส่งข้อมูลกันภายในเครือข่ายที่มี bandwidth ต่ำ โดยหลักการทำงานจะเป็นดังรูปข้างล่าง โดย MQTT จะมีตัวกลางที่เรียกว่า Broker ทำหน้าที่จัดการคิวการส่งข้อมูลระหว่าง publisher เเละ subscriber โดย อ้างอิงถึง topic ข้อมูลที่จะออกจาก publisher หรือข้อมูลที่ subscriber ต้องการเรียก จะต้องมี topic กำกับไว้เสมอ
หลักการทำงานของ MQTT
Cr. https://www.survivingwithandroid.com/2016/10/mqtt-protocol-tutorial.html

การติดตั้ง MQTT Broker (mosquitto) บน Raspberry Pi

ในที่นี้เลือกใช้ mosquitto MQTT เนื่องจากเป็น open source ที่ได้รับความนิยมสูง
1. สั่ง sudo apt-get updateเพื่อ update package ที่มีการปรับปรุงใหม่


        สั่ง sudo apt-get upgrade เเละ กด Y



2. เมื่อ upgrade เสร็จสิ้นเเล้ว สั่ง sudo apt-get install mosquitto เพื่อติดตั้ง mosquitto
3. เมื่อ install mosquitto เสร็จเเล้ว สั่ง sudo apt-get install mosquitto-clients 
4. เข้าไปตั้งค่าในไฟล์ mosquitto.conf โดย cd /etc/mosquitto/ จะเห็นไฟล์ชื่อ mosquitto.conf ใช้ 
    sudo nano mosquitto.conf เพื่อเปิด text editor ขึ้นมาเเก้ไขไฟล์
    เเก้ไขไฟล์ให้เหมือนในรูปด้านล่าง 
  •     allow_anonymous false คือไม่เปิดให้ใครก็ได้เข้าใช้ server ของเรา
  •     password_file คือกำหนดไฟล์ที่เก็บ password
  •     listener คือกำหนด port ที่จะเข้าใช้ mosquitto
    เมื่อเสร็จเเล้ว save โดยการกด Ctrl+o เเละ Ctrl+x เพื่อออกจาก editor
5.เพื่อตั้งค่า username เเละ password พิมพ์ 
    sudo mosquitto_passwd -c /etc/mosquitto/pwfile <username ที่ต้องการใช้> เมื่อกด Enter 
    เเล้วจะมีให้ใส่ password ให้ใส่ password ที่ต้องการใช้เลย
    เมื่อเสร็จเเล้วให้ reboot ตัวเครื่อง หลังจาก reboot เเล้ว MQTT server จะทำงาน

ทดสอบการทำงาน

1. subscribe MQTT topic โดยใช้คำสั่ง 
    mosquitto_sub -d -u <username ที่ใช้> -P <password ที่ใช้> -t <topic ที่จะ subscribe>
2. เปิด terminal ขึ้นมาใหม่อีก1หน้า เพื่อส่งข้อความ ใช้คำสั่ง
    mosquitto_pub -d -u <username ที่ใช้> -P <password ที่ใช้> -t <topic ที่subscribe> -m <"ข้อความ">
3. เมื่อกลับไปดูที่หน้า terminal อันเเรก จะเห็นข้อความขึ้นมา เเปลว่า MQTT Broker พร้อมใช้งานเเล้ว

ความคิดเห็น

บทความที่ได้รับความนิยม