Mulai Cepat: Menyebarkan modul IoT Edge pertama Anda ke perangkat Linux virtual

Berlaku untuk:Tanda centang IoT Edge 1.5 IoT Edge 1.5 Tanda centang IoT Edge 1.4 IoT Edge 1.4

Penting

IoT Edge 1.5 LTS dan IoT Edge 1.4 LTS adalah rilis yang didukung. IoT Edge 1.4 LTS adalah akhir masa pakai pada 12 November 2024. Jika Anda menggunakan rilis sebelumnya, lihat Memperbarui IoT Edge.

Uji Azure IoT Edge dalam mulai cepat ini dengan menyebarkan kode dalam kontainer ke perangkat Linux IoT Edge virtual. IoT Edge memungkinkan Anda mengelola kode dari jarak jauh di perangkat Anda sehingga Anda dapat mengirim lebih banyak beban kerja Anda ke edge. Untuk mulai cepat ini, sebaiknya gunakan komputer virtual Azure untuk perangkat IoT Edge Anda, yang memungkinkan Anda dengan cepat membuat mesin uji lalu menghapusnya setelah Anda selesai.

Dalam mulai cepat ini Anda belajar cara:

  • Membuat IoT Hub.
  • Mendaftarkan perangkat IoT Edge ke hub IoT Anda.
  • Menginstal dan memulai runtime IoT Edge pada perangkat virtual.
  • Menyebarkan modul dari jarak jauh ke perangkat IoT Edge.

Diagram arsitektur Mulai Cepat untuk perangkat dan cloud.

Mulai cepat ini memandu Anda membuat komputer virtual Linux yang dikonfigurasi untuk menjadi perangkat IoT Edge. Kemudian, Anda menyebarkan modul dari portal Azure ke perangkat Anda. Modul yang digunakan dalam mulai cepat ini adalah sensor simulasi yang menghasilkan data suhu, kelembapan, dan tekanan. Tutorial Azure IoT Edge lainnya dibangun berdasarkan pekerjaan yang Anda lakukan di sini dengan menyebarkan modul tambahan yang menganalisis data yang disimulasikan untuk wawasan bisnis.

Jika Anda tidak memiliki langganan Azure yang aktif, buat akun gratis sebelum Anda mulai.

Prasyarat

Mempersiapkan lingkungan Anda untuk Azure CLI.

Sumber daya cloud:

  • Grup sumber daya untuk mengelola semua sumber daya yang Anda gunakan dalam mulai cepat ini. Kami menggunakan contoh nama grup sumber daya IoTEdgeResources di seluruh mulai cepat ini dan tutorial berikut.

    az group create --name IoTEdgeResources --location westus2
    

Membuat IoT Hub

Awali mulai cepat dengan membuat hub IoT dengan Azure CLI.

Diagram cara membuat hub IoT di cloud.

Tingkat gratis IoT Hub bisa digunakan untuk mulai cepat ini. Jika Anda sudah pernah menggunakan IoT Hub sebelumnya dan telah membuat hub, Anda dapat menggunakan hub IoT tersebut.

Kode berikut membuat hub F1 gratis di grup sumber daya IoTEdgeResources. Ganti {hub_name} dengan nama unik untuk hub IoT Anda. Mungkin perlu waktu beberapa menit untuk membuat IoT Hub.

az iot hub create --resource-group IoTEdgeResources --name {hub_name} --sku F1 --partition-count 2

Jika Anda mendapatkan kesalahan karena sudah ada satu hub gratis di langganan Anda, ubah SKU menjadi S1. Setiap langganan hanya dapat memiliki satu hub IoT gratis. Jika Anda mendapatkan pesan kesalahan bahwa nama IoT Hub tidak tersedia, berarti orang lain sudah memiliki hub dengan nama tersebut. Coba nama baru.

Mendaftarkan perangkat IoT Edge

Daftarkan perangkat IoT Edge dengan hub IoT yang baru Anda buat.

Diagram cara mendaftarkan perangkat dengan identitas IoT Hub.

Buat identitas perangkat untuk perangkat IoT Edge Anda sehingga dapat berkomunikasi dengan hub IoT Anda. Identitas perangkat ada di cloud, dan Anda menggunakan string koneksi perangkat unik untuk mengaitkan perangkat fisik ke identitas perangkat.

Karena perangkat IoT Edge berperilaku dan dapat dikelola secara berbeda dari perangkat IoT biasa, nyatakan identitas ini untuk perangkat IoT Edge dengan bendera --edge-enabled.

  1. Di Azure Cloud Shell, masukkan perintah berikut untuk membuat nama perangkat myEdgeDevice di hub Anda.

    az iot hub device-identity create --device-id myEdgeDevice --edge-enabled --hub-name {hub_name}
    

    Jika Anda mendapatkan kesalahan tentang kunci kebijakan iothubowner, pastikan Cloud Shell Anda menjalankan versi terbaru ekstensi azure-iot .

  2. Lihat string koneksi untuk perangkat Anda, yang menghubungkan perangkat fisik Anda dengan identitasnya di IoT Hub. Ini berisi nama hub IoT Anda, nama perangkat Anda, dan kemudian kunci bersama yang mengotentikasi koneksi di antara keduanya. Kami akan merujuk ke string koneksi ini lagi di bagian berikutnya saat Anda menyiapkan perangkat IoT Edge Anda.

    az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name {hub_name}
    

    Misalnya, string koneksi Anda akan terlihat mirip HostName=contoso-hub.azure-devices.net;DeviceId=myEdgeDevice;SharedAccessKey=<DEVICE_SHARED_ACCESS_KEY>dengan .

Mengonfigurasi perangkat IoT Edge Anda

Buat komputer virtual dengan runtime Azure IoT Edge di atasnya.

Diagram cara memulai runtime pada perangkat.

Runtime IoT Edge digunakan di semua perangkat IoT Edge. Ini memiliki tiga komponen. Daemon keamanan IoT Edge dimulai setiap kali perangkat IoT Edge melakukan booting dan bootstrap perangkat dengan memulai agen IoT Edge. Agen IoT Edge memfasilitasi penyebaran dan pemantauan modul pada perangkat IoT Edge, termasuk hub IoT Edge. IoT Edge hub mengelola komunikasi antar modul pada perangkat IoT Edge, dan antara perangkat dan IoT Hub.

Selama konfigurasi runtime, Anda menyediakan string koneksi perangkat. Ini adalah string yang Anda ambil dari Azure CLI. String ini mengaitkan perangkat fisik Anda dengan identitas perangkat IoT Edge di Azure.

Menyebarkan perangkat IoT Edge

Bagian ini menggunakan templat Azure Resource Manager untuk membuat komputer virtual baru dan menginstal runtime IoT Edge di atasnya. Jika ingin menggunakan perangkat Linux Anda sendiri, Anda dapat mengikuti langkah-langkah penginstalan di Provisikan secara manual perangkat Azure IoT Edge Linux tunggal, lalu kembali ke mulai cepat ini.

Gunakan tombol Sebarkan ke Azure atau perintah CLI untuk membuat perangkat IoT Edge Anda berdasarkan templat iotedge-vm-deploy bawaan.

  • Sebarkan menggunakan templat IoT Edge Azure Resource Manager.

    Sebarkan ke Azure

  • Untuk pengguna bash atau Cloud Shell, salin perintah berikut ke editor teks, ganti teks tempat penampung dengan informasi Anda, lalu salin ke jendela bash atau Cloud Shell Anda:

    az deployment group create \
    --resource-group IoTEdgeResources \
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" \
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' \
    --parameters adminUsername='azureUser' \
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) \
    --parameters authenticationType='password' \
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    
  • Untuk pengguna PowerShell, salin perintah berikut ini ke jendela PowerShell Anda, lalu ganti teks tempat penampung dengan informasi Anda sendiri:

    az deployment group create `
    --resource-group IoTEdgeResources `
    --template-uri "https://raw.githubusercontent.com/Azure/iotedge-vm-deploy/main/edgeDeploy.json" `
    --parameters dnsLabelPrefix='<REPLACE_WITH_VM_NAME>' `
    --parameters adminUsername='azureUser' `
    --parameters deviceConnectionString=$(az iot hub device-identity connection-string show --device-id myEdgeDevice --hub-name <REPLACE_WITH_HUB_NAME> -o tsv) `
    --parameters authenticationType='password' `
    --parameters adminPasswordOrKey="<REPLACE_WITH_PASSWORD>"
    

Templat ini mengambil parameter berikut:

Parameter Deskripsi
grup-sumber-daya Grup sumber daya tempat sumber daya akan dibuat. Gunakan IoTEdgeResources default yang telah kami gunakan di seluruh artikel ini atau berikan nama grup sumber daya yang sudah ada di langganan Anda.
template-uri Pointer ke templat Resource Manager yang kami gunakan.
dnsLabelPrefix String yang akan digunakan untuk membuat nama host komputer virtual. Ganti teks tempat penampung dengan nama untuk komputer virtual Anda.
adminUsername Nama pengguna untuk akun admin komputer virtual. Gunakan contoh azureUser atau berikan nama pengguna baru.
deviceConnectionString String koneksi dari identitas perangkat di IoT Hub, yang digunakan untuk mengkonfigurasi runtime IoT Edge pada komputer virtual. Perintah CLI dalam parameter ini mengambil string koneksi untuk Anda. Ganti teks tempat penampung dengan nama hub IoT Anda.
authenticationType Metode autentikasi untuk akun admin. Mulai cepat ini menggunakan autentikasi kata sandi, namun Anda juga dapat mengatur parameter ini ke sshPublicKey.
adminPasswordOrKey Kata sandi atau nilai kunci SSH untuk akun admin. Ganti teks tempat penampung dengan kata sandi yang aman. Kata sandi Anda harus panjangnya minimal 12 karakter dan memiliki tiga dari empat karakter berikut: karakter huruf kecil, karakter huruf besar, digit, dan karakter khusus.

Setelah penyebaran selesai, Anda harus menerima output berformat JSON di CLI yang berisi informasi SSH untuk terhubung ke komputer virtual. Salin nilai entri SSH publik dari bagian output . Misalnya, perintah SSH Anda akan terlihat mirip ssh azureUser@edge-vm.westus2.cloudapp.azure.comdengan .

Menampilkan status runtime IoT Edge

Sisa perintah dalam mulai cepat ini terjadi pada perangkat IoT Edge itu sendiri, sehingga Anda dapat melihat apa yang terjadi pada perangkat. Jika Anda menggunakan komputer virtual, sambungkan ke komputer tersebut sekarang menggunakan nama pengguna admin yang Anda siapkan dan nama DNS yang dihasilkan oleh perintah penyebaran. Anda juga dapat menemukan nama DNS di halaman ringkasan komputer virtual Anda di portal Azure. Gunakan perintah berikut untuk menyambungkan ke komputer virtual Anda. Ganti {admin username} dan {DNS name} dengan nilai Anda sendiri.

ssh {admin username}@{DNS name}

Setelah tersambung ke komputer virtual Anda, verifikasi bahwa runtime berhasil diinstal dan dikonfigurasi pada perangkat IoT Edge Anda.

  1. Periksa untuk melihat bahwa IoT Edge sedang berjalan. Perintah berikut akan mengembalikan status Ok jika IoT Edge berjalan, atau memberikan kesalahan layanan apa pun.

    sudo iotedge system status
    

    Tip

    Anda memerlukan hak istimewa yang lebih tinggi untuk menjalankan perintah iotedge. Setelah Anda keluar dari komputer Anda dan masuk kembali pertama kali setelah menginstal runtime IoT Edge, izin Anda akan diperbarui secara otomatis. Sampai saat itu, gunakan sudo di depan perintah.

  2. Jika Anda perlu memecahkan masalah layanan, ambil log layanan.

    sudo iotedge system logs
    
  3. Lihat semua modul yang berjalan di perangkat IoT Edge Anda. Karena layanan baru saja dimulai untuk pertama kalinya, Anda hanya akan melihat modul edgeAgent berjalan. Modul edgeAgent berjalan secara default dan membantu memasang dan memulai modul tambahan yang Anda sebarkan ke perangkat Anda.

    sudo iotedge list
    

Perangkat IoT Edge Anda sekarang dikonfigurasi. Perangkat siap untuk menjalankan modul yang disebarkan cloud.

Menyebarkan modul

Kelola perangkat Azure IoT Edge Anda dari cloud untuk menyebarkan modul yang mengirim data telemetri ke IoT Hub.

Diagram cara menyebarkan modul dari cloud ke perangkat.

Salah satu kemampuan utama Azure IoT Edge adalah menyebarkan kode ke perangkat IoT Edge Anda dari cloud. Modul IoT Edge adalah paket yang dapat dieksekusi yang diimplementasikan sebagai kontainer. Di bagian ini, Anda akan menyebarkan modul bawaan dari bagian Modul IoT Edge di Azure Marketplace langsung dari Azure IoT Hub.

Modul yang Anda sebarkan di bagian ini mensimulasikan sensor dan mengirim data yang dihasilkan. Modul ini adalah bagian kode yang berguna saat Anda memulai IoT Edge karena Anda dapat menggunakan data simulasi untuk pengembangan dan pengujian. Jika Anda ingin melihat secara persis apa yang dilakukan modul ini, Anda dapat melihat kode sumber sensor suhu yang disimulasikan.

Ikuti langkah-langkah ini untuk memulai wizard Atur Modul untuk menyebarkan modul pertama Anda dari Azure Marketplace.

  1. Masuk ke portal Azure dan buka hub IoT Anda.

  2. Dari menu di sebelah kiri, di bawah Manajemen Perangkat, pilih Perangkat.

  3. Pilih ID perangkat perangkat IoT Edge target dari daftar.

    Saat Anda membuat perangkat IoT Edge baru, akan ditampilkan kode status 417 -- The device's deployment configuration is not set di portal Microsoft Azure. Status ini normal, dan berarti perangkat siap untuk menerima penyebaran modul.

  4. Di bilah atas, pilih Atur Modul.

    Pilih modul mana yang ingin Anda jalankan di perangkat Anda. Anda dapat memilih dari modul yang telah Anda buat, modul dari Marketplace Azure, atau modul yang telah Anda buat sendiri. Dalam mulai cepat ini, Anda akan menyebarkan modul dari Marketplace Azure.

  5. Di bawah Modul IoT Edge, buka menu drop-down Tambahkan, lalu pilih Modul Marketplace.

  6. Di Marketplace Modul IoT Edge, telusuri dan pilih modul Simulated Temperature Sensor. Modul ditambahkan ke bagian Modul IoT Edge dengan status berjalan yang diinginkan.

  7. Pilih Berikutnya: Rute untuk terus mengonfigurasi rute.

    Rute bernama SimulatedTemperatureSensorToIoTHub dibuat secara otomatis saat Anda menambahkan modul dari Marketplace Azure. Rute ini mengirimkan semua pesan dari modul suhu yang disimulasikan ke IoT Hub.

  8. Pilih Berikutnya: Tinjau + buat.

  9. Tinjau file JSON, lalu pilih Buat. File JSON menentukan semua modul yang Anda sebarkan ke perangkat IoT Edge Anda.

    Catatan

    Saat Anda mengirimkan penyebaran baru ke perangkat IoT Edge, tidak ada yang didorong ke perangkat Anda. Sebaliknya, perangkat meminta IoT Hub secara teratur untuk instruksi baru apa pun. Jika perangkat menemukan manifes penyebaran yang diperbarui, perangkat menggunakan informasi tentang penyebaran baru untuk menarik gambar modul dari cloud, lalu mulai menjalankan modul secara lokal. Proses ini memerlukan waktu beberapa menit.

Setelah Anda membuat detail penyebaran modul, wizard akan mengembalikan Anda ke halaman detail perangkat. Lihat status penyebaran pada tab Modul.

Anda akan melihat tiga modul: $edgeAgent, $edgeHub, dan SimulatedTemperatureSensor. Jika satu atau beberapa modul memiliki Ya di bawah Ditentukan dalam Penyebaran tetapi tidak di bawah Dilaporkan oleh Perangkat, perangkat IoT Edge Anda masih memulainya. Tunggu beberapa menit, lalu refresh halaman.

Cuplikan layar yang memperlihatkan SimulatedTemperatureSensor dalam daftar modul yang disebarkan.

Jika Anda mengalami masalah saat menyebarkan modul, lihat Memecahkan masalah perangkat IoT Edge dari portal Azure.

Melihat data yang dibuat

Dalam mulai cepat ini, Anda membuat perangkat IoT Edge baru dan memasang runtime IoT Edge di dalamnya. Kemudian Anda menggunakan portal Azure untuk menyebarkan modul IoT Edge untuk dijalankan di perangkat tanpa harus membuat perubahan pada perangkat itu sendiri.

Dalam hal ini, modul yang Anda dorong menghasilkan data lingkungan sampel yang dapat Anda gunakan untuk pengujian nanti. Sensor yang disimulasikan memantau mesin dan lingkungan di sekitar mesin. Misalnya, sensor ini mungkin berada di ruang server, di lantai pabrik, atau di turbin angin. Pesan tersebut mencakup suhu dan kelembapan sekitar, suhu dan tekanan mesin, serta tanda waktu. Tutorial IoT Edge menggunakan data yang dibuat oleh modul ini sebagai data pengujian untuk analitik.

Buka perintah di perangkat IoT Edge Anda lagi, atau gunakan koneksi SSH dari Azure CLI. Pastikan bahwa modul yang disebarkan dari cloud berjalan di perangkat IoT Edge Anda:

sudo iotedge list

Cuplikan layar yang memperlihatkan tiga modul di perangkat Anda.

Lihat pesan yang dikirim dari modul sensor suhu:

sudo iotedge logs SimulatedTemperatureSensor -f

Cuplikan layar yang menampilkan data dari modul Anda di konsol output.

Tip

Perintah IoT Edge peka huruf besar/kecil ketika merujuk ke nama modul.

Membersihkan sumber daya

Jika Anda ingin melanjutkan ke tutorial IoT Edge, Anda dapat menggunakan perangkat yang Anda daftarkan dan atur dalam mulai cepat ini. Jika tidak, Anda dapat menghapus sumber daya Azure yang Anda buat untuk menghindari biaya.

Jika Anda membuat komputer virtual dan hub IoT di grup sumber daya baru, Anda dapat menghapus grup tersebut dan semua sumber daya terkait. Periksa kembali konten grup sumber daya untuk memastikan tidak ada yang ingin Anda simpan. Jika Anda tidak ingin menghapus seluruh grup, Anda dapat menghapus sumber daya satu per satu.

Penting

Penghapusan grup sumber daya tidak bisa dipulihkan.

Hapus grup IoTEdgeResources. Mungkin perlu waktu beberapa menit untuk menghapus grup sumber daya.

az group delete --name IoTEdgeResources --yes

Anda dapat mengonfirmasi bahwa grup sumber daya dihapus dengan melihat daftar grup sumber daya.

az group list

Langkah berikutnya

Dalam mulai cepat ini, Anda membuat perangkat IoT Edge dan menggunakan antarmuka cloud Azure IoT Edge untuk menyebarkan kode ke perangkat. Sekarang Anda memiliki perangkat uji yang menghasilkan data mentah tentang lingkungannya.

Pada tutorial berikutnya, Anda akan mempelajari cara memantau aktivitas dan kesehatan perangkat Anda dari portal Microsoft Azure.