Koneksi konektor cloud jembatan MQTT Pratinjau Azure IoT MQTT ke broker MQTT lainnya

Penting

Pratinjau Operasi Azure IoT – diaktifkan oleh Azure Arc saat ini dalam PRATINJAU. Anda tidak boleh menggunakan perangkat lunak pratinjau ini di lingkungan produksi.

Lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure untuk persyaratan hukum yang berlaku pada fitur Azure dalam versi beta, pratinjau, atau belum dirilis secara umum.

Anda dapat menggunakan jembatan MQTT Pratinjau Azure IoT MQ untuk menyambungkan ke Azure Event Grid atau broker MQTT lainnya. Bridging MQTT adalah proses menghubungkan dua broker MQTT bersama-sama sehingga mereka dapat bertukar pesan.

  • Ketika dua broker dihubungkan, pesan yang diterbitkan pada satu broker secara otomatis diteruskan ke broker lainnya dan sebaliknya.
  • Bridging MQTT membantu membuat jaringan broker MQTT yang berkomunikasi satu sama lain, dan memperluas infrastruktur MQTT dengan menambahkan broker tambahan sesuai kebutuhan.
  • Bridging MQTT berguna untuk beberapa lokasi fisik, berbagi pesan MQTT dan topik antara tepi dan cloud, atau ketika Anda ingin mengintegrasikan MQTT dengan sistem olahpesan lainnya.

Untuk menjenguk ke broker lain, Azure IoT MQ harus mengetahui URL titik akhir broker jarak jauh, versi MQTT apa, cara mengautentikasi, dan topik apa yang akan dipetakan. Untuk memaksimalkan komposabilitas dan fleksibilitas dengan cara asli Kubernetes, nilai-nilai ini dikonfigurasi sebagai sumber daya Kubernetes kustom (CRD) yang disebut MqttBridge Koneksi or dan MqttBridgeTopicMap. Panduan ini menjelaskan cara membuat konektor jembatan MQTT menggunakan sumber daya ini.

  1. Buat file YAML yang menentukan sumber daya MqttBridge Koneksi or. Anda dapat menggunakan contoh YAML, tetapi pastikan untuk mengubah namespace agar sesuai dengan yang memiliki Azure IoT MQ yang disebarkan, dan remoteBrokerConnection.endpoint agar sesuai dengan URL titik akhir broker jarak jauh Anda.

  2. Buat file YAML yang menentukan sumber daya MqttBridgeTopicMap . Anda dapat menggunakan contoh YAML, tetapi pastikan untuk mengubah namespace agar sesuai dengan yang memiliki Azure IoT MQ yang disebarkan, dan mqttBridgeConnectorRef agar sesuai dengan nama sumber daya MqttBridge Koneksi or yang Anda buat di langkah sebelumnya.

  3. Sebarkan konektor jembatan MQTT dan peta topik dengan kubectl apply -f <filename>.

    $ kubectl apply -f my-mqtt-bridge.yaml 
    mqttbridgeconnectors.mq.iotoperations.azure.com my-mqtt-bridge created
    $ kubectl apply -f my-topic-map.yaml
    mqttbridgetopicmaps.mq.iotoperations.azure.com my-topic-map created
    

Setelah disebarkan, gunakan kubectl get pods untuk memverifikasi pesan mulai mengalir ke dan dari titik akhir Anda.

Mengonfigurasi MqttBridge Koneksi or

Sumber daya MqttBridge Koneksi or mendefinisikan konektor jembatan MQTT yang dapat berkomunikasi dengan broker jarak jauh. Ini mencakup komponen-komponen berikut:

  • Satu atau beberapa instans konektor jembatan MQTT. Setiap instans adalah kontainer yang menjalankan konektor jembatan MQTT.
  • Koneksi broker jarak jauh.
  • Koneksi broker lokal opsional.

Contoh berikut menunjukkan contoh konfigurasi untuk menjeda ke broker Azure Event Grid MQTT. Ini menggunakan identitas terkelola yang ditetapkan sistem untuk autentikasi dan enkripsi TLS.

apiVersion: mq.iotoperations.azure.com/v1beta1
kind: MqttBridgeConnector
metadata:
  name: my-mqtt-bridge
  namespace: azure-iot-operations
spec:
  image: 
    repository: mcr.microsoft.com/azureiotoperations/mqttbridge 
    tag: 0.4.0-preview
    pullPolicy: IfNotPresent
  protocol: v5
  bridgeInstances: 1
  clientIdPrefix: factory-gateway-
  logLevel: debug
  remoteBrokerConnection:
    endpoint: example.westeurope-1.ts.eventgrid.azure.net:8883
    tls:
      tlsEnabled: true
    authentication:
      systemAssignedManagedIdentity:
        audience: https://eventgrid.azure.net
  localBrokerConnection:
    endpoint: aio-mq-dmqtt-frontend:8883
    tls:
      tlsEnabled: true
      trustedCaCertificateConfigMap: aio-ca-trust-bundle-test-only
    authentication:
      kubernetes: {}

Tabel berikut ini menjelaskan bidang di sumber daya MqttBridge Koneksi or:

Bidang Diperlukan Deskripsi
gambar Ya Gambar konektor Kafka. Anda dapat menentukan pullPolicy, repository, dan tag gambar. Nilai yang tepat diperlihatkan dalam contoh sebelumnya.
protokol Ya Versi protokol MQTT. Bisa v5 atau v3. Lihat dukungan MQTT v3.1.1.
bridgeInstances No Jumlah instans untuk konektor penghubung. Defaultnya adalah 1. Lihat Jumlah instans.
clientIdPrefix No Awalan untuk ID klien yang dihasilkan secara dinamis. Defaultnya bukan awalan. Lihat Konfigurasi ID Klien.
logLevel No Tingkat log. Bisa debug atau info. Defaultnya adalah info.
remoteBroker Koneksi ion Ya Koneksi detail broker jarak jauh untuk di bridge. Lihat Koneksi broker jarak jauh.
localBroker Koneksi ion No Koneksi detail broker lokal untuk dijantungkan. Default untuk menampilkan nilai. Lihat Koneksi broker lokal.

Dukungan MQTT v3.1.1

Konektor jembatan dapat dikonfigurasi untuk menggunakan MQTT v3.1.1 dengan koneksi broker lokal untuk Azure IoT MQ dan koneksi broker jarak jauh. Namun, ini memutus langganan bersama jika broker jarak jauh tidak mendukungnya. Jika Anda berencana menggunakan langganan bersama, biarkan sebagai v5 default.

Jumlah instans

Untuk ketersediaan dan skala tinggi, konfigurasikan konektor jembatan MQTT untuk menggunakan beberapa instans. Alur dan rute pesan secara otomatis seimbang antara instans yang berbeda.

spec:
  bridgeInstances: 2

Konfigurasi ID Klien

Azure IoT MQ menghasilkan ID klien untuk setiap klien MqttBridge Koneksi or, menggunakan awalan {clientIdPrefix}-{routeName}yang Anda tentukan, dalam format . ID klien ini penting bagi Azure IoT MQ untuk mengurangi kehilangan pesan dan menghindari konflik atau tabrakan dengan ID klien yang ada karena spesifikasi MQTT hanya memungkinkan satu koneksi per ID klien.

Misalnya, jika clientIdPrefix: "client-", dan ada dua routes di peta topik, ID klien adalah: client-route1 dan client-route2.

Koneksi broker jarak jauh

Bidang remoteBrokerConnection mendefinisikan detail koneksi untuk di bridge ke broker jarak jauh. Ini termasuk bidang berikut:

Bidang Diperlukan Deskripsi
titik akhir Ya URL titik akhir broker jarak jauh dengan port. Contohnya,example.westeurope-1.ts.eventgrid.azure.net:8883.
tls Ya Menentukan apakah koneksi dienkripsi dengan TLS dan sertifikat CA tepercaya. Lihat dukungan TLS
Autentikasi Ya Detail autentikasi untuk Azure IoT MQ untuk digunakan dengan broker. Harus salah satu nilai berikut: identitas terkelola yang ditetapkan sistem atau X.509. Lihat Autentikasi.
protokol No Nilai string yang menentukan untuk menggunakan MQTT atau MQTT melalui WebSocket. Bisa mqtt atau webSocket. Defaultnya adalah mqtt.

Autentikasi

Bidang autentikasi menentukan metode autentikasi untuk Azure IoT MQ untuk digunakan dengan broker jarak jauh. Ini termasuk bidang berikut:

Bidang Diperlukan Deskripsi
systemAssignedManagedIdentity No Autentikasi dengan identitas terkelola yang ditetapkan sistem. Lihat Identitas terkelola.
x509 No Detail autentikasi menggunakan sertifikat X.509. Lihat X.509.

Identitas terkelola

Bidang systemAssignedManagedIdentity menyertakan bidang berikut:

Bidang Diperlukan Deskripsi
Audiens Ya Audiens untuk token. Diperlukan jika menggunakan identitas terkelola. Untuk Event Grid, ini adalah https://eventgrid.azure.net.

Jika Azure IoT MQ disebarkan sebagai ekstensi Azure Arc, azure IoT MQ akan mendapatkan identitas terkelola penetapan sistem secara default. Anda harus menggunakan identitas terkelola untuk Azure IoT MQ untuk berinteraksi dengan sumber daya Azure, termasuk broker Azure Event Grid MQTT, karena memungkinkan Anda menghindari manajemen kredensial dan mempertahankan ketersediaan tinggi.

Untuk menggunakan identitas terkelola untuk autentikasi dengan sumber daya Azure, pertama-tama tetapkan peran Azure RBAC yang sesuai seperti Penerbit EventGrid TopicSpaces ke identitas terkelola Azure IoT MQ yang disediakan oleh Arc.

Kemudian, tentukan dan MQTTBridge Koneksi or dengan identitas terkelola sebagai metode autentikasi:

spec:
  remoteBrokerConnection:
    authentication:
      systemAssignedManagedIdentity:
        audience: https://eventgrid.azure.net

Saat Anda menggunakan identitas terkelola, ID klien tidak dapat dikonfigurasi, dan sama dengan ID sumber daya Azure Resource Manager ekstensi Azure IoT MQ Azure Arc dalam Azure.

Identitas terkelola yang ditetapkan sistem disediakan oleh Azure Arc. Sertifikat yang terkait dengan identitas terkelola harus diperpanjang setidaknya setiap 90 hari untuk menghindari proses pemulihan manual. Untuk mempelajari lebih lanjut, lihat Bagaimana cara mengatasi sumber daya Kubernetes dengan dukungan Azure Arc yang kedaluwarsa?

X.509

Bidang x509 menyertakan bidang berikut:

Bidang Diperlukan Deskripsi
secretName Ya Rahasia Kubernetes yang berisi sertifikat klien dan kunci privat. Anda dapat menggunakan Azure Key Vault untuk mengelola rahasia untuk Azure IoT MQ alih-alih rahasia Kubernetes. Untuk mempelajari lebih lanjut, lihat Mengelola rahasia menggunakan rahasia Azure Key Vault atau Kubernetes.

Banyak broker MQTT, seperti Event Grid, mendukung autentikasi X.509. Jembatan MQTT Azure IoT MQ dapat menyajikan sertifikat X.509 klien dan menegosiasikan komunikasi TLS. Gunakan rahasia Kubernetes untuk menyimpan sertifikat klien X.509, kunci privat, dan CA perantara.

kubectl create secret generic bridge-client-secret \
--from-file=client_cert.pem=mqttbridge.pem \
--from-file=client_key.pem=mqttbridge.key \
--from-file=client_intermediate_certs.pem=intermediate.pem

Dan referensikan dengan secretName:

spec:
  remoteBrokerConnection:
    authentication:
      x509:
        secretName: bridge-client-cert

Koneksi broker lokal

Bidang localBrokerConnection mendefinisikan detail koneksi untuk disambungkan ke broker lokal.

Bidang Diperlukan Deskripsi
titik akhir Ya URL titik akhir broker jarak jauh dengan port.
tls Ya Menentukan apakah koneksi dienkripsi dengan TLS dan sertifikat CA tepercaya. Lihat dukungan TLS
Autentikasi Ya Detail autentikasi untuk Azure IoT MQ untuk digunakan dengan broker. Satu-satunya metode yang didukung adalah token akun layanan (SAT) Kubernetes. Untuk menggunakan SAT, tentukan kubernetes: {}.

Secara default, IoT MQ disebarkan di namespace azure-iot-operations dengan Autentikasi TLS diaktifkan dan SAT.

Kemudian pengaturan koneksi broker lokal MqttBridge Koneksi or harus dikonfigurasi agar cocok. YAML penyebaran untuk MqttBridge Koneksi or harus memiliki localBrokerConnection pada tingkat yang sama dengan remoteBrokerConnection. Misalnya, untuk menggunakan TLS dengan autentikasi SAT agar sesuai dengan penyebaran IoT MQ default:

spec:
  localBrokerConnection:
    endpoint: aio-mq-dmqtt-frontend:8883
    tls:
      tlsEnabled: true
      trustedCaCertificateConfigMap: aio-ca-trust-bundle-test-only
    authentication:
      kubernetes: {}

Di sini, trustedCaCertifcateName adalah ConfigMap untuk CA akar Azure IoT MQ, seperti ConfigMap untuk ca akar broker jarak jauh. CA akar default disimpan dalam ConfigMap bernama aio-ca-trust-bundle-test-only.

Untuk informasi selengkapnya tentang mendapatkan CA akar, lihat Mengonfigurasi TLS dengan manajemen sertifikat otomatis untuk mengamankan komunikasi MQTT.

Dukungan TLS

Bidang menentukan tls konfigurasi TLS untuk koneksi broker jarak jauh atau lokal. Ini termasuk bidang berikut:

Bidang Diperlukan Deskripsi
tlsEnabled Ya Apakah TLS diaktifkan atau tidak.
trustedCaCertificateConfigMap No Sertifikat CA untuk dipercaya saat menyambungkan ke broker. Diperlukan jika TLS diaktifkan.

Dukungan enkripsi TLS tersedia untuk koneksi broker jarak jauh dan lokal.

  • Untuk koneksi broker jarak jauh: jika TLS diaktifkan, sertifikat CA tepercaya harus ditentukan sebagai referensi Kubernetes ConfigMap . Jika tidak, jabat tangan TLS kemungkinan gagal kecuali titik akhir jarak jauh dipercaya secara luas Sertifikat CA tepercaya sudah ada di penyimpanan sertifikat OS. Misalnya, Event Grid menggunakan akar CA yang tepercaya secara luas sehingga menentukan tidak diperlukan.
  • Untuk koneksi broker lokal (Azure IoT MQ): jika TLS diaktifkan untuk pendengar broker Azure IoT MQ, sertifikat CA yang mengeluarkan sertifikat server pendengar harus ditentukan sebagai referensi Kubernetes ConfigMap .

Saat menentukan CA tepercaya diperlukan, buat ConfigMap yang berisi ramuan publik CA dan tentukan nama configmap di trustedCaCertificateConfigMap properti . Contohnya:

kubectl create configmap client-ca-configmap --from-file ~/.step/certs/root_ca.crt

Mengonfigurasi MqttBridgeTopicMap

Sumber daya MqttBridgeTopicMap mendefinisikan pemetaan topik antara broker lokal dan jarak jauh. Ini harus digunakan bersama dengan sumber daya MqttBridge Koneksi or. Ini mencakup komponen-komponen berikut:

  • Nama sumber daya MqttBridge Koneksi or untuk ditautkan.
  • Daftar rute untuk bridging.
  • Konfigurasi langganan bersama opsional.

MqttBridge Koneksi or dapat menggunakan beberapa MqttBridgeTopic Peta ditautkan dengannya. Ketika sumber daya MqttBridge Koneksi or disebarkan, operator Azure IoT MQ mulai memindai namespace layanan untuk MqttBridgeTopic apa pun Peta ditautkan dengannya dan secara otomatis mengelola alur pesan di antara instans MqttBridge Koneksi or. Kemudian, setelah disebarkan, MqttBridgeTopicMap ditautkan dengan MqttBridge Koneksi or. Setiap MqttBridgeTopicMap hanya dapat ditautkan dengan satu MqttBridge Koneksi or.

Contoh berikut menunjukkan konfigurasi MqttBridgeTopicMap untuk menjeda pesan dari topik remote-topic jarak jauh ke topik local-topiclokal :

apiVersion: mq.iotoperations.azure.com/v1beta1
kind: MqttBridgeTopicMap
metadata:
  name: my-topic-map
  namespace: azure-iot-operations 
spec:
  mqttBridgeConnectorRef: my-mqtt-bridge
  routes:
    - direction: remote-to-local
      name: first-route
      qos: 0
      source: remote-topic
      target: local-topic
      sharedSubscription:
        groupMinimumShareNumber: 3
        groupName: group1
    - direction: local-to-remote
      name: second-route
      qos: 1
      source: local-topic
      target: remote-topic

Tabel berikut ini menjelaskan bidang di sumber daya MqttBridgeTopicMap:

Bidang Diperlukan Deskripsi
mqttBridge Koneksi orRef Ya Nama sumber daya yang akan ditautkan MqttBridgeConnector .
rute Ya Daftar rute untuk bridging. Untuk informasi selengkapnya, lihat Rute.

Rute

MqttBridgeTopicMap dapat memiliki beberapa rute. Bidang routes menentukan daftar rute. Ini termasuk bidang berikut:

Bidang Diperlukan Deskripsi
direction Ya Arah alur pesan. Bisa atau remote-to-locallocal-to-remote. Untuk informasi selengkapnya, lihat Arah.
nama Ya Nama rute.
qos No Kualitas layanan MQTT (QoS). Default ke 1.
sumber Ya Topik MQTT sumber. Dapat memiliki kartubebas seperti # dan +. Lihat Kartubebas dalam topik sumber.
target No Topik MQTT target. Tidak dapat memiliki kartubebas. Jika tidak ditentukan, itu akan sama dengan sumbernya. Lihat Topik sumber referensi di target.
sharedSubscription No Konfigurasi langganan bersama. Mengaktifkan jumlah klien yang dikonfigurasi untuk skala tambahan. Untuk informasi selengkapnya, lihat Langganan bersama.

Arah

Misalnya, jika arahnya lokal ke jarak jauh, Azure IoT MQ menerbitkan semua pesan pada topik lokal yang ditentukan ke topik jarak jauh:

routes:
  - direction: local-to-remote
    name: "send-alerts"
    source: "alerts"
    target: "factory/alerts"

Jika arah dibalik, Azure IoT MQ menerima pesan dari broker jarak jauh. Di sini, target dihilangkan dan semua pesan dari commands/factory topik pada broker jarak jauh diterbitkan pada topik yang sama secara lokal.

routes:
  - direction: remote-to-local
    name: "receive-commands"
    source: "commands/factory"

Kartubebas dalam topik sumber

Untuk menjenguk dari topik nonstatis, gunakan kartubebas untuk menentukan bagaimana pola topik harus dicocokkan dan aturan terjemahan nama topik. Misalnya, untuk menjenguk semua pesan di semua subtopik di bawah telemetry, gunakan wildcard multi-tingkat # :

routes:
  - direction: local-to-remote
    name: "wildcard-source"
    source: "telemetry/#"
    target: "factory/telemetry"

Dalam contoh, jika pesan diterbitkan ke topik apa pun di bawah telemetry, seperti telemetry/furnace/temperature, Azure IoT MQ menerbitkannya ke broker jembatan jarak jauh di bawah topik statis factory/telemetry .

Untuk wildcard topik tingkat tunggal, gunakan + sebagai gantinya, seperti telemetry/+/temperature.

Konektor jembatan MQTT harus mengetahui topik yang tepat di broker target baik remote atau Azure IoT MQ tanpa ambiguitas apa pun. Kartubebas hanya tersedia sebagai bagian source dari topik.

Topik sumber referensi dalam target

Untuk mereferensikan seluruh topik sumber, hilangkan konfigurasi topik target dalam rute sepenuhnya. Penggunaan wildcard didukung.

Misalnya, pesan apa pun yang diterbitkan di bawah topik my-topic/#, seperti my-topic/foo atau my-topic/bar, di-bridge ke broker jarak jauh di bawah topik yang sama:

routes:
  - direction: local-to-remote
    name: "target-same-as-source"
    source: "my-topic/#"
    # No target

Metode referensi topik sumber lainnya tidak didukung.

Langganan bersama

Bidang sharedSubscription menentukan konfigurasi langganan bersama untuk rute. Ini termasuk bidang berikut:

Bidang Diperlukan Deskripsi
groupMinimumShareNumber Ya Jumlah klien yang akan digunakan untuk langganan bersama.
groupName Ya Nama grup langganan bersama.

Langganan bersama membantu Azure IoT MQ membuat lebih banyak klien untuk jembatan MQTT. Anda dapat menyiapkan langganan bersama yang berbeda untuk setiap rute. Azure IoT MQ berlangganan pesan dari topik sumber dan mengirimkannya ke satu klien sekaligus menggunakan round robin. Kemudian, klien menerbitkan pesan ke broker yang di-bridge.

Misalnya, jika Anda menyiapkan rute dengan langganan bersama dan mengatur groupMinimumShareNumber sebagai 3:

routes:
    - direction: local-to-remote
      qos: 1
      source: "shared-sub-topic"
      target: "remote/topic"
      sharedSubscription:
        groupMinimumShareNumber: 3
        groupName: "sub-group"

Jembatan MQTT Azure IoT MQ membuat tiga klien pelanggan tidak peduli berapa banyak instans. Hanya satu klien yang mendapatkan setiap pesan dari $share/sub-group/shared-sub-topic. Kemudian, klien yang sama menerbitkan pesan ke broker jarak jauh yang di bridged di bawah topik remote/topic. Pesan berikutnya masuk ke klien berikutnya.

Ini membantu Anda menyeimbangkan lalu lintas pesan untuk jembatan antara beberapa klien dengan ID yang berbeda. Ini berguna jika broker bridged Anda membatasi berapa banyak pesan yang dapat dikirim setiap klien.

Dukungan broker Azure Event Grid MQTT

Untuk meminimalkan manajemen kredensial, menggunakan identitas terkelola yang ditetapkan sistem dan Azure RBAC adalah cara yang disarankan untuk menjenjang Azure IoT MQ dengan fitur broker MQTT Azure Event Grid.

Untuk tutorial end-to-end, lihat Tutorial: Mengonfigurasi jembatan MQTT antara Pratinjau Azure IoT MQ dan Azure Event Grid.

Koneksi ke broker Azure Event Grid MQTT dengan identitas terkelola

Pertama, menggunakan az k8s-extension show, temukan ID utama untuk ekstensi Azure IoT MQ Arc. Perhatikan nilai output untuk identity.principalId, yang akan terlihat seperti abcd1234-5678-90ab-cdef-1234567890ab.

az k8s-extension show --resource-group <RESOURCE_GROUP> --cluster-name <CLUSTER_NAME> --name mq --cluster-type connectedClusters --query identity.principalId -o tsv

Kemudian, gunakan Azure CLI untuk menetapkan peran ke identitas terkelola ekstensi Azure IoT MQ Arc. Ganti <MQ_ID> dengan ID utama yang Anda temukan di langkah sebelumnya. Misalnya, untuk menetapkan peran Penerbit EventGrid TopicSpaces:

az role assignment create --assignee <MQ_ID> --role 'EventGrid TopicSpaces Publisher' --scope /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.EventGrid/namespaces/<EVENT_GRID_NAMESPACE>

Tip

Untuk mengoptimalkan prinsip hak istimewa paling sedikit, Anda dapat menetapkan peran ke ruang topik alih-alih seluruh namespace Layanan Event Grid. Untuk mempelajari selengkapnya, lihat RBAC Event Grid dan Ruang topik.

Terakhir, buat MQTTBridge Koneksi or dan pilih identitas terkelola sebagai metode autentikasi. Buat MqttBridgeTopic Peta dan sebarkan jembatan MQTT dengan kubectl.

Sesi klien maksimum per nama autentikasi

Jika bridgeInstances diatur lebih tinggi dari 1, konfigurasikan sesi klien Konfigurasi maksimum konfigurasi>broker Event Grid MQTT per nama autentikasi agar sesuai dengan jumlah instans. Konfigurasi ini mencegah masalah seperti kesalahan 151 kuota terlampaui.

Batas per koneksi

Jika menggunakan identitas terkelola tidak dimungkinkan, ingatlah batas per koneksi untuk broker Azure Event Grid MQTT saat merancang penyiapan Anda. Pada saat penerbitan, batasnya adalah 100 pesan/detik setiap arah untuk koneksi. Untuk meningkatkan throughput jembatan MQTT, gunakan langganan bersama untuk meningkatkan jumlah klien yang melayani setiap rute.

Menjenjang dari broker lain ke Pratinjau Azure IoT MQ

Azure IoT MQ adalah broker MQTT yang sesuai dan broker lain dapat menjemputnya dengan kredensial autentikasi dan otorisasi yang sesuai. Misalnya, lihat dokumentasi jembatan MQTT untuk HiveMQ, VerneMQ, EMQX, dan Mosquitto.