Bagikan melalui


Membuat dan menghapus rute dan titik akhir dengan menggunakan Azure CLI

Artikel ini memperlihatkan kepada Anda cara mengelola rute dan titik akhir Azure IoT Hub dengan menggunakan Azure CLI. Pelajari cara menggunakan Azure CLI untuk membuat rute dan titik akhir untuk Azure Event Hubs, antrean dan topik Azure Bus Layanan, Azure Storage, dan Cosmos DB.

Untuk mempelajari selengkapnya tentang cara kerja perutean di IoT Hub, lihat Menggunakan perutean pesan IoT Hub untuk mengirim pesan perangkat ke cloud ke titik akhir yang berbeda. Untuk menelusuri penyiapan rute yang mengirim pesan ke penyimpanan lalu menguji pada perangkat yang disimulasikan, lihat Tutorial: Mengirim data perangkat ke Azure Storage dengan menggunakan perutean pesan IoT Hub.

Prasyarat

Prosedur yang dijelaskan dalam artikel menggunakan sumber daya berikut:

  • Azure CLI
  • Sebuah hub IoT
  • Layanan titik akhir di Azure

Azure CLI

Artikel ini menggunakan Azure CLI untuk bekerja dengan IoT Hub dan layanan Azure lainnya. Anda dapat memilih cara mengakses Azure CLI:

IoT Hub

Memiliki hub IoT di langganan Azure Anda. Jika belum memiliki hub, Anda dapat mengikuti langkah-langkah di Membuat IoT hub.

Layanan titik akhir

Anda memerlukan setidaknya satu layanan Azure lainnya untuk digunakan sebagai titik akhir ke rute. Titik akhir menerima pesan perangkat dan log peristiwa.

Tentukan layanan Azure mana yang ingin Anda gunakan sebagai titik akhir untuk menerima data perangkat dan peristiwa yang dirutekan: hub peristiwa, antrean atau topik Layanan, akun penyimpanan, atau kontainer Cosmos DB. Untuk layanan yang Anda pilih untuk digunakan, selesaikan langkah-langkah untuk membuat layanan titik akhir.

  1. Membuat ruang nama Azure Event Hubs dan pusat aktivitas. Untuk informasi selengkapnya, lihat Mulai Cepat: Membuat pusat aktivitas dengan menggunakan Azure CLI.

  2. Buat aturan otorisasi yang akan digunakan untuk memberikan izin IoT Hub untuk mengirim data ke pusat aktivitas.

    Tip

    Nilai name parameter RootManageSharedAccessKey adalah nama default yang memungkinkan Kelola, Kirim, Dengarkan klaim (akses). Jika Anda ingin membatasi klaim, berikan name parameter nama unik Anda sendiri dan sertakan --rights bendera diikuti oleh salah satu klaim. Contohnya,--name my-name --rights Send.

    az eventhubs eventhub authorization-rule create --resource-group my-resource-group --namespace-name my-routing-namespace --eventhub-name my-event-hubs --name RootManageSharedAccessKey
    

    Untuk informasi selengkapnya, lihat Mengotorisasi akses ke Azure Event Hubs.

Buat titik akhir

Semua rute IoT Hub menunjuk ke titik akhir, yang akan menerima perangkat dan data peristiwa yang dirutekan. Lebih dari satu rute dapat menunjuk ke titik akhir yang sama. Saat ini, IoT Hub mendukung titik akhir untuk Event hubs, Bus Layanan antrean atau topik, Storage, dan Cosmos DB. Instans layanan yang Anda gunakan untuk titik akhir anda harus ada di langganan Azure anda sebelum membuat titik akhir.

Catatan

Artikel ini menggunakan grup perintah az iot hub message-endpoint , yang diperkenalkan dalam versi 0.19.0 ekstensi azure-iot untuk Azure CLI. Versi ekstensi azure-iot sebelumnya menggunakan grup perintah titik akhir perutean hub az iot, yang serupa dan masih didukung tetapi tidak mendukung pembuatan titik akhir Cosmos DB.

Gunakan perintah berikut untuk memperbarui ke versi terbaru ekstensi azure-iot:

az extension update --name azure-iot

Untuk membuat titik akhir Azure Event Hubs, gunakan aturan otorisasi yang Anda buat di prasyarat.

  1. Gunakan perintah az eventhubs eventhub authorization-rule keys list untuk mencantumkan aturan otorisasi Anda. Berikan nilai berikut untuk parameter tempat penampung:

    parameter value
    eventhub_group Grup sumber daya pusat aktivitas.
    eventhub_namespace Pilih namespace Azure Event Hubs Anda.
    eventhub_name Nama hub kejadian.
    rule_name Nama aturan otorisasi untuk pusat aktivitas. Jika Anda menyalin contoh dalam prasyarat, nama ini adalah RootManageSharedAccessKey.
    az eventhubs eventhub authorization-rule keys list --resource-group {eventhub_group} --namespace-name {eventhub_namespace} --eventhub-name my-event-hubs --name {rule_name}
    
  2. Salin string koneksi pusat aktivitas Anda dari output.

  3. Gunakan perintah az iot hub message-endpoint create eventhub untuk membuat titik akhir kustom Anda. Berikan nilai berikut untuk parameter tempat penampung:

    parameter value
    iothub_name Nama hub IoT tempat titik akhir ini sedang dibuat.
    endpoint_name Nama unik untuk titik akhir baru.
    eventhub_subscription ID langganan hub peristiwa. Argumen ini dapat dibiarkan jika pusat aktivitas berada dalam langganan yang sama dengan hub IoT.
    eventhub_group Grup sumber daya pusat aktivitas. Argumen ini dapat dibiarkan jika pusat aktivitas berada dalam grup sumber daya yang sama dengan hub IoT.
    eventhub_connection_string string koneksi yang Anda salin dari aturan otorisasi pusat aktivitas.
    az iot hub message-endpoint create eventhub --hub-name {iothub_name} --endpoint-name {endpoint_name}  --connection-string "{eventhub_connection_string}" --endpoint-subscription-id {eventhub_subscription} --endpoint-resource-group {eventhub_group}
    

Menghapus titik akhir

Jika Anda ingin menghapus titik akhir dari hub IoT Anda, gunakan perintah az iot hub message-endpoint delete . Dengan perintah ini, Anda dapat menghapus satu titik akhir, menghapus semua titik akhir dari satu jenis, atau menghapus semua titik akhir dari hub.

Misalnya, perintah berikut menghapus semua titik akhir di hub IoT yang menunjuk ke sumber daya Storage:

az iot hub message-endpoint delete --hub-name {iothub_name} --endpoint-type storage-container

Membuat rute IoT Hub

Di IoT Hub, Anda dapat membuat rute untuk mengirim pesan atau mengambil peristiwa. Setiap rute memiliki sumber data dan titik akhir. Sumber data adalah tempat asal pesan atau log peristiwa. Titik akhir adalah tempat pesan atau log peristiwa berakhir. Anda memilih lokasi untuk sumber data dan titik akhir saat membuat rute baru di hub IoT Anda. Secara opsional, Anda dapat Menambahkan kueri ke rute pesan untuk memfilter pesan atau peristiwa sebelum masuk ke titik akhir.

Catatan

Artikel ini menggunakan grup perintah rute pesan hub az iot, yang diperkenalkan dalam versi 0.19.0 ekstensi azure-iot untuk Azure CLI. Versi ekstensi azure-iot sebelumnya menggunakan grup perintah rute hub az iot, yang serupa dan masih didukung.

Gunakan perintah berikut untuk memperbarui ke versi terbaru ekstensi azure-iot:

az extension update --name azure-iot
  1. Gunakan perintah az iot hub message-route create untuk membuat rute IoT Hub baru dengan menggunakan titik akhir tersebut. Berikan nilai berikut untuk parameter tempat penampung:

    parameter value
    iothub_name Nama hub IoT tempat rute ini sedang dibuat.
    route_name Nama unik untuk rute baru.
    endpoint_name Nama titik akhir tempat rute akan mengirim data.
    data_source Sumber rute. Nilai yang diterima adalah: deviceconnectionstateevents, , devicelifecycleeventsdevicejoblifecycleevents, devicemessages, digitaltwinchangeevents, invalid, atau twinchangeevents.
    az iot hub message-route create --hub-name {iothub_name} --route-name {route_name} --endpoint-name {endpoint_name} --source {data_source}
    
  2. Untuk mengonfirmasi bahwa rute baru berada di hub IoT Anda, gunakan perintah az iot hub message-route list untuk melihat semua rute di hub IoT Anda:

    az iot hub message-route list --hub-name {iothub_name}
    

    Anda akan melihat respons di Azure CLI yang mirip dengan contoh ini:

    [
       {
         "condition": "true",
         "endpointNames": [
           "endpoint_name"
         ],
         "isEnabled": true,
         "name": "route_name",
         "source": "DeviceConnectionStateEvents"
       }
    ]
    

Memperbarui rute IoT Hub

Anda dapat memperbarui beberapa properti rute setelah dibuat. Anda dapat mengubah status sumber, titik akhir, kondisi, atau diaktifkan dari rute yang ada.

Gunakan perintah az iot hub message-route show untuk melihat detail rute.

az iot hub message-route show --hub-name {iothub_name} --route-name {route_name}

Gunakan perintah az iot hub message-route update untuk memperbarui properti rute. Misalnya, perintah berikut memperbarui sumber rute.

az iot hub message-route update --hub-name {iothub_name} --route-name {route_name} --source devicejoblifecycleevents

Menghapus rute IoT Hub

Gunakan perintah az iot hub message-route delete untuk menghapus rute dari hub IoT Anda.

Menghapus rute tidak menghapus titik akhirnya karena rute lain mungkin menunjuk ke titik akhir yang sama. Jika Anda ingin menghapus titik akhir, Anda dapat melakukannya secara terpisah dari menghapus rute.

az iot hub message-route delete --hub-name {iothub_name} --route-name {route_name}

Mengelola rute fallback

Rute fallback mengirim semua pesan dari devicemessages sumber yang tidak memenuhi kondisi kueri pada salah satu rute yang ada ke titik akhir bawaan.

Gunakan perintah az iot hub message-route fallback show untuk melihat status rute fallback di hub IoT Anda.

az iot hub message-route fallback show --hub-name {iothub_name}

Gunakan perintah az iot hub message-route fallback set untuk mengaktifkan atau menonaktifkan rute fallback di hub IoT Anda.

az iot hub message-route fallback set --hub-name {iothub_name} --enabled {true_false}

Langkah berikutnya

Dalam artikel panduan ini, Anda mempelajari cara membuat rute dan titik akhir untuk Azure Event Hubs, Bus Layanan antrean dan topik, dan Azure Storage.

Untuk mempelajari selengkapnya tentang perutean pesan, lihat Tutorial: Mengirim data perangkat ke Azure Storage dengan menggunakan perutean pesan IoT Hub. Dalam tutorial, Anda membuat rute penyimpanan dan mengujinya dengan perangkat di hub IoT Anda.