Tutorial: Perbarui Perangkat for Azure IoT Hub menggunakan agen referensi simulator Ubuntu (18,04 x64)

Tutorial ini menunjukkan pembaruan berbasis gambar end-to-end menggunakan Pembaruan Perangkat untuk IoT Hub. Perbarui Perangkat for Azure IoT Hub mendukung pembaruan berbasis gambar, berbasis paket, dan berbasis skrip.

Pembaruan gambar menyediakan tingkat kepercayaan yang lebih tinggi dalam status akhir perangkat. Biasanya lebih mudah untuk mereplikasi hasil pembaruan gambar antara lingkungan pra-produksi dan lingkungan produksi karena tidak menimbulkan tantangan yang sama seperti mengelola paket dan dependensinya. Karena sifat atomnya, Anda juga dapat mengadopsi model failover A/B dengan mudah.

Dalam tutorial ini, Anda akan mempelajari cara:

  • Tetapkan perangkat IoT ke grup Pembaruan Perangkat menggunakan tag.
  • Mengunduh dan memasang gambar.
  • Mengimpor pembaruan.
  • Sebarkan pembaruan gambar.
  • Memantau penyebaran pembaruan.

Prasyarat

  • Buat akun Pembaruan Perangkat dan instans yang dikonfigurasi dengan hub IoT.

  • Memiliki perangkat Ubuntu 18.04. Perangkat ini bisa berupa komputer fisik atau virtual.

  • Unduh file zip bernama Tutorial_Simulator.zip dari Aset Rilis dalam rilis terbaru, dan buka zip.

    Jika perangkat pengujian Anda berbeda dari komputer pengembangan Anda, unduh file zip ke keduanya.

    Anda dapat menggunakan wget untuk mengunduh file zip. Ganti <release_version> dengan rilis terbaru, misalnya 1.0.0.

    wget https://github.com/Azure/iot-hub-device-update/releases/download/<release_version>/Tutorial_Simulator.zip
    

Mendaftarkan perangkat dan mengonfigurasi identitas modul

Tambahkan perangkat ke registri perangkat di hub IoT Anda. Setiap perangkat yang terhubung ke hub IoT perlu didaftarkan.

Di bagian ini, kita juga akan membuat identitas modul. Modul adalah identitas independen untuk komponen yang ada pada perangkat IoT, yang memungkinkan granularitas yang lebih halus ketika Anda memiliki perangkat IoT yang menjalankan beberapa proses. Untuk tutorial ini, Anda akan menggunakan identitas modul ini untuk agen Pembaruan Perangkat yang berjalan pada perangkat IoT. Untuk informasi selengkapnya, lihat Pahami dan gunakan modul kembar di IoT Hub.

  1. Dari portal Azure, navigasikan ke hub IoT Anda.
  2. Di panel kiri, pilih Perangkat. Lalu pilih Tambahkan Perangkat.
  3. Di bawah ID Perangkat, masukkan nama untuk perangkat. Pastikan kotak centang Buat otomatis kunci dipilih.
  4. Pilih Simpan.
  5. Sekarang, Anda akan diarahkan kembali ke halaman Perangkat dan perangkat yang Anda buat seharusnya tercantum dalam daftar. Pilih perangkat tersebut.
  6. Pilih Tambahkan Identitas Modul.
  7. Di bawah Nama Identitas Modul, masukkan nama untuk modul, misalnya, DUAgent.
  8. Pilih Simpan

Menyalin string koneksi modul

  1. Dalam tampilan perangkat, Anda akan melihat modul baru Anda tercantum di bawah judul Identitas Modul . Pilih nama modul untuk membuka detailnya.
  2. Pilih ikon Salin di samping String koneksi (kunci primer). Simpan string koneksi ini untuk digunakan saat Anda mengonfigurasi agen Pembaruan Perangkat. String ini adalah string koneksi modul Anda.

Menambahkan tag ke modul kembar Anda

  1. Masih di halaman detail identitas modul, pilih Module Identity Twin

  2. Tambahkan nilai tag Pembaruan Perangkat baru pada tingkat yang sama seperti modelId dan version dalam file kembar, seperti yang ditunjukkan:

    "tags": {
        "ADUGroup": "DU-simulator-tutorial"
    },
    

    Cuplikan layar tag ADUGroup di modul kembar.

    Setiap perangkat yang dikelola oleh Pembaruan Perangkat memerlukan tag yang dipesan ini, yang menetapkan perangkat ke grup Pembaruan Perangkat. Ini dapat berada di perangkat kembar atau dalam kembar modul, seperti yang ditunjukkan di sini. Setiap perangkat hanya dapat ditetapkan ke satu grup Pembaruan Perangkat.

  3. Pilih Simpan. Portal memformat ulang modul kembar untuk memasukkan tag ke dalam struktur json.

Menginstal dan mengonfigurasi agen Pembaruan Perangkat

Agen Pembaruan Perangkat berjalan di setiap perangkat yang dikelola oleh Pembaruan Perangkat. Untuk tutorial ini, kita akan mengonfigurasinya untuk berjalan sebagai simulator sehingga kita dapat melihat bagaimana pembaruan dapat diterapkan ke perangkat tanpa benar-benar mengubah konfigurasi perangkat.

  1. Di perangkat IoT Anda, tambahkan repositori paket Microsoft lalu tambahkan kunci penandatanganan paket Microsoft ke daftar kunci tepercaya Anda.

    wget https://packages.microsoft.com/config/ubuntu/18.04/multiarch/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
    sudo dpkg -i packages-microsoft-prod.deb
    rm packages-microsoft-prod.deb   
    
  2. Instal paket .deb agen Pembaruan Perangkat.

    sudo apt-get update
    sudo apt-get install deviceupdate-agent
    
  3. Buka file konfigurasi agen.

    sudo nano /etc/adu/du-config.json
    
  4. Perbarui nilai berikut dalam file konfigurasi:

    • produsen: "Contoso" - Nilai ini digunakan untuk mengklasifikasikan perangkat IoT untuk menargetkan pembaruan.
    • model: "Video" - Nilai ini digunakan untuk mengklasifikasikan perangkat IoT untuk menargetkan pembaruan.
    • nama: "aduagent"
    • agents.connectionData: Berikan string koneksi yang Anda salin dari identitas modul.
    • agents.manufacturer: "Contoso"
    • agents.model: "Video"

    Untuk informasi selengkapnya tentang parameter dalam langkah ini, lihat File konfigurasi Pembaruan Perangkat.

    Catatan

    Anda juga dapat menggunakan IoT Identity Service untuk memprovisikan perangkat. Untuk melakukannya, yang menginstal layanan indentitas iot sebelum menginstal agen Pembaruan Perangkat. Kemudian, konfigurasikan agen Pembaruan Perangkat dengan "connectionType": "AIS" dan connectionData sebagai string kosong dalam file konfigurasi.

  5. Simpan dan tutup file. CTRL+X, Y, dan Enter.

  6. Menyiapkan agen untuk dijalankan sebagai simulator. Jalankan perintah berikut pada perangkat IoT sehingga agen Pembaruan Perangkat memanggil handler simulator untuk memproses pembaruan paket dengan SWUpdate (microsoft/swupdate:1).

      sudo /usr/bin/AducIotAgent --extension-type updateContentHandler --extension-id 'microsoft/swupdate:1' --register-extension /var/lib/adu/extensions/sources/libmicrosoft_simulator_1.so
    
  7. Unzip Tutorial_Simulator.zip file yang Anda unduh di prasyarat dan salin sample-du-simulator-data.json file ke tmp folder .

    cp sample-du-simulator-data.json /tmp/du-simulator-data.json
    

    Jika /tmp tidak ada, jalankan:

    sudo mkdir/tmp
    sudo chown root:root/tmp
    sudo chmod 1777/tmp
    
  8. Ubah izin untuk file baru.

    sudo chown adu:adu /tmp/du-simulator-data.json
    sudo chmod 664 /tmp/du-simulator-data.json
    
  9. Mulai ulang agen Pembaruan Perangkat untuk menerapkan perubahan Anda.

     sudo systemctl restart deviceupdate-agent
    

Mengimpor pembaruan

Di bagian ini, Anda menggunakan file TutorialImportManifest_Sim.importmanifest.json dan adu-update-image-raspberrypi3.swu dari yang diunduh Tutorial_Simulator.zip dalam prasyarat. File pembaruan digunakan kembali dari tutorial Raspberry Pi. Karena pembaruan dalam tutorial ini disimulasikan, konten file tertentu tidak masalah.

  1. Di komputer pengembangan Anda, masuk ke portal Azure dan buka hub IoT Anda yang dikonfigurasi dengan Pembaruan Perangkat.

  2. Pada panel navigasi, di bawah Manajemen Perangkat, pilih Updates.

  3. Pilih Impor pembaruan baru.

  4. Pilih Pilih dari kontainer penyimpanan.

  5. Pilih akun penyimpanan yang sudah ada atau buat akun baru dengan memilih + Akun penyimpanan. Kemudian, pilih kontainer yang sudah ada atau buat kontainer baru dengan memilih + Kontainer. Kontainer ini akan digunakan untuk mementahkan file pembaruan Anda untuk diimpor.

    Catatan

    Sebaiknya gunakan kontainer baru setiap kali mengimpor pembaruan untuk menghindari mengimpor file secara tidak sengaja dari pembaruan sebelumnya. Jika Anda tidak menggunakan kontainer baru, pastikan untuk menghapus file apa pun dari kontainer yang ada sebelum Anda menyelesaikan langkah ini.

    Cuplikan layar yang menampilkan akun Penyimpanan dan Kontainer.

  6. Di kontainer Anda, pilih Unggah dan buka file yang Anda unduh di prasyarat. Pilih file TutorialImportManifest_Sim.importmanifest.json dan file adu-update-image-raspberrypi3.swu , lalu pilih Unggah.

  7. Pilih kotak centang menurut setiap file, lalu pilih tombol Pilih untuk kembali ke halaman Impor pembaruan .

    Cuplikan layar yang menunjukkan pemilihan file yang diunggah dalam kontainer.

  8. Pada halaman Impor pembaruan, tinjau file yang akan diimpor. Kemudian pilih Perbarui impor untuk memulai proses impor.

    Cuplikan layar yang memperlihatkan file yang diunggah yang akan diimpor sebagai pembaruan.

  9. Proses impor dimulai, dan layar akan berubah ke bagian Riwayat Impor. Kolom Status memperlihatkan impor sebagai Berjalan saat impor sedang berlangsung, dan Berhasil saat impor selesai. Gunakan tombol Refresh untuk memperbarui status.

  10. Ketika kolom Status menunjukkan impor telah berhasil, pilih header Pembaruan yang tersedia. Sekarang Anda akan melihat pembaruan yang diimpor dalam daftar.

    Cuplikan layar yang memperlihatkan pembaruan baru yang tercantum sebagai pembaruan yang tersedia.

Untuk informasi selengkapnya tentang proses impor, lihat Mengimpor pembaruan ke Pembaruan Perangkat untuk IoT Hub.

Menampilkan grup perangkat

Pembaruan Perangkat menggunakan grup untuk mengatur perangkat. Pembaruan Perangkat secara otomatis mengurutkan perangkat ke dalam grup berdasarkan tag dan properti kompatibilitas yang ditetapkan. Setiap perangkat hanya termasuk dalam satu grup, tetapi grup dapat memiliki beberapa subgrup untuk mengurutkan kelas perangkat yang berbeda.

  1. Buka tab Grup dan Penyebaran di bagian atas halaman Updates.

  2. Menampilkan daftar grup dan bagan kepatuhan pembaruan. Bagan kepatuhan pembaruan memperlihatkan jumlah perangkat di berbagai status kepatuhan: Pada pembaruan terbaru, Pembaruan baru tersedia, dan Pembaruan sedang Berlangsung. Pelajari kepatuhan pembaruan.

    Cuplikan layar yang menunjukkan pembaruan tampilan kepatuhan.

    Anda akan melihat grup perangkat yang berisi perangkat simulasi yang Anda siapkan dalam tutorial ini bersama dengan pembaruan yang tersedia untuk perangkat di grup baru. Jika ada perangkat yang tidak memenuhi persyaratan kelas perangkat grup, perangkat tersebut akan muncul dalam grup tidak valid yang sesuai.

Untuk informasi selengkapnya tentang tag dan grup, lihat Mengelola grup perangkat.

Menyebarkan pembaruan

  1. Pada tab Grup dan Penyebaran , Anda akan melihat pembaruan baru yang tersedia untuk grup perangkat Anda. Tautan ke pembaruan harus berada di bawah Status. Anda mungkin perlu me-refresh halaman.

  2. Pilih nama grup untuk melihat detailnya.

  3. Pada halaman detail grup, Anda akan melihat bahwa ada satu pembaruan baru yang tersedia. Pilih Sebarkan untuk memulai penyebaran.

    Cuplikan layar yang memperlihatkan memulai penyebaran pembaruan grup.

  4. Pembaruan yang kami impor di bagian sebelumnya tercantum sebagai pembaruan terbaik yang tersedia untuk grup ini. Pilih Sebarkan.

  5. Jadwalkan penyebaran Anda untuk segera dimulai, lalu pilih Buat.

  6. Pada halaman detail grup, navigasikan ke tab Pembaruan saat ini . Di bawah Detail penyebaran, Status beralih ke Aktif.

  7. Setelah perangkat Anda berhasil diperbarui, kembali ke halaman Updates. Anda akan melihat bahwa bagan kepatuhan dan detail penyebaran Anda diperbarui untuk mencerminkan hal yang sama.

Memantau penyebaran pembaruan

  1. Kembali ke halaman detail grup dan pilih tab Riwayat penyebaran .

  2. Pilih Tampilkan detail penyebaran di samping penyebaran yang Anda buat.

    Cuplikan layar yang menampilkan Detail penyebaran.

  3. Pilih Refresh untuk melihat detail status terbaru.

Anda kini telah berhasil menyelesaikan pembaruan gambar ujung-ke-ujung menggunakan Device Update for IoT Hub menggunakan agen referensi simulator Ubuntu (18,04 x64).

Membersihkan sumber daya

Jika Anda akan melanjutkan ke tutorial berikutnya, simpan Pembaruan Perangkat dan IoT Hub sumber daya Anda.

Jika tidak lagi diperlukan, Anda dapat menghapus sumber daya ini di portal Azure.

  1. Navigasi ke grup sumber daya Anda di portal Microsoft Azure.

  2. Pilih sumber daya mana yang akan dihapus.

    • Jika Anda ingin menghapus semua sumber daya dalam grup, pilih Hapus grup sumber daya.
    • Jika Anda hanya ingin menghapus sumber daya tertentu, gunakan kotak centang untuk memilih sumber daya, lalu pilih Hapus.

Langkah berikutnya

Dalam tutorial ini, Anda mempelajari cara mengimpor dan menyebarkan pembaruan gambar. Selanjutnya, pelajari cara memperbarui paket perangkat.