次の方法で共有


IoT Edge for Linux on Windows を更新する

適用対象: [はい] アイコン IoT Edge 1.1

重要

IoT Edge 1.1 のサポート終了日は、2022 年 12 月 13 日でした。 本製品、サービス、テクノロジ、または API のサポート内容については、Microsoft 製品のライフサイクルに関するページをご確認ください。 最新バージョンの IoT Edge への更新の詳細については、「 Update 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 更新パーティション スキームがあり、更新プロセス中に何か問題が発生した場合は以前のバージョンにロールバックできるようになっています。

各更新は、最新バージョンに更新される可能性のある 2 つの主要コンポーネントで構成されています。 1 つ目は、EFLOW 仮想マシンと内部コンポーネントです。 EFLOW の詳細については、Azure IoT Edge for Linux on Windows の構成に関する記事を参照してください。 これには、仮想マシンベースのオペレーティング システムも含まれます。 EFLOW の仮想マシンは Microsoft CBL-Mariner をベースとしており、更新ごとにパフォーマンスとセキュリティの修正プログラムが提供されるので、最新の CVE パッチを適用した OS を維持できます。 EFLOW のリリース ノートの一部として、バージョンは使われている CBL-Mariner バージョンを示します。ユーザーは CBL-Mariner リリースを確認して、各バージョンで修正された CVE の一覧を取得できます。

2 つ目のコンポーネントは、EFLOW 仮想マシンの実行と相互運用に必要な Windows ランタイム コンポーネントのグループです。 仮想マシンのライフサイクルと相互運用は、WSSDAgent、EFLOWProxy サービス、PowerShell モジュールというさまざまなコンポーネントを使って管理されます。

EFLOW の更新はシーケンシャルであり、すべてのバージョンに順に更新する必要があります。つまり、最新バージョンまで到達するには、使用できる最新バージョンを使って新規インストールを実行するか、過去のサービス更新プログラムを目的のバージョンまですべて適用する必要があります。

Azure IoT Edge for Linux on Windows の最新バージョンを調べるには、EFLOW リリースに関するページを参照してください。

Microsoft Update を使って更新する

IoT Edge for Linux on Windows の更新プログラムを受信するには、他の Microsoft 製品の更新プログラムを受信するように Windows ホストを構成する必要があります。 EFLOW のインストール時には、既定で Microsoft Update が有効になります。 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 バージョンを確認します。 Settingsを開き、 Apps ->Apps & 機能を選択Azure IoT Edge LTS検索します。

  2. EFLOW - Microsoft Update カタログから必要な更新プログラムを検索してダウンロードします。

  3. ダウンロードした .cab ファイルから AzureIoTEdge.msi を抽出します。

  4. 抽出した AzureIoTEdge.msi をインストールします。

Microsoft 更新プログラムの管理

前述のとおり、IoT Edges for Linux on Windows の更新プログラムは Microsoft Update チャネルを使って提供されるので、EFLOW 更新のオン/オフを切り替えるには、Microsoft 更新プログラムを管理する必要があります。 Microsoft 更新プログラムのオン/オフを自動化する方法として、次のようなものがあります。 OS の更新プログラムを管理する方法の詳細については、「OS の更新」を参照してください。

  1. CSP ポリシー - Update/AllowMUUpdateService CSP ポリシーの使用 - Microsoft Updates CSP ポリシーの詳細については、「ポリシー CSP」の MU の更新に関する記事を参照してください。

  2. Microsoft 更新プログラムを手動で管理する - Microsoft 更新プログラムにオプトインする方法の詳細については、「Microsoft Update にオプトインする」を参照してください。

特殊なケース: Server SKU 上の HCS から VMMS への移行

IoT Edge for Linux on Windows の 1.1.2110.0311 バージョンより前の Windows Server SKU デバイスを最新の利用可能なバージョンに更新する場合は、手動で移行する必要があります。

更新プログラム 1.1.2110.0311 では、EFLOW Windows Server のデプロイに使用される VM テクノロジ (HCS から VMMS) に変更が加えられました。 次の手順に従って、VM の移行を実行できます。

  1. Microsoft Update を使用して、1.1.2110.0311 更新プログラム をダウンロードしてインストールします (他の EFLOW 更新プログラムと同じであり、EFLOW の更新プログラムが有効になっている限り、手動の手順は不要です)。

  2. EFLOW の更新が完了したら、管理者特権の PowerShell セッションを開きます。

  3. 移行スクリプトを実行します。

    Migrate-EflowVmFromHcsToVmms
    

Note

Windows Server SKU に新しい EFLOW 1.1.2110.0311 MSI をインストールすると、VMMS テクノロジを使用して EFLOW デプロイが行われるため、移行は必要ありません。

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 構成
  • Containers
  • ネットワークと 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 移行を開始する

    Note

    Start-EflowMigration コマンドレットで -autoConfirm フラグを使用することで、1 つのコマンドレットを使用して移行できます。 指定した場合、1.4 移行を進めるために Confirm-EflowMigration を呼び出す必要はありません。

    1. 自動ダウンロード移行オプションを使用している場合は、次のコマンドレットを実行します
      Start-EflowMigration
      
    2. 手順 2 で MSI をダウンロードした場合は、ダウンロードしたファイルを使用して移行を適用します
      Start-EflowMigration -standaloneMsiPath "<path-to-folder>\AzureIoTEdge_LTS_1.4.2.12122_X64.msi" 
      
  5. EFLOW 移行を確認する

    1. 自動ダウンロード移行オプションを使用している場合は、次のコマンドレットを実行します
      Confirm-EflowMigration
      
    2. 手順 2 で MSI をダウンロードした場合は、ダウンロードしたファイルを使用して移行を適用します
      Confirm-EflowMigration -updateMsiPath "<path-to-folder>\AzureIoTEdge_LTS_Update_1.4.2.12122_X64.msi" 
      

何らかの理由で移行が失敗した場合、EFLOW VM は元の 1.1LTS バージョンに復元されます。 移行をキャンセルする場合は、次のコマンドレット Start-EflowMigration、続いて Restore-EflowPriorToMigration を使用できます。

詳細については、Get-Help <cmdlet> -full コマンドを使用して、Start-EflowMigrationConfirm-EflowMigrationRestore-EflowPriorToMigration コマンドレットのドキュメントを確認してください。

次のステップ

最新の IoT Edge for Linux on Windows リリースを確認します。

詳細については、IoT Edge for Linux on Windows のセキュリティ プレミスに関する記事を参照してください。