Share via


インターネット サービス プロバイダー用の Microsoft Connected Cache (早期プレビュー)

重要

このドキュメントは、Microsoft Connected Cache (早期プレビュー) 用です。 Microsoft Connected Cache for ISP はパブリック プレビューになりました。初期プレビューのお客様は、キャッシュ ノードをパブリック プレビューに移行することを強くお勧めします。 移行 方法については、以下をご 覧ください。

概要

Microsoft Connected Cache (MCC) プレビューは、オペレーター ネットワーク内に Microsoft コンテンツを配信するソフトウェア専用キャッシュ ソリューションです。 MCC は、必要な数の物理サーバーまたは VM にデプロイでき、クラウド ポータルから管理されます。 Microsoft クラウド サービスは、コンテンツのダウンロードのために、コンシューマー デバイスのキャッシュ サーバーへのルーティングを処理します。

Microsoft Connected Cache は、オンプレミスリソースとクラウド リソースが混在するという点で、ハイブリッド アプリケーションです。 これは、サーバーにデプロイされた Docker 互換の Linux コンテナーとクラウド管理ポータルで構成されます。 Microsoft は、セキュリティで保護された信頼性の高いコントロール プレーンとして Azure IoT Edgeを選択しました。 IoT Edgeの詳細については、「付録」を参照してください。 シナリオは IoT に関連していませんが、Azure IoT Edgeはセキュリティで保護された Linux コンテナーのデプロイと管理インフラストラクチャです。

MCC のしくみ

Microsoft Connected Cache のしくみのデータ フロー図。

次の手順では、MCC のプロビジョニング方法と使用方法について説明します。

  1. Azure Management Portal は、MCC ノードの作成と管理に使用されます。

  2. シェル スクリプトを使用して、サーバーをプロビジョニングし、MCC アプリケーションをデプロイします。

  3. Azure 管理ポータルとシェル スクリプトの組み合わせを使用して、トラフィックを MCC サーバーにルーティングするように Microsoft 配信最適化サービスを構成します。

    • サーバーのパブリックにアクセス可能な IPv4 アドレスは、ポータルで構成されます。

    • 手動ルーティング: クライアント IP アドレス空間を表す CIDR ブロックを指定します。これは MCC ノードにルーティングする必要があります。

    • BGP ルーティング: シェル スクリプトは、オペレーター ネットワーク内のルーターとのピアリング セッションを開始するために使用され、オペレーターは MCC ノードとのセッションを開始します。

      現時点では、IPv4 アドレスのみがサポートされています。 IPv6 アドレスを入力すると、エラーが発生します。

  4. Microsoft エンド ユーザー デバイス (クライアント) は Microsoft 配信最適化サービスと定期的に接続し、サービスはクライアントの IP アドレスと対応する MCC ノードの IP アドレスと一致します。

  5. Microsoft クライアントは、MCC ノードからコンテンツの範囲要求を行います。

  6. MCC ノードは、CDN からコンテンツを取得し、ディスクに格納されているローカル キャッシュをシードし、そのコンテンツをクライアントに配信します。

  7. コンテンツに対するエンド ユーザー デバイスからの後続の要求は、キャッシュから提供されます。

  8. MCC ノードが使用できない場合、クライアントは CDN からコンテンツを取得して、サブスクライバーのサービスが中断されないようにします。

MCC の ISP 要件

インターネット サービス プロバイダー向けの Microsoft Connected Cache がパブリック プレビューになりました。 開始するには、Azure portalにアクセスして、Microsoft Connected Cache for Internet Service Providers にサインアップします。 サインアップとオンボードの要件の詳細については、「 Microsoft Connected Cache のオペレーターサインアップとサービス オンボード」を参照してください。

正常に機能している MCC サーバーを確認する

クライアント側を確認する

接続済みキャッシュ サーバーにサインインするか、SSH を使用します。 ターミナルから次のコマンドを実行して、実行中のモジュール (コンテナー) を確認します。

sudo iotedge list

iotedge list コマンドのターミナル出力のスクリーンショット。実行中のコンテナーが表示されています。

edgeAgent コンテナーと edgeHub コンテナーが一覧表示されていても、MCC が含まれていない場合は、コマンドを使用してIoT Edge セキュリティ マネージャーの状態を表示します。

sudo journalctl -u iotedge -f

たとえば、このコマンドは、コンテナーの開始と停止の現在の状態、またはコンテナーのプルと開始を提供します。

iotedge の journalctl コマンドのターミナル出力。

サーバー側を確認する

コンテナーのデプロイには数分かかる場合があります。

正常に機能している MCC を検証するには、キャッシュ サーバーのターミナルまたはネットワーク内の任意のデバイスで次のコマンドを実行します。 をキャッシュ サーバーの IP アドレスに置き換えます <CacheServerIP>

wget http://<CacheServerIP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com

次のスクリーンショットは、成功したテスト結果を示しています。

Microsoft Connected Cache を検証するための wget コマンドを使用したテスト結果の成功のターミナル出力のスクリーンショット。

同様に、ネットワーク上の任意のデバイスの Web ブラウザーに次の URL を入力します。

http://<CacheServerIP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com

テストが失敗した場合は、詳細については、 一般的な問題 に関するセクションを参照してください。

一般的な問題

このセクションでは、一般的な問題のみを示します。 IoT Edgeの構成時に発生する可能性があるその他の問題の詳細については、IoT Edgeトラブルシューティング ガイドを参照してください。

次のコマンドを使用して、IoT Edgeジャーナルをチェックします。

sudo journalctl -u iotedge -f

DNS を構成する必要がある

次のIoT Edgeインストール状態チェックを実行します。

sudo iotedge check --verbose

ポート 5671、443、および 8883 に問題が発生した場合は、IoT Edge デバイスで Docker の DNS を更新する必要があります。

DNS で動作するようにデバイスを構成するには、次の手順に従います。

  1. を使用して ifconfig 、適切な NIC アダプター名を見つけます。

    ifconfig
    
  2. を実行 nmcli device show <network adapter name> して、イーサネット アダプターの DNS 名を表示します。 たとえば、 eno1 の DNS 情報を表示するには、次のようにします。

    nmcli device show eno1 
    

    ネットワーク アダプター情報を表示する nmcli コマンドの出力例のスクリーンショット。

  3. DNS サーバーの構成に使用する Docker 構成ファイルを開くか作成します。

    sudo nano /etc/docker/daemon.json
    
  4. 次の文字列を daemon.json ファイルに貼り付け、適切な DNS サーバー アドレスを含めます。 たとえば、前のスクリーンショットでは、 IP4.DNS[1] は です 10.50.10.50

    { "dns": ["x.x.x.x"]}
    
  5. 変更を daemon.json に保存します。 このファイルのアクセス許可を変更する必要がある場合は、次のコマンドを使用します。

    sudo chmod 555 /etc/docker/daemon.json
    
  6. Docker を再起動して、新しい DNS 設定を選択します。 次に、IoT Edgeを再起動します。

    sudo systemctl restart docker
    sudo systemctl daemon-reload
    sudo restart IoTEdge
    

MCC をパブリック プレビューに移行する

サーバーを再起動すると、現在使用しているバージョンは機能しなくなり、その後、新しいバージョンに移行する必要があることに注意してください。

これらの利点にアクセスし、ダウンタイムを確保するために、今すぐ新しいバージョンに移行することをお勧めします。

移行するには、次の手順に従います。

  1. 移行するキャッシュ ノードに移動し、ページの上部にある ボタンを使用して [ 移行パッケージのダウンロード ] を選択します。
  2. Azure portal内の [接続済みキャッシュ 移行スクリプト] セクションの指示に従います。 初期プレビューからパブリック プレビューにキャッシュ ノードを移行するための移行手順を示すAzure portalのスクリーンショット。
  3. https://portal.azure.com移動し、リソースに移動して、移行されたキャッシュ ノードをチェックします。

MCC のアンインストール

インストーラーの zip ファイルに uninstallmcc.sh ファイルが表示されます。このスクリプトは、MCC とすべての関連コンポーネントをアンインストールします。 このスクリプトを実行する前に、MCC チームに問い合わせてください。 MCC のインストールに関する問題が発生している場合にのみ実行してください。

Warning

このスクリプトを実行する前に注意してください。 また、この VM 内の既存の IoT ワークフローも消去されます。

uninstallmcc.sh スクリプトは、次のコンポーネントを削除します。

  • IoT Edge
  • Edge エージェント
  • Edge Hub
  • MCC
  • Moby CLI
  • Moby エンジン

スクリプトを実行するには、次のコマンドを使用します。

sudo chmod +x uninstallmcc.sh
sudo ./uninstallmcc.sh

付録

Azure サブスクリプション ID を取得する手順

  1. Azure portal にサインインします。
  2. [ サブスクリプション] を選択します。 [ サブスクリプション] が表示されない場合は、検索バーに「 サブスクリプション」 と入力します。 入力を開始すると、入力に基づいてリストがフィルター処理されます。
  3. 既に Azure サブスクリプションがある場合は、手順 5 に進みます。 Azure サブスクリプションをお持ちでない場合は、左上の [ + 追加] を選択します。
  4. 従量課金制サブスクリプションを選択します。 クレジットカード情報の入力を求められますが、MCC サービスを使用した場合は課金されません。
  5. [ サブスクリプション ] ページには、現在のサブスクリプションに関する詳細が表示されます。 サブスクリプション名を選択します。
  6. サブスクリプション名を選択すると、[ 概要 ] タブにサブスクリプション ID が表示されます。[サブスクリプション ID] の横にある [クリップボードにコピー ] アイコンを選択して、値をコピーします。

仮想環境での MCC のパフォーマンス

仮想環境では、キャッシュ サーバーのエグレスは約 1.1 Gbps でピークします。 仮想環境でエグレスを最大化する場合は、次の 2 つの設定を変更することが重要です。

  1. 次の 3 つの場所で SR-IOV を有効にします。

    • MCC VM の BIOS
    • MCC VM のネットワーク カード プロパティ
    • MCC VM のハイパーバイザー

    Microsoft では、Microsoft Hyper-V展開を使用するときに、これらの設定を 2 倍のエグレスとして検出しました。

  2. 省エネルギーではなく、BIOS で "ハイ パフォーマンス" を有効にします。 Microsoft では、この設定がMicrosoft Hyper-V展開のエグレスをほぼ 2 倍にしました。

MCC を管理するためのアクセス権を他のユーザーに付与する

Azure アカウントを持っていない場合でも、より多くのユーザーに Microsoft Connected Cache を管理するためのアクセス権を付与できます。 ポータルで最初のキャッシュ ノードを作成したら、Microsoft Connected Cache リソース グループと Microsoft Connected Cache リソースの 所有者 として他のユーザーを追加できます。

他のユーザーを所有者として追加する方法の詳細については、「Azure portalを使用して Azure リソースへのアクセスをユーザーに付与する」を参照してください。 MCC リソースと MCC リソースグループの両方に対して、このアクションを実行してください。

Windows Server での VM の設定

Ubuntu 20.04 LTS をネイティブに実行するハードウェアを使用することも、Ubuntu VM を実行することもできます。 次の手順では、Hyper-V で VM を設定する方法について説明します。

  1. ISO をダウンロードします。 Ubuntu Desktop または Ubuntu Server を使用できます。

  2. Hyper-V で 新しい仮想マシン ウィザード を開始します。

    Hyper-V 新しい仮想マシン ウィザードの [作業を開始する前に] ページのスクリーンショット。

  3. 名前を指定し、場所を選択します。

    Hyper-V 新しい仮想マシン ウィザードの [名前と場所の指定] ページのスクリーンショット。

  4. [第 2 世代] を選択します。 後でこの設定を変更することはできません。

    Hyper-V 新しい仮想マシン ウィザードの [生成の指定] ページのスクリーンショット。

  5. スタートアップ メモリを指定します。

    Hyper-V 新しい仮想マシン ウィザードの [メモリの割り当て] ページのスクリーンショット。

  6. ネットワーク アダプター接続を選択します。

    Hyper-V 新しい仮想マシン ウィザードの [ネットワークの構成] ページのスクリーンショット。

  7. 仮想ハード ディスク パラメーターを設定します。 OS とキャッシュされるコンテンツに十分な領域を指定する必要があります。 たとえば、 1024 GB は 1 テラバイトです。

    Hyper-V 新しい仮想マシン ウィザードの [仮想ハード ディスクの接続] ページのスクリーンショット。

  8. [ブート可能なイメージ ファイルから OS をインストールする] を選択し、以前にダウンロードした Ubuntu 20.04 LTS の ISO を参照します。

    Hyper-V 新しい仮想マシン ウィザードの [インストール オプション] ページのスクリーンショット。

  9. 設定を確認し、[ 完了] を選択して Ubuntu VM を作成します。

    Hyper-V での新しい仮想マシン ウィザードの完了のスクリーンショット。

  10. Ubuntu VM を起動する前に、 セキュア ブート を無効にし、VM に複数のコアを割り当てます。

    1. Hyper-V マネージャーで、VM の [設定] を 開きます。

      Hyper-V マネージャーの VM の設定のスクリーンショット。

    2. [ セキュリティ] を選択します。 [セキュア ブートを有効にする] オプションを無効にします。

      Hyper-V マネージャーの VM 設定のセキュリティ ページのスクリーンショット。

    3. [ プロセッサ] を選択します。 仮想プロセッサの数を増やします。 この例では を示 12していますが、構成は異なる場合があります。

      Hyper-V マネージャーの VM 設定のプロセッサ ページのスクリーンショット。

  11. VM を起動し、[ Ubuntu のインストール] を選択します。

    [Ubuntu のインストール] が選択されている GNU GRUB 画面のスクリーンショット。

  12. 既定の言語を選択します。

    Ubuntu インストールの言語選択ページのスクリーンショット。

  13. 更新プログラムとサード パーティ製ハードウェアをインストールするためのオプションを選択します。 たとえば、更新プログラムをダウンロードし、サード パーティ製ソフトウェア ドライバーをインストールします。

  14. [ ディスクの消去] を選択し、Ubuntu をインストールします。 以前のバージョンの Ubuntu がインストールされている場合は、Ubuntu 16.04 を消去してインストールすることをお勧めします。

    [ディスクの消去と Ubuntu のインストール] オプションが選択されている [Ubuntu のインストールの種類] ページのスクリーンショット。

    ディスクへの変更の書き込みに関する警告を確認し、[続行] を選択 します

    Ubuntu インストールの [ディスクに変更を書き込む] 警告のスクリーンショット。

  15. タイム ゾーンを選択します。

    タイム ゾーンを指定する Ubuntu インストールの 'Where you page' のスクリーンショット。

  16. キーボード レイアウトを選択します。

    Ubuntu インストールの [キーボード レイアウト] ページのスクリーンショット。

  17. 名前、コンピューターの名前、ユーザー名、および強力なパスワードを指定します。 [ ログインにパスワードを要求する] オプションを選択します

    ヒント

    Linux では、すべて大文字と小文字が区別されます。

    Ubuntu インストールの [ユーザー] 画面のスクリーンショット。

  18. インストールを完了するには、[ 今すぐ再起動] を選択します。

    Ubuntu インストールのインストールが完了し、[今すぐ再起動] 画面のスクリーンショット。

  19. コンピューターが再起動したら、ユーザー名とパスワードでサインインします。

    重要

    アップグレードが使用可能であることが示されている場合は、[ アップグレードしない] を選択します。

    [アップグレードしない] が選択されている Ubuntu インストールの [アップグレード可能] プロンプトのスクリーンショット。

これで、Ubuntu VM に MCC をインストールする準備ができました。

IoT Edge ランタイム

Azure IoT Edge ランタイムを使用すると、IoT Edge デバイスでカスタム ロジックとクラウド ロジックが有効になります。 ランタイムは、IoT Edge デバイス上にあり、管理と通信の操作を行います。 ランタイムは、次の関数を実行します。

  • デバイスにワークロード (Docker コンテナー) をインストールして更新します。
  • デバイスで Azure IoT Edgeセキュリティ標準を維持します。
  • IoT Edge モジュール (Docker コンテナー) が常に実行されていることを確認します。
  • リモート監視のためにモジュール (Docker コンテナー) の正常性をクラウドに報告します。
  • IoT Edge デバイスとクラウド間の通信を管理します。

Azure IoT Edgeの詳細については、Azure IoT Edge ドキュメントを参照してください

Microsoft 接続キャッシュの概要

Microsoft 接続キャッシュの概要