分享方式:


更新 IoT Edge for Linux on Windows

適用於:IoT Edge 1.4 複選標記IoT Edge 1.4

重要

支援 IoT Edge 1.5 LTS 和 IoT Edge 1.4 版本。 IoT Edge 1.4 LTS 於 2024 年 11 月 12 日結束生命週期。 如果您是舊版,請參閱更新 IoT Edge

當 IoT Edge for Linux on Windows (EFLOW) 應用程式發行新版本時,您會想更新 IoT Edge 裝置,以取得最新功能和安全性改善。 本文提供在新版本發行時如何更新 IoT Edge for Linux on Windows 裝置的相關資訊。

針對 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 CBL-Underr 為基礎,每次更新都會提供效能和安全性修正,讓 OS 保有最新的 CVE 修補檔。 在 EFLOW 版本資訊中,版本會指出所使用的 CBL-Mariner 版本,使用者也可以檢查 CBL-Releaser 版本,以取得每個版本已修正的 CVE 清單。

第二個元件是執行 EFLOW 虛擬機器並與其 Interop 所需的 Windows 執行階段元件群組。 系統會透過不同元件來管理虛擬機器生命週期和 Interop:WSSDAgent、EFLOWProxy 服務和 PowerShell 模組。

EFLOW 更新是有順序的,您必須依序更新至每個版本,也就是說,若要取得最新版本,您必須使用最新的可用版本執行全新安裝,或將先前的所有服務更新套用至所需版本。

若要尋找 Azure IoT Edge for Linux on Windows 的最新版本,請參閱 EFLOW 發行版本

使用 Microsoft Update 來更新

若要接收 IoT Edge for Linux on Windows 更新,您應設定 Windows 主機以接收其他 Microsoft 產品的更新。 根據預設,Microsoft Update 會在 EFLOW 安裝期間開啟。 如果在 EFLOW 安裝之後需要自訂設定,您可以使用下列步驟來開啟/關閉此選項:

  1. 開啟 Windows 主機上的 [設定]

  2. 選取 [更新與安全性]

  3. 選取 [進階選項]

  4. 將 [在更新 Windows 時接收其他 Microsoft 產品的更新] 按鈕切換為 [開啟]

使用 Windows Server Update Services (WSUS) 來更新

IoT Edge for Linux on Windows 更新支援使用 WSUS 的內部部署更新。 如需 WSUS 的詳細資訊,請參閱裝置管理概觀 - WSUS

離線手動更新

在網際網路連線遭限制或有限的情況下,您可能會想以離線模式,手動套用 EFLOW 更新。 使用 Microsoft Update 離線機制就有可能完成。 您可以採用下列步驟,手動下載並安裝 IoT Edge for Linux on Windows 更新:

  1. 檢查目前的 EFLOW 安裝版本。 開啟 [設定],選取 [應用程式] - >[應用程式與功能],搜尋 [Azure IoT Edge]

  2. EFLOW - Microsoft Update 目錄搜尋並下載必要的更新。

  3. 從已下載的 .cab 檔案擷取 AzureIoTEdge.msi

  4. 安裝已擷取的 AzureIoTEdge.msi

管理 Microsoft Update

如先前所述,IoT Edges for Linux on Windows 更新是透過 Microsoft Update 通道提供服務,因此您必須管理 Microsoft Update 才能開啟/關閉 EFLOW 更新。 以下是自動開啟/關閉 Microsoft Update 的一些方式。 如需管理 OS 更新的詳細資訊,請參閱 OS 更新

  1. CSP 原則 - 使用 Update/AllowMUUpdateService CSP 原則 - 如需 Microsoft Update CSP 原則的詳細資訊,請參閱原則 CSP - MU 更新

  2. 手動管理 Microsoft Update - 如需如何加入至 Microsoft Update 的詳細資訊,請參閱加入至 Microsoft Update

EFLOW 1.1LTS 與 EFLOW 1.4LTS 之間的移轉

IoT Edge for Linux on Windows 不支援不同版本定型之間的移轉。 如果您想要從 1.1LTS 或 1.4LTS 版移至連續發行 (CR) 版本 (反之亦然),您必須解除安裝目前的版本,並安裝新的所需版本。

EFLOW 1.1LTS 與 EFLOW 1.4LTS 之間的移轉是 EFLOW 1.1LTS (1.1.2212.12122) 的部分更新。 此移轉會處理從 1.1LTS 版本移轉至 1.4LTS 版本的 EFLOW VM,包括下列內容:

  • IoT Edge 執行階段
  • IoT Edge 設定
  • 容器
  • 網路和 VM 設定
  • 儲存檔案

若要在 EFLOW 1.1LTS 和 EFLOW 1.4LTS 之間進行移轉,請按照下列步驟進行。

  1. 取得最新的 Azure EFLOW 1.1LTS (1.1.2212.12122) 更新。 如果您使用 Windows Update,檢查更新以取得最新 EFLOW 更新。

  2. 針對自動下載移轉 (需要網際網路連線),請略過此步驟。 如果 EFLOW VM 有限制/沒有網際網路存取,請在開始移轉前下載必要檔案。

  3. 開啟提升權限的 PowerShell 工作階段

  4. 開始 EFLOW 移轉

    注意

    您可以使用包含 Start-EflowMigration cmdlet 的 -autoConfirm 旗標來移轉單一 cmdlet。 如果指定 Confirm-EflowMigration 不需要呼叫 ,即可繼續 1.4 移轉。

    1. 如果您使用自動下載移轉選項,請執行下列 cmdlet
      Start-EflowMigration
      
    2. 如果您在步驟 2 下載 MSI,請使用下載檔案來套用移轉
      Start-EflowMigration -standaloneMsiPath "<path-to-folder>\AzureIoTEdge_LTS_1.4.2.12122_X64.msi" 
      
  5. 確認 EFLOW 移轉

    1. 如果您使用自動下載移轉選項,請執行下列 cmdlet
      Confirm-EflowMigration
      
    2. 如果您在步驟 2 下載 MSI,請使用下載檔案來套用移轉
      Confirm-EflowMigration -updateMsiPath "<path-to-folder>\AzureIoTEdge_LTS_Update_1.4.2.12122_X64.msi" 
      

警告

如果移轉失敗,EFLOW VM 將會還原至原始的 1.1LTS 版本。 如果您要取消移轉或手動將 EFLOW VM 還原至先前的狀態,您可以使用下列 cmdlets Start-EflowMigration,然後使用 Restore-EflowPriorToMigration

如需詳細資訊,請使用 Get-Help <cmdlet> -full 命令以查看 Start-EflowMigrationConfirm-EflowMigrationRestore-EflowPriorToMigration cmdlet 文件。

下一步

檢視 IoT Edge for Linux on Windows 的最新發行版本

深入了解 IoT Edge for Linux on Windows 安全性內部部署