次の方法で共有


IIoT シナリオを含め、入れ子になったゲートウェイに Microsoft 接続キャッシュ モジュールをデプロイする (プレビュー)

Microsoft 接続キャッシュ モジュールでは、入れ子になった (つまり階層型の) ゲートウェイをサポートしています。ここでは、インターネットにアクセスできる単一のゲートウェイの背後に、1 つ以上の IoT Edge ゲートウェイ デバイスが存在しています。 この記事では、2 つの入れ子になった Azure IoT Edge ゲートウェイ デバイス (親ゲートウェイゲートウェイ) と認証されていない送信プロキシを使用したデプロイ シナリオのサンプルについて説明します。

注意

この情報は、初期のテストや運用環境での使用を目的として提供されるプレビュー機能に関連するものです。 この機能は完全にサポートされていますが、まだ開発が続いており、一般提供までに大幅な変更が生じる可能性があります。

次の図は、1 つの Azure IoT Edge ゲートウェイが CDN リソースに直接アクセスでき、別の Azure IoT Edge ゲートウェイの親として機能しているシナリオを示しています。 子 IoT Edge ゲートウェイは、Raspberry Pi などの IoT リーフ デバイスの親として機能しています。 IoT Edge の子ゲートウェイと IoT デバイスは、どちらもインターネットから分離されています。 次の例では、Azure IoT Edge ゲートウェイの 2 レベルの構成を示していますが、Microsoft 接続キャッシュでサポートされるアップストリーム ホストの深さに制限はありません。

2 つの入れ子になった IoT Edge ゲートウェイにデプロイされた Microsoft 接続キャッシュ モジュールを示す図。

Azure IoT Edge ゲートウェイの多層デプロイの構成の詳細については、ダウンストリーム IoT Edge デバイスの接続に関するドキュメントを参照してください。 さらに、Azure IoT Edge、Microsoft 接続キャッシュ、およびカスタム モジュールをデプロイする場合、すべてのモジュールが同じコンテナー レジストリに存在する必要があることにも注意してください。

注意

Azure IoT Edge、Microsoft 接続キャッシュ、およびカスタム モジュールをデプロイする場合、すべてのモジュールが同じコンテナー レジストリに存在する必要があります。

親ゲートウェイ構成

次の手順を使用して、親ゲートウェイ デバイスで Microsoft 接続キャッシュ モジュールを構成します。

  1. Azure IoT Hub で、Azure IoT Edge ゲートウェイ デバイスのデプロイに Microsoft 接続キャッシュ モジュールを追加します (プレビュー モジュールへのアクセスを要求する方法の詳細については、「切断されたデバイスの更新のサポートについて」を参照してください)。

  2. デプロイに対する環境変数を追加します。 次の表は、環境変数の設定例を示しています。

    名前
    CACHE_NODE_ID 環境変数の説明を参照してください
    CUSTOMER_ID 環境変数の説明を参照してください
    CUSTOMER_KEY 環境変数の説明を参照してください
    STORAGE_1_SIZE_GB 10
    CACHEABLE_CUSTOM_1_HOST Packagerepo.com:80
    CACHEABLE_CUSTOM_1_CANONICAL Packagerepo.com
    IS_SUMMARY_ACCESS_UNRESTRICTED true
  3. デプロイのコンテナー作成オプションを追加します。 単一のゲートウェイと入れ子になったゲートウェイで MCC コンテナー作成オプションに違いはありません。 次の例は、MCC モジュールのコンテナー作成オプションを示しています。

    {
        "HostConfig": {
            "Binds": [
                "/MicrosoftConnectedCache1/:/nginx/cache1/"
            ],
            "PortBindings": {
                "8081/tcp": [
                    {
                        "HostPort": "80"
                    }
                ],
                "5000/tcp": [
                    {
                        "HostPort": "5100"
                    }
                ]
            }
        }
    }
    

子ゲートウェイ構成

次の手順を使用して、子ゲートウェイ デバイスで Microsoft 接続キャッシュ モジュールを構成します。

注意

独自のプライベート レジストリで構成に使用されているコンテナーをレプリケートした場合、モジュールのデプロイの config.xml 設定とランタイム設定を変更する必要があります。 詳細については、ダウンストリーム IoT Edge デバイスの接続に関するページを参照してください。

  1. 次の例に示すように、IoT Edge エージェントのイメージ パスを変更します。

    [agent]
    name = "edgeAgent"
    type = "docker"
    env = {}
    [agent.config]
    image = "<parent_device_fqdn_or_ip>:8000/iotedge/azureiotedge-agent:1.2.0-rc2"
    auth = {}
    
  2. 次の例に示すように、IoT Edge デプロイの IoT Edge ハブおよびエージェントのランタイム設定を変更します。

    • IoT Edge ハブ イメージには「$upstream:8000/iotedge/azureiotedge-hub:1.2.0-rc2」と入力します
    • IoT Edge エージェント イメージには「$upstream:8000/iotedge/azureiotedge-agent:1.2.0-rc2」と入力します
  3. Azure IoT Hub で、Azure IoT Edge ゲートウェイ デバイスのデプロイに Microsoft 接続キャッシュ モジュールを追加します。

    • モジュールの名前を選択します。ConnectedCache
    • イメージの URI を変更します: $upstream:8000/mcc/linux/iot/mcc-ubuntu-iot-amd64:latest
  4. 親デプロイで使用されている同じ環境変数とコンテナー作成オプションのセットを追加します。

    注意

    CACHE_NODE_ID は一意である必要があります。 CUSTOMER_ID と CUSTOMER_KEY の値は、親と同じになります 詳細については、モジュールの環境変数に関するページを参照してください。

Microsoft 接続キャッシュが正常に機能していることを確認するには、モジュールをホスティングする IoT Edge デバイスのターミナル、またはネットワーク上の任意のデバイスで、次のコマンドを実行します。 <Azure IoT Edge Gateway IP> を、お使いの IoT Edge ゲートウェイの IP アドレスまたはホスト名に置き換えます。 このレポートの可視性については、Microsoft 接続キャッシュの概要レポートに関するページを参照してください。

wget http://<CHILD Azure IoT Edge Gateway IP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com

産業用 IoT (IIOT) の構成

製造ネットワークは多くの場合、Purdue ネットワーク モデルに従い、階層的に編成されます (ISA 95 および ISA 99 標準に含まれます)。 これらのネットワークでは、最上層のみがクラウドに接続され、階層の下層が通信できるのは、隣接する上下の層のみです。

産業用 IoT 向け Azure IoT Edge というこの GitHub サンプルでは、次のコンポーネントをデプロイします。

  • Azure でシミュレートされた Purdue ネットワーク
  • 産業用資産
  • Azure IoT Edge ゲートウェイの階層

これらのコンポーネントは、産業用データを取得し、安全に、ネットワークのセキュリティを侵害することなく、クラウドにアップロードするために使用されます。 Microsoft 接続キャッシュは、ISA 95 準拠ネットワーク内のすべてのレベルで、コンテンツのダウンロードをサポートするようにデプロイすることができます。

ISA 95 準拠のネットワーク内で Microsoft 接続キャッシュのデプロイを構成する鍵は、L3 IoT Edge ゲートウェイで、OT プロキシ "" アップストリーム ホストの両方を構成することです。

  1. 2 レベルの入れ子になった IoT Edge ゲートウェイのサンプルで説明されているように L5 レベルと L4 レベルで Microsoft 接続キャッシュのデプロイを構成する

  2. L3 IoT Edge ゲートウェイでのデプロイでは、次を指定する必要があります。

    • UPSTREAM_HOST - L4 IoT Edge ゲートウェイの IP/FQDN。L3 Microsoft 接続キャッシュによって、コンテンツが要求されます。
    • UPSTREAM_PROXY - OT プロキシ サーバーの IP/FQDN:PORT です。
  3. OT プロキシによって、許可リストに L4 MCC FQDN または IP アドレスが追加される必要があります。

Microsoft 接続キャッシュが正常に機能していることを確認するには、モジュールをホスティングする IoT Edge デバイスのターミナル、またはネットワーク上の任意のデバイスで、次のコマンドを実行します。 <Azure IoT Edge Gateway IP> を、お使いの IoT Edge ゲートウェイの IP アドレスまたはホスト名に置き換えます。 このレポートの可視性については、Microsoft 接続キャッシュの概要レポートに関するページを参照してください。

wget http://<L3 IoT Edge Gateway IP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com