Pasang Broker Coreflux MQTT dengan MongoDB pada
Pengenalan
Broker MQTT adalah penting untuk infrastruktur IoT moden dan sistem automasi, di mana keperluan untuk hab data yang tersentralisasi, bersatu, dan pantas adalah bahagian utama untuk kebolehoperasian sistem dan pertukaran data. Coreflux adalah broker MQTT yang berkuasa, kod rendah yang memperluas broker MQTT tradisional ke sistem yang menyediakan ciri-ciri lanjutan untuk pemprosesan data masa nyata, transformasi, dan integrasi lancar dengan pangkalan data yang diurus Linux-Console.net termasuk MongoDB, PostgreSQL, MySQL, dan OpenSearch.
Dalam tutorial DevOps yang komprehensif ini, anda akan melancarkan satu keseluruhan saluran automasi IoT menggunakan penerbit MQTT Coreflux yang diintegrasikan dengan MongoDB di Linux-Console.net. Penyelesaian penyimpanan dan pemprosesan berskala ini membolehkan anda mengumpul, menukar, dan menyimpan data IoT dengan cekap sambil mengekalkan kebolehpercayaan dan prestasi tahap perusahaan.
Kesimpulan Utama
Sebelum menyelami proses pelaksanaan langkah demi langkah, berikut adalah perkara utama yang akan anda pelajari:
- Lancarkan kluster pangkalan data MongoDB yang diurus di Linux-Console.net untuk penyimpanan data IoT yang boleh diskalakan.
- Sediakan broker Coreflux MQTT pada droplet Linux-Console.net menggunakan imej Marketplace atau Docker.
- Cipta rangkaian VPC yang selamat untuk menghubungkan broker MQTT dan pangkalan data anda tanpa pendedahan awam.
- Bina saluran data masa nyata menggunakan Language of Things (LoT) Coreflux untuk automasi IoT kod rendah.
- Transformasikan dan simpan data IoT secara automatik dari topik MQTT ke koleksi MongoDB.
- Sahkan aliran data dari hujung ke hujung daripada sensor simulasi melalui model transformasi ke penyimpanan pangkalan data.
Tutorial ini menyediakan asas yang siap digunakan untuk aplikasi IoT yang memerlukan pemesejan masa nyata digabungkan dengan penyimpanan data berterusan.
Apa Yang Akan Anda Bina
Menjelang akhir panduan automasi ini, anda akan telah melaksanakan:
- Satu pangkalan data MongoDB yang diurus untuk penyimpanan berskala
- Sebuah droplet Linux-Console.net yang menjalankan broker Coreflux MQTT
- Rangkaian Awan Persendirian Maya (VPC) untuk komunikasi IoT yang selamat
- Simulasi data masa nyata menggunakan sambungan LoT Notebook
- Model transformasi data kod rendah dan laluan integrasi pangkalan data
- Lengkap Pemaduan & Transformasi Data untuk automasi IoT
Perkongsian Coreflux & Linux-Console.net
Coreflux menyediakan Broker MQTT Ringan dan alat Saluran Data melalui bahasa pengaturcaraan Language-of-Things untuk Komunikasi IoT yang Efisien di Linux-Console.net.
Apakah MQTT?
MQTT (Message Queuing Telemetry Transport) adalah protokol rangkaian ringan berasaskan penerbitan-langganan yang banyak digunakan dalam ekosistem IoT. Direka untuk peranti terbatas dan rangkaian yang mempunyai jalur lebar rendah, kelewatan tinggi, atau tidak boleh dipercayai, MQTT membolehkan penghantaran mesej masa nyata yang cekap dalam persekitaran yang terhad jalur lebarnya.
Mengenai Coreflux
Coreflux menawarkan broker MQTT ringan untuk memudahkan komunikasi masa nyata yang cekap antara peranti IoT dan aplikasi, termasuk keupayaan transformasi data masa nyata yang diperlukan untuk setiap kes penggunaan. Dibina untuk kebolehskalaan dan kebolehpercayaan, Coreflux direka khusus untuk persekitaran di mana kelewatan rendah dan kadar pemindahan tinggi adalah kritikal.
Coreflux menyediakan rangka kerja pemesejan yang kukuh untuk memastikan aliran data yang lancar antara peranti, sama ada membangunkan projek IoT skala kecil atau melaksanakan sistem pemantauan industri berskala besar.
Dengan Coreflux di Linux-Console.net, anda akan mendapat:
Pemprosesan Data: Pusatkan keperluan pemprosesan data anda di tempat data anda berada, memastikan pemprosesan data secara masa nyata.
Integrasi Data: Mudah disatukan dengan perkhidmatan lain Linux-Console.net seperti Pangkalan Data Terkelola, memastikan ekosistem tunggal dan mudah untuk semua keperluan data anda.
Kebolehsesuaian: Mengendalikan jumlah data dan peranti yang semakin meningkat dengan mudah tanpa menjejaskan prestasi.
Keandalan: Pastikan mesej yang konsisten dan boleh dipercayai di semua peranti yang disambungkan.
Prasyarat
Sebelum anda memulakan tutorial penyebaran broker MQTT ini, anda memerlukan:
- Akaun Linux-Console.net dengan pengebilan diaktifkan
- Pemahaman tentang konsep protokol MQTT dan seni bina IoT
- Visual Studio Code (untuk pemalam LoT Notebook)
Langkah 1 - Mewujudkan Infrastruktur Rangkaian untuk Automasi IoT
Membuat Rangkaian VPC untuk Komunikasi MQTT yang Selamat
Pertama, anda akan mencipta Virtual Private Cloud (VPC) untuk memastikan komunikasi selamat antara perkhidmatan IoT anda dan broker MQTT, tanpa perlu akses awam.
- Log masuk ke panel kawalan Linux-Console.net anda
- Pergi ke Networking → VPC dari bar sisi kiri
- Klik Buat Rangkaian VPC
Konfigurasikan VPC anda untuk automasi IoT:
- Nama: coreflux-integrations-vpc (atau nama VPC anda)
- Wilayah Pusat Data: Pilih Frankfurt (atau wilayah pilihan anda)
- Julat IP: Gunakan lalai atau tetapkan mengikut keperluan
- Deskripsi: Tambahkan deskripsi yang bermakna untuk rangkaian broker MQTT dan Pangkalan Data anda
Klik Buat Rangkaian VPC
VPC akan menyediakan rangkaian yang terasing untuk semua sumber IoT anda, memastikan komunikasi yang selamat antara broker MQTT Coreflux dan pangkalan data yang diuruskan.
Langkah 2 — Menyediakan Pangkalan Data MongoDB Terkawal untuk Penyimpanan Berkala
Mewujudkan Kluster MongoDB yang Dikendalikan
Pangkalan data yang diurus oleh Linux-Console.net menyediakan sandaran automatik, pemantauan, dan penyelenggaraan, menjadikannya ideal untuk beban kerja IoT produksi dan keperluan penyimpanan berskala.
Dari panel kawalan Linux-Console.net, pergi ke Pangkalan Data
-
Klik Buat Kluster Pangkalan Data
Konfigurasikan kluster MongoDB anda untuk automasi IoT:
- Enjin pangkalan data: Pilih MongoDB
- Versi: Pilih versi stabil terkini
- Wilayah Pusat Data: Pilih Frankfurt (sama seperti VPC anda)
- Rangkaian VPC: Pilih coreflux-integrations-vpc yang anda buat
- Nama kluster pangkalan data: mongodb-coreflux-test
- Projek: Pilih projek sasaran anda
Pilih pelan anda berdasarkan keperluan IoT anda:
- Untuk pembangunan: pelan Asas dengan 1 GB RAM
- Untuk pengeluaran: Tujuan Am atau lebih tinggi untuk penyimpanan berskala
Klik Buat Kluster Pangkalan Data
Proses penciptaan pangkalan data terkawal biasanya mengambil masa 1-5 minit. Setelah selesai, anda akan dialihkan ke halaman gambaran keseluruhan pangkalan data, di mana anda boleh melihat butiran sambungan dan melakukan tindakan pentadbiran.
Menyiapkan Akses Pangkalan Data untuk Integrasi Broker MQTT
Anda akan dipaparkan dengan langkah-langkah Memulakan, di mana butiran sambungan anda ditunjukkan dan anda boleh mengatur peraturan akses masuk (disyorkan untuk mengehadkan kepada IP dan VPC anda sahaja).
- Klik Mulakan untuk mengkonfigurasi pangkalan data MongoDB anda
[Pilihan] Hadkan sambungan masuk:
- Tambah IP komputer tempatan anda untuk capaian pengurusan
- Titisan akan dibenarkan melalui rangkaian VPC secara automatik
Untuk maklumat sambungan, anda akan dapat melihat dua pilihan: Rangkaian Awam dan Rangkaian VPC. Yang pertama adalah untuk akses luaran bagi alat seperti MongoDB Compass, manakala yang kedua akan digunakan oleh perkhidmatan Coreflux untuk mengakses pangkalan data.
Catat maklumat sambungan yang diberikan, baik untuk akses awam mahupun untuk akses VPC (maklumat berbeza untuk setiap satu):
- Hos: Nama hos pangkalan data anda
- Pengguna: Pentadbir lalai
- Katalaluan: Katalaluan selamat yang dijana secara automatik
- Pangkalan Data: Nama pangkalan data pengesahan
Menguji Sambungan Pangkalan Data
Anda boleh menguji sambungan MongoDB menggunakan MongoDB Compass atau rentetan sambungan yang disediakan, menggunakan kelayakan capaian awam:
mongodb://username:password@mongodb-host:27017/defaultauthdb?ssl=trueMewujudkan Pangkalan Data dan Pengguna Aplikasi (Pilihan)
Untuk keselamatan dan organisasi yang lebih baik, buat pengguna dan pangkalan data khusus untuk aplikasi automasi IoT anda. Ini juga boleh dilakukan melalui MongoDB Compass atau CLI, tetapi Linux-Console.net menyediakan pendekatan yang mesra pengguna:
- Pergi ke tab Pengguna & Pangkalan Data dalam kluster pangkalan data yang diurus anda
Cipta Pengguna:
- Nama pengguna: coreflux-broker-client
- Kata Laluan: Dijana secara automatik
Cipta Pangkalan Data:
- Nama pangkalan data: coreflux-broker-data
Langkah 3 - Menyebarkan Broker Coreflux MQTT pada Droplet Linux-Console.net
Membuat Droplet Linux-Console.net
- Pergi ke Droplets dalam panel kawalan Linux-Console.net anda
- Klik Buat Droplet
Konfigurasikan droplet anda untuk penyebaran broker MQTT:
- Pilih Wilayah: Frankfurt (sama seperti pangkalan data yang diurus anda)
- Rangkaian VPC: Pilih coreflux-integrations-vpc
- Pilih imej: Pergi ke tab Marketplace
- Cari “Coreflux” dan pilih Coreflux dari pasaran
Pilih Saiz untuk beban kerja IoT anda:
- Untuk pembangunan: pelan Asas dengan memori 2 GB
- Untuk pengeluaran: pelan Asas atau Tujuan Umum dengan memori 4+ GB untuk prestasi boleh diskalakan
Pilih Kaedah Pengesahan:
Kunci SSH: Disyorkan untuk keselamatan yang lebih baik
- Kunci boleh dibuat secara tempatan menggunakan ssh-keygen
Selesaikan Butiran:
- Nama hos: coreflux-test-broker
Klik Buat Droplet
Lihat Droplet Laman Utama dan tunggu sehingga ia selesai dikerahkan
Alternatif - Memasang Broker MQTT Coreflux dengan Docker pada Imej Droplet Docker
Menggunakan pendekatan yang sama seperti untuk Coreflux Droplet, pilih Docker sebagai imej Marketplace.
Setelah droplet anda berjalan, sambungkan kepadanya melalui SSH dengan kaedah pengesahan yang ditetapkan atau konsol web yang tersedia di halaman utama Droplet:
ssh root@your-droplet-ipJalankan broker Coreflux MQTT menggunakan Docker:
docker run -d \
--name coreflux \
-p 1883:1883 \
-p 1884:1884 \
-p 5000:5000 \
-p 443:443 \
coreflux/coreflux-mqtt-broker-t:1.6.3Perintah Docker ini:
- Menjalankan kontena dalam mod terpisah (-d)
- Namakan bekas itu coreflux
- Mendedahkan port yang diperlukan untuk MQTT dan antara muka web
- Menggunakan imej Coreflux terkini
Sahkan broker MQTT sedang berjalan:
docker psAnda sepatutnya melihat sebuah bekas sedang berjalan:
Mengesahkan penyebaran Broker MQTT dengan menyambung kepadanya menggunakan nilai lalai
Anda boleh mengakses broker MQTT melalui klien MQTT seperti MQTT Explorer untuk mengesahkan akses ke broker, tanpa mengira pendekatan yang digunakan untuk menyebarkannya.
Langkah 4 — Mengkonfigurasi Peraturan Firewall untuk Komunikasi IoT yang Selamat (Pilihan)
Untuk penggunaan pengeluaran automasi IoT, konfigurasikan peraturan firewall untuk mengehadkan akses:
Navigasi ke Rangkaian → Firewall
Klik Buat Firewall
Konfigurasikan peraturan masuk untuk keselamatan broker MQTT:
- SSH: Port 22 daripada IP anda
- MQTT: Port 1883 daripada sumber aplikasi IoT anda
- MQTT dengan TLS: Port 1884 untuk MQTT dengan TLS yang selamat
- WebSocket: Port 5000 untuk MQTT melalui WebSocket
- WebSocket dengan TLS: Port 443 untuk MQTT melalui WebSocket dengan TLS
Gunakan firewall pada droplet anda
Untuk konfigurasi firewall yang terperinci, rujuk panduan permulaan pantas firewall di Linux-Console.net.
Langkah 5 — Menyediakan Integrasi Data IoT dengan Language of Things Coreflux
Memasang Sambungan Notebook LoT
Sambungan LoT (Language of Things) Notebook untuk Visual Studio Code menyediakan persekitaran pembangunan low code yang bersepadu untuk pengaturcaraan broke MQTT dan automasi IoT.
- Buka Visual Studio Code
- Pergi ke Sambungan (Ctrl+Shift+X)
- Cari “LoT Notebooks”
- Pasang LoT VSCode Notebooks Extension oleh Coreflux
Menyambung ke Broker MQTT Anda
Konfigurasikan sambungan ke broker MQTT Coreflux anda, menggunakan kelayakan lalai, apabila diminta pada bar atas atau dengan mengklik butang MQTT pada bar bawah di sebelah kiri:
- Pengguna: root
- Katalaluan: coreflux
Dengan anggapan tiada kesilapan, anda akan melihat status sambungan MQTT ke broker di bar bawah, sebelah kiri.
Langkah 6 — Mencipta Data dalam Broker MQTT melalui Tindakan
Untuk kes penggunaan ini, kami akan membina integrasi data mentah melalui saluran transformasi ke dalam Pangkalan Data. Walau bagaimanapun, kerana kami tidak bersambung dengan mana-mana peranti MQTT dalam demo, kami akan memanfaatkan keupayaan IoT dan menggunakan Tindakan untuk mensimulasikan data peranti.
Dalam LoT, Tindakan adalah logik yang boleh dijalankan yang dicetuskan oleh peristiwa tertentu seperti selang waktu, kemas kini topik, atau panggilan eksplisit daripada tindakan lain atau komponen sistem. Tindakan membolehkan interaksi dinamik dengan topik MQTT, pemboleh ubah dalaman, dan beban data, memudahkan aliran kerja automasi IoT yang kompleks.
Oleh itu, kita boleh menggunakan Tindakan yang menjana data dalam topik tertentu dalam jangka masa yang ditetapkan, yang kemudian boleh digunakan oleh bahagian lain dalam aliran proses yang akan kita tetapkan di bawah.
Anda boleh memuat turun repositori GitHub dengan projek contoh itu.
Menjana Data IoT Simulasi
Cipta Tindakan untuk menjana data sensor simulasi menggunakan antara muka LoT (Language of Things) kod rendah:
DEFINE ACTION RANDOMIZEMachineData
ON EVERY 10 SECONDS DO
PUBLISH TOPIC "raw_data/machine1" WITH RANDOM BETWEEN 0 AND 10
PUBLISH TOPIC "raw_data/station2" WITH RANDOM BETWEEN 0 AND 60Dalam Notebook yang disediakan, anda juga mempunyai Tindakan yang melakukan kiraan berperingkat untuk mensimulasikan data, sebagai alternatif kepada Tindakan yang disediakan.
Apabila anda menjalankan Tindakan ini, ia akan:
- Hantar secara automatik ke broker MQTT
- Hasilkan data sensor IoT simulasi setiap 10 saat
- Terbitkan data masa nyata ke topik MQTT tertentu
Paparkan status penyegerakan dalam antara muka LoT Notebook
- Status ini menunjukkan sama ada kod pada LoT Notebook berbeza daripada kod yang dijalankan di broker, atau jika ia hilang sepenuhnya
Langkah 7 — Mewujudkan Model Transformasi Data untuk Pemprosesan Masa Sebenar
Menentukan Model Data dengan Bahasa Perkara
Model dalam Coreflux digunakan untuk menukar, mengagregat, dan mengira nilai daripada topik MQTT input, serta menerbitkan hasilnya ke topik baru. Ia berfungsi sebagai asas untuk penciptaan Nama Ruang Bersatu (Unified Namespace) bagi sistem anda, yang boleh digunakan pada pelbagai sumber data anda.
Dengan cara ini, Model membolehkan anda menentukan bagaimana data mentah Language of Things harus distrukturkan dan ditransformasikan, sama ada untuk satu peranti atau untuk beberapa peranti sekaligus (melalui penggunaan wildcard +). Model juga berfungsi sebagai skema data utama yang digunakan untuk penyimpanan berskala ke pangkalan data yang diuruskan.
DEFINE MODEL MachineData WITH TOPIC "Simulator/Machine/+/Data"
ADD "energy" WITH TOPIC "raw_data/+" AS TRIGGER
ADD "energy_wh" WITH (energy * 1000)
ADD "production_status" WITH (IF energy > 5 THEN "active" ELSE "inactive")
ADD "production_count" WITH (IF production_status EQUALS "active" THEN (production_count + 1) ELSE 0)
ADD "stoppage" WITH (IF production_status EQUALS "inactive" THEN 1 ELSE 0)
ADD "maintenance_alert" WITH (IF energy > 50 THEN TRUE ELSE FALSE)
ADD "timestamp" WITH TIMESTAMP "UTC"Model kod rendah ini:
- Menggunakan wildcard
+untuk digunakan pada semua mesin secara automatik - Menukar nilai tenaga kepada watt-jam (energy_wh) dengan mendarabkan dengan 1000
- Menentukan status pengeluaran berdasarkan ambang tenaga
- Menjejaki jumlah pengeluaran dan kejadian henti
- Menambah cap masa pada semua data masa nyata
- Mengekstrak ID mesin daripada struktur topik
- Menerbitkan data berstruktur ke topik Simulator/Machine/+/Data (menggantikan
+dengan setiap topik yang sepadan dengan format untuk data pemicu/sumber)
Apabila kami menghasilkan dua sensor/mesin simulasi dengan Tindakan tersebut, kami dapat melihat struktur Model diterapkan secara automatik kepada kedua-duanya, menjana kedua-dua objek json dan topik individu.
Langkah 8 — Menyediakan Integrasi Pangkalan Data untuk Penyimpanan Skala Besar
Mencipta Laluan Pangkalan Data
Rute menentukan bagaimana data masa nyata yang diproses mengalir ke sistem luaran seperti pangkalan data terurus. Ia ditakrifkan dengan format kod rendah berikut:
DEFINE ROUTE mongo_route WITH TYPE MONGODB
ADD MONGODB_CONFIG
WITH CONNECTION_STRING "mongodb+srv://<username>:<password>@<cluster-uri>/<database>?tls=true&authSource=admin&replicaSet=<replica-set>"
WITH DATABASE "admin"Gantikan dengan butiran sambungan MongoDB anda dari Linux-Console.net dan jalankan Route dalam Notebook IoT anda.
Kemas Kini Model untuk Penyimpanan Pangkalan Data
Ubah model LoT anda untuk menggunakan laluan pangkalan data bagi penyimpanan yang boleh diskala, dengan menambah ini ke hujung Model:
STORE IN "mongo_route"
WITH TABLE "MachineProductionData"Selain itu, tambah parameter dengan topik, untuk mempunyai pengecam unik bagi setiap entri dalam pangkalan data yang diuruskan anda.
DEFINE MODEL MachineData WITH TOPIC "Simulator/Machine/+/Data"
ADD "energy" WITH TOPIC "raw_data/+" AS TRIGGER
ADD "device_name" WITH REPLACE "+" WITH TOPIC POSITION 2 IN "+"
ADD "energy_wh" WITH (energy * 1000)
ADD "production_status" WITH (IF energy > 5 THEN "active" ELSE "inactive")
ADD "production_count" WITH (IF production_status EQUALS "active" THEN (production_count + 1) ELSE 0)
ADD "stoppage" WITH (IF production_status EQUALS "inactive" THEN 1 ELSE 0)
ADD "maintenance_alert" WITH (IF energy > 50 THEN TRUE ELSE FALSE)
ADD "timestamp" WITH TIMESTAMP "UTC"
STORE IN "mongo_route"
WITH TABLE "MachineProductionData"Selepas anda melaksanakan tindakan yang dikemas kini ini, semua data sepatutnya disimpan secara automatik dalam pangkalan data apabila dikemas kini.
Langkah 9 — Mengesahkan Saluran Automasi IoT yang Lengkap
Memantau Aliran Data Masa Sebenar
- MQTT Explorer: Gunakan klien MQTT untuk mengesahkan penerbitan
- MongoDB Compass: Sambungkan untuk mengesahkan penyimpanan data
Menyemak Penyimpanan Pangkalan Data
Sambungkan ke MongoDB pangkalan data terurus anda menggunakan MongoDB Compass untuk mengesahkan penyimpanan berskala:
- Gunakan rentetan sambungan dari pangkalan data Linux-Console.net anda
- Navigasi ke pangkalan data coreflux-broker-data (atau nama yang anda berikan kepada pangkalan data)
- Semak koleksi DataPengeluaranMesin untuk dokumen yang disimpan
Anda sepatutnya melihat dokumen data masa nyata dengan struktur yang serupa dengan:
{
"_id": {
"$oid": "68626dc3e8385cbe9a1666c3"
},
"energy": 36,
"energy_wh": 36000,
"production_status": "active",
"production_count": 31,
"stoppage": 0,
"maintenance_alert": false,
"timestamp": "2025-06-30 10:58:11",
"device_name": "station2"
}Seperti yang telah kita lihat sebelum ini, semua data tersedia dalam Broker MQTT untuk kegunaan dan integrasi lain.
Langkah 10 - Perluaskan Kes Penggunaan dan Integrasi Anda
Uji Keupayaan Bahasa Benda
- Terbitkan Data Contoh: Gunakan MQTT Explorer untuk menerbitkan set data contoh ke broker Coreflux anda. Cuba pelbagai struktur muatan dan Model/Tindakan yang berbeza untuk melihat bagaimana ia diproses dan disimpan dalam MongoDB.
- Pengesahan Data: Sahkan bahawa data dalam MongoDB sepadan dengan payload yang anda terbitkan. Periksa konsistensi dan ketepatan menggunakan MongoDB Compass, memastikan integrasi automasi IoT anda berfungsi seperti yang dijangkakan. Bandingkan cap waktu, transformasi medan, dan jenis data untuk mengesahkan saluran data masa nyata anda. Untuk panduan persediaan MongoDB lanjut, lihat koleksi tutorial MongoDB kami.
- Pemantauan Masa Nyata: Tetapkan aliran data masa nyata yang berterusan menggunakan sumber data MQTT lain, seperti sensor mudah dengan sambungan MQTT. Perhatikan bagaimana Coreflux dan MongoDB mengendalikan aliran data IoT yang masuk dan terokai masa tindak balas untuk pengambilan dan pertanyaan data.
Bangunkan Analitik dan Visualisasi
- Cipta Papan Pemuka: Integrasikan dengan alat visualisasi seperti Grafana untuk mencipta papan pemuka dinamik yang memaparkan data IoT anda, sama ada daripada data langsung MQTT Broker atau daripada data yang disimpan dalam Pangkalan Data. Jejaki metrik seperti waktu operasi peranti, bacaan sensor, jumlah pengeluaran, atau amaran penyelenggaraan daripada sistem automasi anda. Pelajari cara untuk menyediakan pemantauan dengan panduan kami mengenai penyediaan pemantauan untuk pangkalan data yang diuruskan Linux-Console.net menggunakan Prometheus dan Grafana.
- Analisis Trend: Manfaatkan rangka kerja agregasi MongoDB untuk menganalisis trend dari masa ke masa. Perhatikan corak, lonjakan, atau anomali dalam data masa nyata anda yang mungkin menunjukkan isu sistem atau peluang pengoptimuman.
- Integrasi Multi-Pangkalan Data: Terokai integrasi pangkalan data terurus tambahan seperti PostgreSQL untuk data berhubung, MySQL untuk pertanyaan berstruktur, atau OpenSearch untuk analitik lanjutan dan kemampuan carian. Gunakan laluan Coreflux untuk menghantar data ke pelbagai destinasi serentak. Untuk contoh integrasi OpenSearch, lihat tutorial kami mengenai penyebaran OpenSearch dengan broker Coreflux MQTT.
Optimumkan dan Skala Infrastruktur IoT Anda
- Ujian Beban: Menyimulasikan trafik tinggi dengan menerbitkan banyak mesej secara serentak menggunakan LoT Notebook atau skrip automatik. Pantau bagaimana broker MQTT Coreflux dan kluster MongoDB anda menangani beban dan kenal pasti sebarang kesesakan dalam Saluran Data anda.
- Skala: Linux-Console.net menawarkan pilihan skala menegak dan melintang. Tingkatkan sumber droplet (CPU, RAM, atau storan) apabila keperluan data IoT anda berkembang. Skala kluster pangkalan data yang diurus anda untuk mengendalikan set data yang lebih besar dan konfigurasikan amaran auto-skala untuk memberitahu anda apabila hampir mencapai had sumber.
Soalan Lazim
Bagaimana saya boleh mengintegrasikan broker MQTT dengan MongoDB?
Anda mengintegrasikan broker MQTT dengan MongoDB dengan membuat laluan pangkalan data dalam Coreflux yang bersambung ke instance MongoDB anda. Laluan tersebut menggunakan string sambungan dengan kelayakan pengesahan dan secara automatik menyimpan muatan mesej MQTT ke dalam koleksi MongoDB. Coreflux menguruskan pengurusan sambungan, membolehkan anda menumpukan perhatian pada logik transformasi data menggunakan sintaks Language of Things (LoT).
Bolehkah saya menyimpan data MQTT terus ke MongoDB tanpa kod tersuai?
Ya, Coreflux menyediakan penyelesaian rendah-kod melalui ciri laluan MongoDBnya. Anda menentukan laluan dengan string sambungan MongoDB anda, kemudian tambahkan arahan STORE IN ke dalam model data anda. Ini secara automatik menyimpan semua mesej MQTT yang diproses ke MongoDB tanpa menulis kod integrasi pangkalan data tersuai. Laluan itu mengurus pengumpulan sambungan, pengendalian ralat, dan logik cuba semula secara automatik.
Apakah manfaat menggunakan MongoDB dengan MQTT untuk aplikasi IoT?
Struktur dokumen fleksibel MongoDB menjadikannya sesuai untuk data IoT kerana bacaan sensor sering mempunyai skema yang berbeza-beza. Tidak seperti pangkalan data berelasi, MongoDB tidak memerlukan jadual yang telah ditetapkan, membolehkan anda menyimpan pelbagai jenis peranti dan format data dalam koleksi yang sama. Digabungkan dengan protokol pemesejan ringan MQTT, ini mewujudkan saluran yang cekap untuk aliran data IoT masa nyata dengan volum tinggi. MongoDB yang diurus oleh Linux-Console.net menambah sandaran automatik, penskalaan, dan pemantauan untuk mempermudah operasi.
Sejauh manakah keselamatan sambungan antara Coreflux dan MongoDB?
Apabila menyebarkan di Linux-Console.net, anda boleh menggunakan rangkaian VPC untuk memastikan semua komunikasi antara broker MQTT Coreflux anda dan pangkalan data MongoDB bersifat peribadi. VPC memisahkan sumber anda daripada akses internet awam, dan pangkalan data yang diurus oleh Linux-Console.net menyokong penyulitan TLS untuk sambungan. Selain itu, anda boleh mencipta pengguna pangkalan data khusus dengan kebenaran terhad untuk aplikasi Coreflux anda, mengikut prinsip keistimewaan minimum.
Bolehkah saya menggunakan susunan ini untuk penggunaan IoT di peringkat produksi?
Ya, seni bina ini sedia untuk pengeluaran. Pangkalan data yang diuruskan oleh Linux-Console.net menyediakan sandaran automatik, ketersediaan tinggi, dan pemantauan secara lalai. Broker Coreflux MQTT berskala mendatar dan mengendalikan jumlah mesej yang tinggi. Untuk penempatan pengeluaran, pastikan anda mengkonfigurasi peraturan firewall, menggunakan kelayakan pengesahan yang kuat, mengaktifkan TLS untuk sambungan MQTT, dan menyediakan amaran pemantauan. Mula dengan saiz sumber yang sesuai berdasarkan jumlah mesej yang dijangka dan skala mengikut keperluan.
Kesimpulan
Mengintegrasikan Coreflux MQTT broker dengan perkhidmatan MongoDB terurus Linux-Console.net menyediakan penyelesaian yang berkuasa untuk pemprosesan data IoT masa nyata dan penyimpanan berskala. Mengikuti tutorial ini, anda telah menyediakan saluran automasi yang lancar yang membolehkan anda mengumpul, memproses, dan menyimpan data IoT dengan cekap menggunakan amalan pembangunan low code.
Dengan Coreflux yang mempunyai senibina boleh skala dan kebolehan penyimpanan dokumen yang kukuh daripada MongoDB, anda boleh mengendalikan sejumlah besar data masa nyata dan memperoleh pandangan yang bernilai dengan serta-merta. Sama ada anda memantau sistem industri, mengesan sensor alam sekitar, atau menguruskan infrastruktur bandar pintar, integrasi automasi IoT ini membolehkan anda membuat keputusan berasaskan data dengan cepat dan berkesan.
Pendekatan notebook Language of Things (LoT) digabungkan dengan perkhidmatan terurus Linux-Console.net mencipta asas IoT & DevOps-sedia yang berkembang selari dengan keperluan perniagaan anda. Penyebaran broker MQTT anda kini sedia untuk beban kerja pengeluaran dan boleh diperluas untuk menyokong PostgreSQL, MySQL, OpenSearch, dan teknologi pangkalan data lain mengikut evolusi keperluan anda.
Langkah Seterusnya
Sekarang anda telah menggunakan broker Coreflux MQTT dengan MongoDB, terokai sumber ini untuk mengembangkan keupayaan automasi IoT anda:
Terokai Tutorial Berkaitan: Ketahui lebih lanjut tentang penyebaran OpenSearch dengan Coreflux dalam tutorial kami tentang penyebaran OpenSearch dengan broker MQTT Coreflux, atau selami lebih mendalam mengenai MongoDB dengan koleksi tutorial MongoDB kami.
Cuba Pangkalan Data Terurus Linux-Console.net: Permudahkan operasi pangkalan data anda dengan Pangkalan Data Terurus Linux-Console.net, yang menyediakan sandaran automatik, penskalaan, dan ketersediaan tinggi untuk MongoDB, PostgreSQL, MySQL, dan Redis.
Pasang Coreflux dari Marketplace: Mulakan dengan cepat menggunakan Coreflux MQTT Broker yang tersedia di Linux-Console.net Marketplace, atau terokai aplikasi Marketplace lain untuk alat IoT dan automasi tambahan.
Semak Dokumentasi Coreflux: Perdalam pemahaman anda tentang Language of Things dan ciri-ciri Coreflux yang canggih dalam dokumentasi Coreflux.
Cuba Projek Contoh: Cuba projek automasi IoT contoh untuk melihat kegunaan tambahan dan corak integrasi.
Sumber dan Dokumentasi Tambahan
Panduan Persediaan Linux-Console.net
Pengurusan Projek
- Cara Membuat dan Mengurus Projek di Linux-Console.net - Susun sumber infrastruktur IoT anda dengan berkesan.
Infrastruktur Rangkaian
- Cara Membuat Rangkaian VPC - Menyediakan rangkaian persendirian yang selamat untuk broker MQTT dan pangkalan data anda
- Panduan Mula Pantas Firewall - Konfigurasikan peraturan keselamatan untuk penyebaran IoT pengeluaran
Penempatan Droplet
- Cara Membuat Droplet - Panduan lengkap untuk menyebarkan mesin maya
- Aplikasi Docker 1-Klik - Pasang persekitaran Docker yang telah dikonfigurasi dari Pasar Linux-Console.net
- Menggunakan Tutorial Pemasangan Docker 1-Klik - Panduan langkah demi langkah untuk pemasangan Docker
Pengurusan Pangkalan Data
- Cara Mengurus Pangkalan Data MongoDB - Membuat dan mengurus pangkalan data serta pengguna MongoDB
- Cara Menyambung ke MongoDB - Sambungkan ke kluster MongoDB yang diuruskan anda daripada aplikasi
Pengurusan Pelayan
- Persediaan Droplet Disyorkan - Amalan Terbaik untuk Keselamatan dan Konfigurasi Pelayan
- Sambung ke Droplet melalui Konsol - Akses droplet anda melalui konsol berasaskan web
Kaedah Pemasangan Alternatif
Nota: Walaupun tutorial ini menggunakan imej Coreflux atau Docker Marketplace untuk penyebaran yang mudah, anda juga boleh memasang broker MQTT Coreflux terus pada Ubuntu. Untuk arahan pemasangan secara manual, lawati Panduan Pemasangan Coreflux.
Tutorial Berkaitan Linux-Console.net
- Menyebarkan OpenSearch dengan Coreflux MQTT Broker - Pelajari cara mengintegrasikan Coreflux dengan OpenSearch untuk carian dan analitik lanjutan
- Cara Memasang MongoDB di Ubuntu - Panduan pemasangan MongoDB manual untuk pengurusan sendiri
- Pengenalan kepada MongoDB - Fahami konsep MongoDB dan asas pangkalan data dokumen
Terima kasih kerana belajar bersama Komuniti Linux-Console.net.


















