Memperbarui IoT Edge

Berlaku untuk:IoT Edge 1.4 checkmark IoT Edge 1.4

Penting

IoT Edge 1.4 adalah rilis yang didukung Jika Anda menggunakan rilis sebelumnya, lihat Memperbarui IoT Edge.

Karena layanan IoT Edge sering merilis versi baru, perbarui perangkat IoT Edge Anda untuk mendapatkan fitur terbaru dan peningkatan keamanan. Artikel ini menyediakan informasi tentang cara memperbarui perangkat IoT Edge Anda saat versi baru tersedia.

Dua komponen logis perangkat IoT Edge perlu diperbarui jika Anda ingin pindah ke versi yang lebih baru.

  • Subsistem keamanan - Meskipun arsitektur subsistem keamanan berubah antara versi 1.1 dan 1.2, tanggung jawabnya tetap sama. Ini berjalan pada perangkat, menangani tugas berbasis keamanan, dan memulai modul saat perangkat dimulai. Subsistem keamanan hanya dapat diperbarui dari perangkat itu sendiri.

  • Runtime IoT Edge - Runtime IoT Edge terdiri dari modul hub IoT Edge (edgeHub) dan agen IoT Edge (edgeAgent). Bergantung pada cara Anda menyusun penyebaran, runtime dapat diperbarui dari perangkat atau dari jarak jauh.

Bagaimana cara memperbarui

Gunakan bagian artikel ini untuk memperbarui subsistem keamanan dan kontainer runtime pada perangkat.

Rilis patch

Saat Anda meningkatkan antara rilis patch , misalnya 1.4.1 ke 1.4.2, urutan pembaruan tidak penting. Anda dapat meningkatkan subsistem keamanan atau kontainer runtime sebelum atau sesudah yang lain. Untuk memperbarui antara rilis patch:

  1. Memperbarui subsistem keamanan
  2. Memperbarui kontainer runtime
  3. Memverifikasi kecocokan versi

Anda dapat memecahkan masalah proses peningkatan kapan saja.

Rilis utama atau minor

Saat Anda meningkatkan antara rilis utama atau minor, misalnya dari 1.1 ke 1.4, perbarui subsistem keamanan dan kontainer runtime. Sebelum rilis, kami menguji subsistem keamanan dan kombinasi versi kontainer runtime. Untuk memperbarui antara rilis produk utama atau minor:

  1. Pada perangkat, hentikan IoT Edge menggunakan perintah sudo systemctl stop iotedge dan hapus instalan.

  2. Pada perangkat, tingkatkan mesin kontainer Anda, baik Docker atau Moby.

  3. Di perangkat, instal IoT Edge.

    Jika Anda mengimpor konfigurasi lama menggunakan iotedge config import, maka ubah gambar [agent.config] dari file yang dihasilkan /etc/aziot/config.toml untuk menggunakan gambar 1.4 untuk edgeAgent.

    Untuk informasi selengkapnya, lihat Mengonfigurasi pengaturan perangkat IoT Edge.

  4. Di IoT Hub, perbarui penyebaran modul untuk mereferensikan modul sistem terbaru.

  5. Pada perangkat, mulai IoT Edge menggunakan sudo iotedge config apply.

Anda dapat memecahkan masalah proses peningkatan kapan saja.

Memperbarui subsistem keamanan

Subsistem keamanan IoT Edge mencakup sekumpulan komponen asli yang perlu diperbarui menggunakan manajer paket pada perangkat IoT Edge.

Periksa versi subsistem keamanan yang berjalan di perangkat Anda dengan menggunakan perintah iotedge version. Jika Anda menggunakan IoT Edge untuk Linux di Windows, Anda perlu SSH ke komputer virtual Linux untuk mengecek versinya.

Penting

Jika Anda memperbarui perangkat dari versi 1.0 atau 1.1 ke rilis terbaru, ada perbedaan dalam proses penginstalan dan konfigurasi yang memerlukan langkah tambahan. Untuk informasi selengkapnya, lihat langkah-langkah selanjutnya dalam artikel ini: Kasus khusus: Pembaruan dari 1.0 atau 1.1 ke rilis terbaru.

Pada perangkat Linux x64, gunakan apt-get atau manajer paket yang sesuai untuk memperbarui subsistem keamanan ke versi terbaru.

Perbarui apt:

sudo apt-get update

Catatan

Untuk instruksi untuk mendapatkan konfigurasi repositori terbaru dari Microsoft, lihat langkah-langkah awal untuk Menginstal IoT Edge.

Periksa untuk melihat versi IoT Edge mana yang tersedia:

apt list -a aziot-edge

Perbarui IoT Edge:

sudo apt-get install aziot-edge defender-iot-micro-agent-edge

Menjalankan apt-get install aziot-edge peningkatan subsistem keamanan dan menginstal layanan identitas, aziot-identity-service, sebagai dependensi yang diperlukan.

Disarankan untuk menginstal agen mikro dengan agen Edge untuk mengaktifkan pemantauan dan pengerasan keamanan perangkat Edge Anda. Untuk mempelajari selengkapnya tentang Pertahanan Microsoft untuk IoT, lihat Apa itu Pertahanan Microsoft untuk IoT untuk penyusun perangkat.

Kemudian, terapkan kembali konfigurasi untuk memastikan sistem diperbarui sepenuhnya.

sudo iotedge config apply

Memperbarui kontainer runtime

Cara Anda memperbarui agen IoT Edge dan kontainer hub IoT Edge tergantung pada apakah Anda menggunakan tag bergulir (seperti 1.1) atau tag tertentu (seperti 1.1.1) dalam penyebaran Anda.

Cek versi agen IoT Edge dan modul hub IoT Edge yang saat ini ada di perangkat Anda menggunakan perintah iotedge logs edgeAgent atau iotedge logs edgeHub. Jika Anda menggunakan IoT Edge untuk Linux di Windows, Anda perlu SSH ke komputer virtual Linux untuk mengecek versi modul runtime.

Screenshot of where to find the container version in console logs.

Memahami tag IoT Edge

Agen IoT Edge dan gambar hub IoT Edge ditandai dengan versi IoT Edge yang terkait dengannya. Ada dua cara berbeda untuk menggunakan tag dengan gambar runtime bahasa umum:

  • Tag bergulir - Gunakan hanya dua nilai pertama dari nomor versi untuk mendapatkan gambar terbaru yang cocok dengan digit tersebut. Misalnya, 1.1 diperbarui setiap kali ada rilis baru agar mengarah ke versi 1.1.x terbaru. Jika runtime bahasa umum kontainer pada perangkat IoT Edge Anda menarik gambar lagi, modul runtime bahasa umum diperbarui ke versi terbaru. Penyebaran dari portal Microsoft Azure default ke tag bergulir. Pendekatan ini disarankan untuk tujuan pengembangan.

  • Tag tertentu - Gunakan ketiga nilai nomor versi untuk mengatur versi gambar secara eksplisit. Misalnya, 1.1.0 tidak akan berubah setelah rilis awal. Anda dapat mendeklarasikan nomor versi baru dalam manifes penyebaran saat Anda siap untuk memperbarui. Pendekatan ini disarankan untuk keperluan produksi.

Memperbarui citra tag bergulir

Jika Anda menggunakan tag bergulir dalam penyebaran Anda (misalnya, mcr.microsoft.com/azureiotedge-hub:1.1) maka Anda perlu memaksa runtime kontainer pada perangkat Anda untuk menarik versi terbaru citra.

Hapus versi lokal citra dari perangkat IoT Edge Anda. Pada komputer Windows, menghapus instalan subsistem keamanan juga menghapus gambar runtime, sehingga Anda tidak perlu mengambil langkah ini lagi.

docker rmi mcr.microsoft.com/azureiotedge-hub:1.1
docker rmi mcr.microsoft.com/azureiotedge-agent:1.1

Anda mungkin perlu menggunakan bendera -f force untuk menghapus citra.

Layanan IoT Edge menarik versi terbaru gambar runtime dan secara otomatis memulainya di perangkat Anda lagi.

Memperbarui citra tag tertentu

Jika Anda menggunakan tag tertentu dalam penyebaran Anda (misalnya, mcr.microsoft.com/azureiotedge-hub:1.4) maka yang perlu Anda lakukan adalah memperbarui tag dalam manifes penyebaran Anda dan menerapkan perubahan ke perangkat Anda.

  1. Pada Hub IoT di portal Microsoft Azure, pilih perangkat IoT Edge Anda, dan pilih Atur Modul.

  2. Pada tab Modul, pilih Runtime Pengaturan.

    Screenshot that shows location of the Runtime Settings tab.

  3. Di Runtime Pengaturan, perbarui nilai URI Gambar di bagian Agen Edge dengan versi yang diinginkan. Jangan pilih Terapkan belum.

    Screenshot that shows where to update the image URI with your version in the Edge Agent.

  4. Pilih tab Edge Hub dan perbarui nilai URI Gambar dengan versi yang diinginkan yang sama.

    Screenshot that shows where to update the image URI with your version in the Edge Hub.

  5. Pilih Terapkan untuk menyimpan perubahan.

  6. Pilih Tinjau + buat, tinjau penyebaran seperti yang terlihat dalam file JSON, dan pilih Buat.

Memverifikasi kecocokan versi

  1. Di perangkat Anda, gunakan iotedge version untuk memeriksa versi subsistem keamanan. Output mencakup nomor versi utama, minor, dan revisi. Misalnya, iotedge 1.4.2.

  2. Dalam pengaturan runtime penyebaran perangkat Anda, verifikasi versi URI gambar edgeHub dan edgeAgent cocok dengan versi utama dan minor dari subsistem keamanan. Jika versi subsistem keamanan adalah 1.4.2, versi gambarnya adalah 1.4. Misalnya, mcr.microsoft.com/azureiotedge-hub:1.4 dan mcr.microsoft.com/azureiotedge-agent:1.4.

Catatan

Perbarui subsistem keamanan IoT Edge dan kontainer runtime ke versi rilis yang didukung yang sama. Meskipun versi yang tidak cocok didukung, kami belum menguji semua kombinasi versi.

Untuk menemukan versi terbaru Azure IoT Edge, lihat Rilis Azure IoT Edge.

Kasus khusus: Perbarui dari 1.0 atau 1.1 ke rilis terbaru

Mulai versi 1.2, layanan IoT Edge menggunakan nama paket baru dan memiliki beberapa perbedaan dalam proses penginstalan dan konfigurasi. Jika Anda memiliki perangkat IoT Edge yang menjalankan versi 1.0 atau 1.1, gunakan instruksi ini untuk mempelajari cara memperbarui ke rilis terbaru.

Beberapa perbedaan utama antara rilis terbaru dan versi 1.1 dan yang lebih lama meliputi:

  • Nama paket berubah dari iotedge ke aziot-edge.
  • Paket libiothsm-std tidak lagi digunakan. Jika Anda menggunakan paket standar yang disediakan sebagai bagian dari rilis IoT Edge, konfigurasi Anda dapat ditransfer ke versi baru. Jika Anda menggunakan implementasi libiothsm-std yang berbeda, maka sertifikat yang disediakan pengguna seperti sertifikat identitas perangkat, CA perangkat, dan bundel kepercayaan perlu dikonfigurasi ulang.
  • Layanan identitas baru, aziot-identity-service diperkenalkan sebagai bagian dari rilis 1.2. Layanan ini menangani penyediaan dan manajemen identitas untuk IoT Edge dan untuk komponen perangkat lain yang perlu berkomunikasi dengan IoT Hub, seperti Pembaruan Perangkat untuk IoT Hub.
  • File konfigurasi default memiliki nama atau lokasi baru. Sebelumnya /etc/iotedge/config.yaml, informasi konfigurasi perangkat Anda kini diharapkan untuk berada di /etc/aziot/config.toml secara default. Perintah iotedge config import dapat digunakan untuk membantu memigrasikan informasi konfigurasi dari lokasi dan sintaksis lama ke lokasi dan sintaksis baru.
    • Perintah impor tidak dapat mendeteksi atau memodifikasi aturan akses ke modul platform tepercaya (TPM) perangkat. Jika perangkat Anda menggunakan pengesahan TPM, Anda perlu memperbarui file /etc/udev/rules.d/tpmaccess.rules secara manual untuk memberikan akses ke layanan aziottpm. Untuk informasi selengkapnya, lihat Memberi IoT Edge akses ke TPM.
  • API beban kerja dalam versi terbaru menyimpan rahasia terenkripsi dalam format baru. Jika Anda meningkatkan dari versi yang lebih lama ke versi terbaru, kunci enkripsi master yang ada akan diimpor. API beban kerja dapat membaca rahasia yang disimpan dalam format sebelumnya menggunakan kunci enkripsi yang diimpor. Namun, API beban kerja tidak dapat menulis rahasia terenkripsi dalam format lama. Setelah modul mengenkripsi ulang rahasia, modul disimpan dalam format baru. Rahasia yang dienkripsi dalam versi terbaru tidak dapat dibaca oleh modul yang sama di versi 1.1. Jika Anda menyimpan data terenkripsi ke folder atau volume yang dipasang host, selalu buat salinan cadangan data sebelum meningkatkan untuk mempertahankan kemampuan menurunkan tingkat jika perlu.
  • Untuk kompatibilitas mundur saat menyambungkan perangkat yang tidak mendukung TLS 1.2, Anda dapat mengonfigurasi Edge Hub untuk tetap menerima TLS 1.0 atau 1.1 melalui variabel lingkungan SslProtocols. Dukungan untuk TLS 1.0 dan 1.1 di IoT Hub dianggap warisan dan juga dapat dihapus dari Edge Hub dalam rilis mendatang.  Untuk menghindari masalah di masa mendatang, gunakan TLS 1.2 sebagai satu-satunya versi TLS saat menyambungkan ke Azure Stack Edge Hub atau IoT Hub.
  • Pratinjau untuk broker MQTT eksperimental di Edge Hub 1.2 telah berakhir dan tidak disertakan dalam Edge Hub 1.4. Kami terus menyempurnakan rencana kami untuk broker MQTT berdasarkan umpan balik yang diterima. Sementara itu, jika Anda memerlukan broker MQTT yang mematuhi standar di IoT Edge, pertimbangkan untuk menyebarkan broker sumber terbuka seperti Mosquitto sebagai modul IoT Edge.
  • Dimulai dengan versi 1.2, ketika gambar cadangan dihapus dari kontainer, kontainer terus berjalan dan tetap ada di seluruh mulai ulang. Dalam 1.1, ketika gambar cadangan dihapus, kontainer segera dibuat ulang dan gambar penolakan diperbarui.

Sebelum mengotomatiskan proses pembaruan, validasi proses pembaruan tersebut berfungsi pada mesin uji.

Jika Anda sudah suap siap, ikuti langkah berikut untuk memperbarui IoT Edge di perangkat Anda:

  1. Memperbarui apt.

    sudo apt-get update
    
  2. Hapus instalan versi IoT Edge sebelumnya, membiarkan file konfigurasi Anda tetap di tempatnya.

    sudo apt-get remove iotedge
    
  3. Instal versi terbaru IoT Edge, bersama dengan layanan identitas IoT dan agen mikro Pertahanan Microsoft untuk IoT untuk Edge.

    sudo apt-get install aziot-edge defender-iot-micro-agent-edge
    

Disarankan untuk menginstal agen mikro dengan agen Edge untuk mengaktifkan pemantauan dan pengerasan keamanan perangkat Edge Anda. Untuk mempelajari selengkapnya tentang Pertahanan Microsoft untuk IoT, lihat Apa itu Pertahanan Microsoft untuk IoT untuk penyusun perangkat.

  1. Impor file config.yaml lama Anda ke format barunya, dan terapkan info konfigurasi.

    sudo iotedge config import
    

Sekarang setelah layanan IoT Edge terbaru berjalan di perangkat Anda, Anda juga perlu Memperbarui kontainer runtime ke versi terbaru. Proses pembaruan untuk kontainer runtime sama dengan proses pembaruan untuk layanan IoT Edge.

Pemecahan Masalah

Anda dapat melihat log sistem kapan saja dengan menjalankan perintah berikut dari perangkat Anda.

  • Mulai pemecahan masalah menggunakan perintah periksa . Ini menjalankan kumpulan pengujian konfigurasi dan konektivitas untuk masalah umum.

    sudo iotedge check --verbose
    
  • Untuk melihat status sistem IoT Edge, jalankan:

    sudo iotedge system status 
    
  • Untuk melihat log komponen host, jalankan:

    sudo iotedge system logs
    
  • Untuk memeriksa masalah berulang yang dilaporkan dengan edgeAgent dan edgeHub, jalankan:

    Pastikan untuk mengganti <module> dengan nama modul Anda sendiri. Jika tidak ada masalah, Anda tidak akan melihat output.

    sudo iotedge logs <module>
    

Untuk informasi selengkapnya, lihat Memecahkan masalah perangkat IoT Edge Anda.

Langkah berikutnya

Lihat rilis Azure IoT Edge terbaru.

Dapatkan informasi terbaru dengan pembaruan dan pengumuman terbaru di blog Internet of Things