かつて山市良と呼ばれたおじさんのブログ

セイテクエンジニアのブログ  かつて山市良と呼ばれたおじさんのブログ  vol.135 Linuxキャッシュノードの導入(後)|Microsoft Connected Cache for E/E 完全導入ガイド(4)

 

 

vol.135 Linuxキャッシュノードの導入(後)|Microsoft Connected Cache for E/E 完全導入ガイド(4)

2025年09月08日配信
執筆者:山内 和朗

 「Microsoft Connected Cache for Enterprise and Education(以下、Microsoft Connected Cache for E/E)」は、LinuxまたはWindowsに展開できる、ソフトウェアベースのキャッシュソリューションです。前回(vol.134)から実施しているLinuxキャッシュノード構築の続きです。

 

 前回(vol.134)から、Ubuntu Server 24.04 LTSを実行するLinuxマシン(Hyper-V仮想マシン)にLinuxキャッシュノードを展開しています。

前回までの内容:

  • Azureリソースの作成
  • Linuxキャッシュノードの作成

(注意: 画面の番号は前回から継続しています)

 

Linuxキャッシュノードの展開


 Linuxマシンにログインし、次のコマンドラインを実行してキャッシュノードを展開します(キャッシュドライブ/cachenode/node01の場合)。なお、unzipコマンドが利用できない場合は、sudo apt install unzipを実行してインストールしてください(画面7、画面8)。

 

~$ wget https://download.microsoft.com/download/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/mccscripts.zip(事前に控えておいた展開パッケージのダウンロードリンク)
~$ unzip mccscripts.zip
~$ cd MccScripts
~/MccScripts$ chmod +x *.sh
~/MccScripts$ sudo mkdir /cachenode
~/MccScripts$ sudo mkdir /cachenode/node01
~/MccScripts$ sudo ./deploymcc.sh customerid="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" cachenodeid="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" customerkey="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" registrationkey="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" drivepathandsizeingb="/cachenode/node01,100"(事前に控えておいたキャッシュノード展開コマンド)

・・・

Successfully completed MCC device registration
Starting cron job to update host every 4 hours
Successfully added cron job to update host every 4 hours
You have successfully deployed your server and cache node installation process will begin. It could take up to 30 minutes for the cache node software to download and begin caching.

~/MccScripts$ 

注:この例ではログインユーザーのホームディレクトリ(~)に展開パッケージを展開してしていますが(~/MccScripts)、展開パッケージに含まれるスクリプト(*.sh*1)はインストール後も使用されることがあるため、展開先ディレクトリ(~/MccScripts)は削除しないでください。ホームディレクトリではなく、別の専用のディレクトリ(/opt/MccScriptsなど)を使用すると良いかもしれません。
*1 4時間ごとの更新のためのMccScripts/hostupdate.sh(sudo crontab -lで確認可能)、アンインストール用MccScripts/Uninstall.sh、他のスクリプトが呼び出すMccScripts/utilities.shなど。

画面7 展開用パッケージ(mccscripts.zip)をダウンロードして、ZIPを展開する
画面7 展開用パッケージ(mccscripts.zip)をダウンロードして、ZIPを展開する

 

画面8 展開先の「MccScripts」ディレクトリに移動し、スクリプト(*.sh)に実行モードを設定する。また、キャッシュドライブのディレクトリを作成し、展開コマンドを実行する
画面8 展開先の「MccScripts」ディレクトリに移動し、スクリプト(*.sh)に実行モードを設定する。また、キャッシュドライブのディレクトリを作成し、展開コマンドを実行する

 展開コマンド実行後、キャッシュノードのソフトウェア(MCCコンテナー)がダウンロードが展開され、キャッシュが可能になるまでには最大30分かかります。キャッシュノードの展開が完了すると、Azureポータルの「Connected Cache for Enterprise & Education」リソースの「Cache Nodes」にその状態(正常な場合はHealthy)とOS(Linux)、ソフトウェアバージョン(GAバージョンは2.0.0.2112_e)が表示されます。「Migrated」列は、GA以前のプレビューバージョンで展開されたノードがGAバージョンにアップグレード済み(Yes)かアップグレードする必要があるか(No)を示すもので、GA後に展開したキャッシュノードには関係ありません。キャッシュノードが正常に動作しているかどうかは、Webブラウザーまたはwgetコマンドで以下のURLにアクセスし、小さな画像ファイル「Microsoft.png」(Microsoftロゴ)を取得できるか、ステータスコード200が返ってくるかどうかで確認できます(画面9)。

 

http://localhost(ローカルで確認する場合)またはキャッシュノードのIPアドレス/filestreamingservice/files/7bc846e0-af9c-49be-a03d-bb04428c9bb5/Microsoft.png?cacheHostOrigin=dl.delivery.mp.microsoft.com

 

画面9 Linuxキャッシュノードの展開が成功し、正常に動作していることを確認する
画面9 Linuxキャッシュノードの展開が成功し、正常に動作していることを確認する

 

MCCおよびIoT Edgeコンテナーを確認する

 

Linuxキャッシュノードのアーキテクチャ 前回説明したように、キャッシュノードのキャッシュドライブはLinuxのファイルシステムが提供し、キャッシュエンジンはAzure IoT Edge展開サービスを通じてコンテナーランタイム(moby-engine)に展開されたMCCコンテナーが提供します(右の図は前回説明したLinuxキャッシュノードのアーキテクチャ図)。Linuxマシンで「sudo iotedge list」または「sudo docker ps」を実行すると、MCCおよびAzure IoT関連の3つのコンテナー(MCC、edgeAgent、edgeHub)が実行中であることを確認することができます(画面10)。コンテナーの実行に何か問題がある場合は、「sudo iotedge check」を実行して調査することができますが、Microsoft Connected Cache for E/Eではこれらのコンポーネントの動作状態や更新について通常、意識する必要はありません(Microsoftにより管理されている部分ということもできます、ただしプレビューバージョンは除く)。*2

*2 実際には展開後のソフトウェア(コンテナー)のダウンロードや再起動後のコンテナーの起動問題に遭遇することがありました。その際の問題回避のために、sudo iotedge checkによる診断、aziot-edgeの最新バージョンへの更新(sudo apt-get update; sudo apt install aziot-edge)、コンテナーでのDNSの設定(/etc/docker/daemon.jsonへの"dns":["1.1.1.1"]の追加)、dockerとiotedgeの再起動(sudo systemctl restart docker;  sudo iotedge system restart)、iotedgeのログの確認(sudo iotedge system logs)など実施する必要がありました。ただし、Azure IoT Edgeのサービス側の問題、またはDNS名前解決の問題が原因であり、自然に解消した可能性もあります。
 IoT Edgeデバイスのトラブルシューティング|Azure(Microsoft Learn)

画面10 Linuxキャッシュノードで実行されるMMCコンテナーとAzure IoT関連コンテナー
画面10 Linuxキャッシュノードで実行されるMCCコンテナーとAzure IoT関連コンテナー

 

Linuxキャッシュノードのアンインストール

 Linuxキャッシュノードからキャッシュノードのコンポーネントをアンインストールするには、「MccScripts」ディレクトリにある「uninstallmcc.sh」スクリプトを実行します。このスクリプトはAzure IoT Edgeコンポーネント(aziot-edgeなど)、MCCコンテナー、Moby CLI(moby-cli)、Moby Engine(moby-engine)をアンインストールします。展開コマンドの実行に失敗した場合は、アンインストールしてから問題を取り除き、再展開してください。

~$ cd MccScripts
~・MccScripts$ sudo ./uninstall.sh
Are you sure you wish to proceed with uninstalling MCC components including IoT Edge and Moby Container runtime binaries? : [Y/n]" y

 

Microsoft Connected Cache for E/E 完全導入ガイド(1)(2)(3 前)(4 後)(5)

blog_yamanxworld_subscribe

blog_yamanxworld_comment

blog_yamanxworld_WP_ws2025

最新記事