Bagikan melalui


Skrip PowerShell untuk Azure IoT Edge dengan kontainer Windows

Berlaku untuk ikon:ya IoT Edge 1.1

Penting

IoT Edge 1.1 tanggal akhir dukungan 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.

Memahami skrip PowerShell yang memasang, memperbarui, atau mencopot pemasangan Azure IoT Edge pada perangkat Windows.

Perintah yang dijelaskan dalam artikel ini berasal dari file IoTEdgeSecurityDaemon.ps1 yang dirilis dengan tiap rilis Azure 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 maupun versi skrip dari rilis tertentu untuk menjalankan perintah. Contohnya:

. <path>\IoTEdgeSecurityDaemon.ps1
Deploy-IoTEdge

Skrip yang tersedia akan ditandatangani untuk meningkatkan keamanan. Anda bisa 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 beserta dependensinya. Perintah penyebaran menerima parameter umum ini antara satu dengan yang lain. Untuk daftar lengkapnya, gunakan perintah Get-Help Deploy-IoTEdge -full.

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

Untuk kontainer Windows, Azure 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 proxy untuk mengakses 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 terdaftar untuk cab Azure IoT Edge dan file VC Runtime MSI yang diperlukan untuk penginstalan. File yang tak ditemukan dalam direktori akan diunduh. Jika kedua file berada di direktori, Anda dapat memasang Azure IoT Edge tanpa koneksi internet. Anda juga dapat menggunakan parameter ini untuk menggunakan versi tertentu.
InvokeWebRequestParameters Tabelhash 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 mengizinkan skrip penyebaran untuk menghidupkan ulang mesin tanpa diminta jika diperlukan.

Inisialize-IoTEdge

Perintah Initialize-IoTEdge mengkonfigurasi 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 satu dengan yang lain. Untuk daftar lengkapnya, gunakan perintah Get-Help Initialize-IoTEdge -full.

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

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

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

Menyatakan bahwa Anda akan menyediakan ID lingkup Layanan Penyediaan Perangkat (DPS) dan ID Pendaftaran perangkat Anda untuk disediakan melalui DPS.
DpsSymmetricKey Tidak ada Beralih parameter. Jika tidak ada jenis provisi yang ditentukan, provisi manual dengan string koneksi akan menjadi nilai default.

Menyatakan bahwa Anda akan menyediakan ID cakupan Layanan Penyediaan Perangkat (DPS) dan ID Pendaftaran perangkat Anda untuk disediakan melalui DPS bersamaan dengan kunci konten sebagai pengesahan.
DpsX509 Tidak ada Beralih parameter. Jika tidak ada jenis provisi yang ditentukan, provisi manual dengan string koneksi akan menjadi nilai default.

Menyatakan bahwa Anda akan menyediakan ID cakupan Layanan Penyediaan Perangkat (DPS) dan ID Pendaftaran perangkat Anda untuk diprovisikan melalui DPS bersamaan dengan sertifikat identitas X.509 dan kunci privat sebagai pengesahan.
DeviceConnectionString String koneksi dari perangkat Azure IoT Edge yang terdaftar pada IoT Hub, dalam tanda kutip tunggal Diperlukan untuk provisi manual dengan string koneksi. Jika Anda tidak menyediakan string koneksi dalam parameter skrip, Anda akan dimintai string tersebut.
IotHubHostName Nama host IoT hub yang disambungkan ke perangkat. Diperlukan untuk provisi manual dengan sertifikat X.509. Mengambil format {nama hub}.azure-devices.net.
DeviceId ID perangkat dari identitas perangkat terdaftar pada Azure IoT Hub. Diperlukan untuk provisi manual dengan sertifikat X.509.
ScopeId ID cakupan dari contoh Layanan Penyediaan Perangkat yang terkait dengan Azure IoT Hub Anda. Diperlukan untuk provisi DPS. Jika Anda tidak menyediakan string koneksi dalam parameter skrip, Anda akan dimintai string tersebut.
RegistrationId ID pendaftaran yang dibuat 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 penyediaan manual maupun DPS jika menggunakan pengesahan sertifikat X.509.
X509IdentityPrivateKey Jalur URI ke sertifikat identitas perangkat X.509 pada perangkat. Diperlukan untuk penyediaan manual maupun DPS jika menggunakan pengesahan sertifikat X.509.
SymmetricKey Kunci konten yang digunakan untuk memprovisikan identitas perangkat Azure 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 defaultnya.

Untuk kontainer Windows, Azure 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. Dapat dikonfigurasi juga dalam file C:\ProgramData\iotedge\config.yaml. Untuk informasi selengkapnya, lihat Mengelola sertifikat di perangkat Azure IoT Edge.
DeviceCAPrivateKey Jalur URI ke kunci privat OS perangkat X.509 pada perangkat. Dapat dikonfigurasi juga dalam file C:\ProgramData\iotedge\config.yaml. Untuk informasi selengkapnya, lihat Mengelola sertifikat di perangkat Azure IoT Edge.
InvokeWebRequestParameters Tabelhash 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 Mengonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
AgentImage URI gambar agen Azure IoT Edge Secara default, penginstalan Azure IoT Edge baru menggunakan tag bergulir terbaru untuk gambar agen Azure IoT Edge. Gunakan parameter ini untuk mengatur tag tertentu untuk versi gambar atau untuk memberikan gambar agen Anda sendiri. Untuk informasi selengkapnya, lihat Memahami tag Azure IoT Edge.
Nama pengguna Nama pengguna registri kontainer Gunakan parameter ini hanya jika Anda mengatur -parameter AgentImage ke kontainer dalam registri privat. Menyediakan nama pengguna dengan akses ke registri.
Kata sandi Mengamankan string kata sandi Gunakan parameter ini hanya jika Anda mengatur -parameter AgentImage ke kontainer dalam registri privat. Menyediakan kata sandi untuk mengakses registri.

Perbarui-IoTEdge

Parameter Nilai yang diterima Komentar
ContainerOs Windows atau Linux Jika tidak ada sistem operasi kontainer yang ditentukan, Windows akan menjadi 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 proxy untuk mengakses internet. Untuk informasi selengkapnya, lihat Mengonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
InvokeWebRequestParameters Tabelhash 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 Mengonfigurasi perangkat Azure IoT Edge untuk berkomunikasi melalui server proksi.
OfflineInstallationPath Jalur direktori Jika parameter ini disertakan, alat penginstal akan memeriksa direktori yang terdaftar untuk cab Azure IoT Edge dan file VC Runtime MSI yang diperlukan untuk penginstalan. File yang tak ditemukan dalam direktori akan diunduh. Jika kedua file berada di direktori, Anda dapat memasang Azure IoT Edge tanpa koneksi internet. Anda juga dapat menggunakan parameter ini untuk menggunakan versi tertentu.
RestartIfNeeded tidak ada Bendera ini mengizinkan skrip penyebaran untuk menghidupkan ulang mesin tanpa diminta jika diperlukan.

Mencopot pemasangan-IoTEdge

Parameter Nilai yang diterima Komentar
Paksa tidak ada Bendera ini memaksa pencopotan pemasangan jika upaya sebelumnya tidak berhasil.
RestartIfNeeded tidak ada Bendera ini mengizinkan skrip yang dicopot pemasangannya untuk menghidupkan ulang mesin tanpa diminta jika diperlukan.

Langkah berikutnya

Pelajari cara menggunakan perintah ini di artikel berikut: