Microsoft Connected Cache for Enterprise を構築してみる

皆さん、こんにちは。

先日、Windows IT Pro Blog にて、Public Preview がアナウンスされた、Microsoft Connected Cache for Enterprise について取り上げます。

Microsoft Connected Cache for Enterprise は、長い間、別途申し込みが必要なプレビュー状態でした。それが、今回は予告通り、2024/10/31 (米国時間 : 2024/10/30) より、Public Preview (別途申し込みが不要) になりました。私としては、やっとこの時が来たか~という印象ですね。

それでは、Microsoft Connected Cache for Enterprise について見ていきましょう。

<Microsoft Connected Cache for Enterprise and Education とは>

Microsoft Connected Cache for Enterprise and Education とは、Microsoft Intune 管理デバイスが Windows Update や Microsoft 365 Apps やアプリをダウンロードする際に、ローカル ネットワークにキャッシュ サーバーを設置して、コンテンツをキャシュ サーバー経由でダウンロードさせるというサービスとなります。

<Microsoft Connected Cache for Enterprise を構築してみる>

では、早速、Microsoft Connected Cache for Enterprise 環境を構築していきましょう。

※ 2024/10/31 に作業したのですが、リリース当日は完全にリリースされておらず、途中までしか行えませんでしたので、2024/11/24 にリベンジしております。

<Azure Portal 上での Node 作成準備>

  1. Microsoft Azure 管理ポータル (https://portal.azure.com/) にアクセスします。
  2. 画面上部の [リソースの作成] を選択します。
  3. [リソースの作成] 画面にて、[サービスとマーケットプレースを検索してください] の検索欄に [Connected] と入力して、Enter をします。
  4. 表示されたリストの中で、[Microsoft Connected Cache for Enterprise] の [作成] から [Microsoft Connected Cache for Enterprise] を選択します。
  5. [Create a Connected Cache] 画面が表示されますので、下記のように設定し、[Next : Tags] を選択します。
    サブスクリプション : 適切なサブスクリプションを選択してください
    リソース グループ : 新規でリソース グループを作成されることをお勧めします
    場所 : 2024/10/31 時点では、[(US) West US]、[(Europe) North Europe]、[(Asia Pacific) Korea Central] のみが選択可能です
    Connected Cache Resource Name: Microsoft Connected Cache for Enterprise の名前を設定します
  6. 必要に応じて、Tag を設定し、[Next : Review + Create] を選択します。
  7. [Review + Create] で [Validation successful.] が表示されたことを確認し、[Create] を選択します。
  8. 下記画面が表示され、デプロイが完了しますので、[リソースに移動] を選択します。
  9. 左側のツリーから、[Cache Node Management] 配下の [Cache Nodes] を選択します。
  10. [Create Cache Node] を選択します。
  11. [Cache Node Name] に適宜名前を入力し、[Specify OS] にて [Windows] を選択し、[Create] を選択します。
  12. 作成された、Cache Node を選択します。
  13. [Cache drive size (GB)] に適宜数値を入れて、右上の [Save] を選択します。
    今回は、1024 GB (1 TB) をキャッシュに割り当てます。
  14. [Save] を選択した後に、下記画面のように、[Configuration saved, please continue to the “Provisioning” tab.] と表示されるので、[2. Provisioning] タブに移動します。
  15. [2. Provisioning] タブに移動した後、今回は、ローカル アカウントを使用しますので、[Using Local User account] を選択し、[Cache node provisioning] の右下の [クリップボードにコピー] でテキストをコピーしておきます。
    クリップボードにコピーしたら、[3. Updates] タブに移動します。
  16. [3. Updates] タブにて、今回は、[Fast] を選択し、右上の [Save] を選択します。
  17. [1. Configuration] に戻りますので、左上の [Download provisioning package] を選択して、必要なファイルをダウンロードしておきます。

<Microsoft Connected Cache for Enterprise を展開するホスト マシンを準備する>

上記までの手順にて、Microsoft Azure 上での準備は整いました。その後は、Microsoft Connected Cache for Enterprise を展開するマシンを準備します。

今回は、オンプレミスに仮想マシンとしてマシンを構築しようと思います。

Microsoft Connected Cache for Enterprise のホスト マシンの要件は下記のページに記載がある通りです。

キャッシュ ノード ホスト マシンの要件

今回は、Hyper-V で VM を作成して、Windows Server 2022 をホスト マシンにしたいと思います。Hyper-V 上の VM でホスト マシンを作成しますので、Nested Virtualization (入れ子になった仮想化) を有効化する必要があります。

VM のスペックは以下とします。


VM 世代 : 第 2 世代

OS: Windows Server 2022 Datacenter Edition (英語版)

※ 最初、日本語版の OS で検証していましたが、どうやっても、PowerShell スクリプトの実行時にエラーになるため、英語版の OS にて実施。(2024/11/24 時点)

私はこの切り分けに結構時間を溶かしました (汗)

CPU: 16 コア

Memory: 32 GB

Storage: 127 GB, 1536 GB

Network: 25 Gbps NIC (専用 VLAN をアサイン)


VM に Windows Server 2022 をインストールして、Windows Update 等をしておきます。

一度、VM をシャットダウンして、Hyper-V ホストにて、下記のコマンドを実行して、Nested Virtualization (入れ子になった仮想化) を有効化しておきます。

Set-VMProcessor -VMName tamai-mcc-01 -ExposeVirtualizationExtensions $true

(tamai-mcc-01 の部分はご自身の VM 名に変更ください)

  1. Hyper-V で作成した VM 上 (Microsoft Connected Cache for Enterprise のホスト マシン) にて、ローカル アカウントを作成しておきます。
    今回は、mcc_local という名前で、ローカルの Administrators グループに追加済み。
  2. PowerShell を管理者権限で起動して、下記のコマンドを実行します。
    wsl.exe --install --no-distribution

  3. システムを再起動します。
  4. PowerShell を管理者権限で起動して、環境変数を設定します。
    $User = "$env:computername\mcc_local"
    $myLocalAccountCredential = "$env:computername\mcc_local"

  5. <Azure Portal 上での Node 作成準備> の手順、項番 17 で、ダウンロードした MCC-WSL-Installer.zip ファイルを Microsoft Connected Cache for Enterprise のホスト マシンにコピーして、zip ファイルを展開しておきます。
  6. PowerShell に戻り、<Azure Portal 上での Node 作成準備> の項番 15 でコピーした [2. Provisioning] に記載があった、コマンドを実行します。
    コマンドはファイル ダウンロード等も発生するため、少し時間がかかります。

    コマンドは下記のようなものです。私は、installationFolder の箇所を c:\mccwsl01 > e:\mccwsl01 としました。

    ./provisionmcconwsl.ps1 -installationFolder c:\mccwsl01 -customerid XXXXXX -cachenodeid XXXXXX -customerkey XXXXXX -registrationkey XXXXXX -cacheDrives "/var/mcc,1024" -mccRunTimeAccount $User -mccLocalAccountCredential $myLocalAccountCredential
  7. コマンドが成功すると下記のような表示となります。
    “Installer return code 0” になっていることを確認します。
  8. Microsoft Connected Cache Node がインストールできたので、簡単に動作確認をします。
    PowerShell コマンドを実行した、Microsoft Connected Cache for Enterprise のホスト マシン上で、新規に管理者権限で PowerShell を立ち上げ、下記のコマンドを実行します。

    wget http://localhost/filestreamingservice/files/7bc846e0-af9c-49be-a03d-bb04428c9bb5/Microsoft.png?cacheHostOrigin=dl.delivery.mp.microsoft.com
  9. 下記のスクリーン ショットのように、StatusCode “200” が返って来れば成功です。
  10. Azure Portal 側でもみてみましょう。下記のように、Status が “Healthy” になっていることを確認できます。

<構築した Microsoft Connected Cache Node を使う>

それでは、最後に、構築した、Microsoft Connected Cache Node を使用する方法を簡単に紹介しますね。

今回は、Microsoft Intune クライアントから利用する方法を少しだけ。

まずは、構築した Microsoft Connected Cache Node を指定できるように、Microsoft Connected Cache for Enterprise のホスト マシンの IP アドレスを DHCP にて固定にするもしくは DNS にて名前解決できるように設定しておきましょう。

今回は、DHCP サーバーにて、IP アドレスを固定する方法でいきたいと思います。

  1. Microsoft Intune 管理センターを開きます。
  2. [デバイス] > [構成] > [作成] > [新しいポリシー] を開きます。
  3. プロファイルの作成にて、[プラットフォーム] にて [Windows 10 and later] を選択し、[プロファイルの種類] にて [テンプレート] を選択します。
  4. テンプレート名にて、[配信の最適化] を選択します。
  5. [基本] にて、適宜名前を入力し、[次へ] を選択します。
  6. [構成設定] にて、[キャッシュ サーバーのホスト名] に、FQDN または IP アドレスを設定します。
  7. その後のステップにて、適切な割り当て先を選択して、構成を割り当てます。

※ ちなみに、設定カタログからも配信の最適化は設定可能です。

<まとめ>

今回は、Microsoft Connected Cache for Enterprise の構築方法を紹介しました。まだ、Preview 状態ですが、組織内で Delivery Optimization (配信の最適化) のキャッシュ サーバーの需要がある場合はテストしてみてはいかがでしょうか。
私も自宅検証環境にて、専用 VLAN を使用して、数台のマシンを Windows Autopilot で展開したりして Microsoft Connected Cache の効果を確認してみたいと思います。