Bagikan melalui


Skrip PowerShell untuk IoT Edge dengan kontainer Windows

Berlaku untuk: ikonya IoT Edge 1.1

Penting

Tanggal akhir dukungan IoT Edge 1.1 adalah 13 Desember 2022. Periksa Siklus Hidup Produk Microsoft untuk mendapatkan informasi tentang bagaimana produk, layanan, teknologi, atau API ini didukung. Untuk informasi selengkapnya tentang memperbarui ke versi terbaru IoT Edge, lihat Memperbarui IoT Edge.

Pahami skrip PowerShell yang menginstal, memperbarui, atau menghapus instalan IoT Edge di perangkat Windows.

Perintah yang dijelaskan dalam artikel ini berasal dari file IoTEdgeSecurityDaemon.ps1 yang dirilis dengan setiap rilis IoT Edge . Versi terbaru skrip selalu tersedia di aka.ms/iotedge-win.

Anda dapat menjalankan salah satu perintah menggunakan cmdlet Invoke-WebRequest untuk mengakses versi skrip terbaru. Contohnya:

. {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
Deploy-IoTEdge

Anda juga dapat mengunduh skrip ini, atau versi skrip dari rilis tertentu, untuk menjalankan perintah. Contohnya:

. <path>\IoTEdgeSecurityDaemon.ps1
Deploy-IoTEdge

Skrip yang disediakan ditandatangani untuk meningkatkan keamanan. Anda dapat memverifikasi tanda tangan dengan mengunduh skrip ke perangkat Anda lalu menjalankan perintah PowerShell berikut:

Get-AuthenticodeSignature "C:\<path>\IotEdgeSecurityDaemon.ps1"

Status output Valid jika tanda tangan diverifikasi.

Deploy-IoTEdge

Perintah Deploy-IoTEdge mengunduh dan menyebarkan IoT Edge Security Daemon dan dependensinya. Perintah penyebaran menerima parameter umum ini, antara lain. Untuk daftar lengkapnya, gunakan perintah Get-Help Deploy-IoTEdge -full.

Pengaturan Nilai yang diterima Komentar
ContainerOs Windows atau Linux Jika tidak ada sistem operasi kontainer yang ditentukan, Windows adalah nilai default.

Untuk kontainer Windows, IoT Edge menggunakan mesin kontainer Moby yang disertakan dalam penginstalan. Untuk kontainer Linux, Anda perlu menginstal mesin kontainer sebelum memulai penginstalan.
Proksi URL Proksi Sertakan parameter ini jika perangkat Anda perlu melalui server proksi untuk menjangkau internet. Untuk informasi selengkapnya, lihat Mengkonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
OfflineInstallationPath Jalur direktori Jika parameter ini disertakan, alat penginstal akan memeriksa direktori yang tercantum untuk kabin IoT Edge dan file MSI Runtime VC yang diperlukan untuk penginstalan. File apa pun yang tidak ditemukan di direktori diunduh. Jika kedua file berada di direktori, Anda dapat menginstal IoT Edge tanpa koneksi internet. Anda juga dapat menggunakan parameter ini untuk menggunakan versi tertentu.
InvokeWebRequestParameters Hashtable parameter dan nilai Selama penginstalan, beberapa permintaan web dibuat. Gunakan bidang ini untuk mengatur parameter untuk permintaan web tersebut. Parameter ini berguna untuk mengonfigurasi kredensial untuk server proksi. Untuk informasi selengkapnya, lihat Mengkonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
RestartIfNeeded tidak ada Bendera ini memungkinkan skrip penyebaran untuk memulai ulang komputer tanpa meminta, jika perlu.

Initialize-IoTEdge

Perintah Initialize-IoTEdge mengonfigurasi IoT Edge dengan string koneksi perangkat dan detail operasional Anda. Sebagian besar informasi yang dihasilkan oleh perintah ini kemudian disimpan dalam file iotedge\config.yaml. Perintah inisialisasi menerima parameter umum ini, antara lain. Untuk daftar lengkapnya, gunakan perintah Get-Help Initialize-IoTEdge -full.

Pengaturan Nilai yang diterima Komentar
ManualConnectionString Tidak Beralih parameter. Nilai default. Jika tidak ada jenis provisi yang ditentukan, provisi manual dengan string koneksi adalah nilai default.

Menyatakan bahwa Anda akan menyediakan string koneksi perangkat untuk menyediakan perangkat secara manual.
ManualX509 Tidak Beralih parameter. Jika tidak ada jenis provisi yang ditentukan, provisi manual dengan string koneksi adalah nilai default.

Menyatakan bahwa Anda akan memberikan sertifikat identitas dan kunci privat untuk menyediakan perangkat secara manual.
DpsTpm Tidak Beralih parameter. Jika tidak ada jenis provisi yang ditentukan, provisi manual dengan string koneksi adalah nilai default.

Menyatakan bahwa Anda akan memberikan ID cakupan Device Provisioning Service (DPS) dan ID Pendaftaran perangkat Anda untuk diprovisikan melalui DPS.
DpsSymmetricKey Tidak Beralih parameter. Jika tidak ada jenis provisi yang ditentukan, provisi manual dengan string koneksi adalah nilai default.

Menyatakan bahwa Anda akan memberikan ID cakupan Device Provisioning Service (DPS) dan ID Pendaftaran perangkat Anda untuk disediakan melalui DPS, bersama dengan kunci konten untuk pengesahan.
DpsX509 Tidak Beralih parameter. Jika tidak ada jenis provisi yang ditentukan, provisi manual dengan string koneksi adalah nilai default.

Menyatakan bahwa Anda akan memberikan ID cakupan Device Provisioning Service (DPS) dan ID Pendaftaran perangkat Anda untuk disediakan melalui DPS, bersama dengan sertifikat identitas X.509 dan kunci privat untuk pengesahan.
DeviceConnectionString String koneksi dari perangkat IoT Edge yang terdaftar di IoT Hub, dalam tanda kutip tunggal diperlukan untuk provisi manual dengan string koneksi. Jika Anda tidak menyediakan string koneksi dalam parameter skrip, Anda akan dimintainya.
IotHubHostName Nama host hub IoT tempat perangkat tersambung. diperlukan untuk provisi manual dengan sertifikat X.509. Mengambil format {hub name}.azure-devices.net.
DeviceId ID perangkat dari identitas perangkat terdaftar di IoT Hub. diperlukan untuk provisi manual dengan sertifikat X.509.
ScopeId ID cakupan dari instans Device Provisioning Service yang terkait dengan IoT Hub Anda. diperlukan untuk provisi DPS. Jika Anda tidak memberikan ID cakupan dalam parameter skrip, Anda akan dimintainya.
RegistrationId ID pendaftaran yang dihasilkan oleh perangkat Anda Diperlukan untuk provisi DPS jika menggunakan TPM atau pengesahan kunci konten. Opsional jika menggunakan pengesahan sertifikat X.509.
X509IdentityCertificate Jalur URI ke sertifikat identitas perangkat X.509 pada perangkat. Diperlukan untuk provisi manual atau DPS jika menggunakan pengesahan sertifikat X.509.
X509IdentityPrivateKey Jalur URI ke kunci sertifikat identitas perangkat X.509 pada perangkat. Diperlukan untuk provisi manual atau DPS jika menggunakan pengesahan sertifikat X.509.
SymmetricKey Kunci konten yang digunakan untuk menyediakan identitas perangkat IoT Edge saat menggunakan DPS diperlukan untuk provisi DPS jika menggunakan pengesahan kunci konten.
ContainerOs Windows atau Linux Jika tidak ada sistem operasi kontainer yang ditentukan, Windows adalah nilai default.

Untuk kontainer Windows, IoT Edge menggunakan mesin kontainer Moby yang disertakan dalam penginstalan. Untuk kontainer Linux, Anda perlu menginstal mesin kontainer sebelum memulai penginstalan.
DeviceCACertificate Jalur URI ke sertifikat OS perangkat X.509 pada perangkat. Juga dapat dikonfigurasi dalam file C:\ProgramData\iotedge\config.yaml. Untuk informasi selengkapnya, lihat Mengelola sertifikat pada perangkat IoT Edge.
DeviceCAPrivateKey Jalur URI ke kunci privat CA perangkat X.509 pada perangkat. Juga dapat dikonfigurasi dalam file C:\ProgramData\iotedge\config.yaml. Untuk informasi selengkapnya, lihat Mengelola sertifikat pada perangkat IoT Edge.
InvokeWebRequestParameters Hashtable parameter dan nilai Selama penginstalan, beberapa permintaan web dibuat. Gunakan bidang ini untuk mengatur parameter untuk permintaan web tersebut. Parameter ini berguna untuk mengonfigurasi kredensial untuk server proksi. Untuk informasi selengkapnya, lihat Mengkonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
AgentImage URI gambar agen IoT Edge Secara default, penginstalan IoT Edge baru menggunakan tag bergulir terbaru untuk gambar agen IoT Edge. Gunakan parameter ini untuk mengatur tag tertentu untuk versi gambar, atau untuk menyediakan gambar agen Anda sendiri. Untuk informasi selengkapnya, lihat Memahami tag IoT Edge.
Nama Pengguna Nama pengguna registri kontainer Gunakan parameter ini hanya jika Anda mengatur parameter -AgentImage ke kontainer dalam registri privat. Berikan nama pengguna dengan akses ke registri.
Kata sandi String kata sandi aman Gunakan parameter ini hanya jika Anda mengatur parameter -AgentImage ke kontainer dalam registri privat. Berikan kata sandi untuk mengakses registri.

Update-IoTEdge

Pengaturan Nilai yang diterima Komentar
ContainerOs Windows atau Linux Jika tidak ada OS kontainer yang ditentukan, Windows adalah nilai default. Untuk kontainer Windows, mesin kontainer akan disertakan dalam penginstalan. Untuk kontainer Linux, Anda perlu menginstal mesin kontainer sebelum memulai penginstalan.
Proksi URL Proksi Sertakan parameter ini jika perangkat Anda perlu melalui server proksi untuk menjangkau internet. Untuk informasi selengkapnya, lihat Mengkonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
InvokeWebRequestParameters Hashtable parameter dan nilai Selama penginstalan, beberapa permintaan web dibuat. Gunakan bidang ini untuk mengatur parameter untuk permintaan web tersebut. Parameter ini berguna untuk mengonfigurasi kredensial untuk server proksi. Untuk informasi selengkapnya, lihat Mengkonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
OfflineInstallationPath Jalur direktori Jika parameter ini disertakan, alat penginstal akan memeriksa direktori yang tercantum untuk kabin IoT Edge dan file MSI Runtime VC yang diperlukan untuk penginstalan. File apa pun yang tidak ditemukan di direktori diunduh. Jika kedua file berada di direktori, Anda dapat menginstal IoT Edge tanpa koneksi internet. Anda juga dapat menggunakan parameter ini untuk menggunakan versi tertentu.
RestartIfNeeded tidak ada Bendera ini memungkinkan skrip penyebaran untuk memulai ulang komputer tanpa meminta, jika perlu.

Uninstall-IoTEdge

Pengaturan Nilai yang diterima Komentar
Force tidak ada Bendera ini memaksa penghapusan instalasi jika upaya sebelumnya untuk menghapus instalasi tidak berhasil.
RestartIfNeeded tidak ada Bendera ini memungkinkan skrip penghapusan instalasi untuk menghidupkan ulang komputer tanpa meminta, jika perlu.

Langkah berikutnya

Pelajari cara menggunakan perintah ini di artikel berikut: