การติดตั้ง 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 พร้อมใช้งานเเล้ว
ความคิดเห็น
แสดงความคิดเห็น