適用於:
Azure IoT Edge 1.5
重要事項
IoT Edge 1.5 LTS 是支援的版本。 自 2024 年 11 月 12 日起,IoT Edge 1.4 LTS 已結束生命週期。 如果您採用舊版,請參閱更新 IoT Edge。
發行新版本的 IoT Edge for Linux on Windows (EFLOW) 應用程式時,請更新您的 IoT Edge 裝置,以取得最新的功能和安全性改善。 本文說明如何在有新版本可用時,在 Windows 裝置上更新適用於 Linux 的 IoT Edge。
針對 IoT Edge for Linux on Windows,IoT Edge 會在 Windows 裝置上託管的 Linux 虛擬機器中執行。 此虛擬機器預先安裝 IoT Edge,而且沒有套件管理員,因此您無法手動更新或變更任何 VM 元件。 相反地,Microsoft Update 會管理虛擬機器,以自動讓元件保持最新狀態。
EFLOW 虛擬機器是專為透過 Microsoft Update 進行可靠更新而設計。 虛擬機器作業系統使用 A/B 更新分割區配置來確保每個更新的安全,並允許您在更新過程中出現問題時回滾到先前的版本。
每個更新都有兩個主要元件,可以更新到最新版本。 第一個是 EFLOW 虛擬機及其內部組件。 如需 EFLOW 的詳細資訊,請參閱 Azure IoT Edge for Linux on Windows 組合。 這也包括虛擬機器基本作業系統。 EFLOW 虛擬機器是以 Microsoft Azure Linux 為基礎,每次更新都會提供效能和安全性修正,以最新的 CVE 修補檔讓 OS 保持最新。 EFLOW 版本資訊會顯示使用的 Azure Linux 版本,您可以檢查 CBL-Mariner 版本 ,以取得針對每個版本修正的 CVE 清單。
第二個元件是執行 EFLOW 虛擬機器並與其 Interop 所需的 Windows 執行階段元件群組。 系統會透過不同元件來管理虛擬機器生命週期和 Interop:WSSDAgent、EFLOWProxy 服務和 PowerShell 模組。
EFLOW 更新是循序的,您必須依序更新至每個版本。 若要取得最新版本,請使用最新的可用版本進行全新安裝,或將所有先前的服務更新套用至您想要的版本。
重要事項
您可以使用本文所述的任何方法,從 EFLOW 1.4 LTS 升級至 EFLOW 1.5 LTS。 不需要任何特殊步驟,就能從EFLOW 1.4 LTS 升級至 EFLOW 1.5 LTS。
若要尋找 Azure IoT Edge for Linux on Windows 的最新版本,請參閱 EFLOW 發行版本。
使用 Microsoft Update 來更新
若要取得 IoT Edge for Linux on Windows 更新,請設定 Windows 主機以取得其他 Microsoft 產品的更新。 根據預設,Microsoft 更新會在 EFLOW 安裝期間開啟。 如果您在 EFLOW 安裝之後需要自訂設定,請按照下列步驟開啟或關閉此選項:
開啟 Windows 主機上的 [設定]。
選取 [更新與安全性]。
選取 [進階選項]。
將 Windows 更新時接收其他 Microsoft 產品更新的選項設定為開啟。
使用 Windows Server Update Services (WSUS) 來更新
IoT Edge for Linux on Windows 更新支援使用 WSUS 進行內部部署更新。 如需 WSUS 的詳細資訊,請參閱裝置管理概觀 - WSUS。
離線手動更新
如果您限制或限制網際網路連線,您可以手動離線套用 EFLOW 更新。 使用 Microsoft Update 離線機制,手動下載並安裝適用於 Linux 的 IoT Edge on Windows 更新。 請遵循下列步驟:
檢查目前的 EFLOW 安裝版本。 開啟 [設定],然後選取 [應用程式] -> [應用程式與功能]。 搜尋 Azure IoT Edge。
從 EFLOW - Microsoft Update 目錄搜尋並下載必要的更新。
從已下載的 .cab 檔案擷取 AzureIoTEdge.msi。
安裝已擷取的 AzureIoTEdge.msi。
管理 Microsoft Update
適用於 Linux on Windows 的 IoT Edge 更新會使用 Microsoft Update 通道進行服務。 若要變更接收 EFLOW 更新,您必須管理 Microsoft Updates。 下列清單包含 Microsoft Updates 的自動開啟或關閉方式。 如需管理 OS 更新的詳細資訊,請參閱 OS 更新。
CSP 原則 - 使用 Update/AllowMUUpdateService CSP 原則。 如需 Microsoft 更新 CSP 原則的詳細資訊,請參閱 原則 CSP - MU 更新。
手動管理Microsoft 更新 - 若要選擇使用Microsoft 更新,請參見 Opt-In Microsoft 更新。
在 Azure Linux 2.0 的 EFLOW 與 Azure Linux 3.0 的 EFLOW 之間進行移轉
Azure Linux 2.0 與 Azure Linux 3.0 之間的移轉是作為 EFLOW 1.5.5.07025 更新的一部分引進的。 此移轉處理 EFLOW 虛擬機器的遷移,將系統從 EFLOW 1.5.4.07025 和 Azure Linux 2.0 升級至 EFLOW 1.5.5.07025 和 Azure Linux 3.0,包括下列項目:
- IoT Edge 執行階段
- IoT Edge 設定
- 容器
- 網路和 VM 設定
- 儲存檔案
若要從 EFLOW 1.5.4.07025 與 Azure Linux 2.0 移轉至 EFLOW 1.5.5.07025 與 Azure Linux 3.0,請使用下列步驟。
取得最新的 Azure EFLOW 1.5.4.07025 更新。 如果您使用 Windows Update,檢查更新以取得最新 EFLOW 更新。
如需自動下載移轉 (需要網際網路連線),請略過此步驟。 如果 EFLOW VM 的網際網路存取受限/沒有網際網路存取,請在開始移轉之前下載必要的檔案 (下載下列其中一項)。
開啟提升權限的 PowerShell 工作階段
開始 EFLOW 移轉
附註
您可以使用包含
Start-EflowMigrationcmdlet 的-autoConfirm旗標來移轉單一 cmdlet。 如果指定Confirm-EflowMigration,則不需要呼叫 ,即可繼續進行 Azure Linux 3.0 移轉。- 如果您使用自動下載移轉選項,請執行下列 cmdlet
Start-EflowMigration - 如果您在 步驟 2 中下載了 MSI,請使用下載的檔案來套用移轉 (如果使用 ARM64,請將檔案路徑中的 “X64” 取代為 “ARM64”)。
Start-EflowMigration -standaloneMsiPath "<path-to-folder>\AzureIoTEdge_Update_LTS_1.5.5.07025_X64.msi"
- 如果您使用自動下載移轉選項,請執行下列 cmdlet
確認 EFLOW 移轉
- 如果您使用自動下載移轉選項,請執行下列 cmdlet
Confirm-EflowMigration - 如果您在 步驟 2 中下載了 MSI,請使用下載的檔案來套用移轉 (如果使用 ARM64,請將檔案路徑中的 “X64” 取代為 “ARM64”)。
Confirm-EflowMigration -updateMsiPath "<path-to-folder>\AzureIoTEdge_Update_LTS_1.5.5.07025_X64.msi"
- 如果您使用自動下載移轉選項,請執行下列 cmdlet
警告
如果移轉因任何原因而失敗,EFLOW VM 會使用 Azure Linux 2.0 還原至其原始 EFLOW 1.5.4.07025 版本。
若要取消移轉或手動將 EFLOW VM 還原至其先前的狀態,請先執行 Start-EflowMigration Cmdlet,然後執行 Restore-EflowPriorToMigration。
如需詳細資訊,請使用 Get-Help <cmdlet> -full 命令以查看 Start-EflowMigration、Confirm-EflowMigration 和 Restore-EflowPriorToMigration cmdlet 文件。