次の方法で共有


Azure Stream Analytics ジョブを Azure Virtual Network で実行する

この記事では、Azure Stream Analytics (ASA) ジョブを Azure 仮想ネットワークで実行する方法について説明します。

概要

Virtual Network のサポートを使うと、Azure Stream Analytics へのアクセスを、仮想ネットワーク インフラストラクチャのみに制限できます。 ネットワークの分離という利点が得られるこの機能は、ASA ジョブのコンテナー化されたインスタンスをユーザーの仮想ネットワーク内にデプロイすることで実現できます。 仮想ネットワークに挿入された ASA ジョブは、次の方法で仮想ネットワーク内のリソースにプライベートにアクセスできます。

利用可能なリージョン

仮想ネットワーク統合は、現在、次のリージョンでサポートされています。

米国東部、米国東部 2、米国西部、米国西部 2、米国中北部、米国中北部、カナダ中部、西ヨーロッパ、北ヨーロッパ、東南アジア、ブラジル南部、東日本、英国南部、インド中部、オーストラリア東部、フランス中部、ドイツ西部、アラブ首長国連邦北部。

地域が一覧に表示されておらず、この機能の使用に関心がある場合は、このフォームに入力してください。

要求と実現可能性に基づいて要求を評価し、お客様のリージョンをサポートできる場合は通知します。

[前提条件]

  • 仮想ネットワークに挿入された ASA ジョブには、汎用 V2 (GPV2) ストレージ アカウントが必要です。

    • 仮想ネットワークに挿入された ASA ジョブでは、チェックポイントなどのメタデータへのアクセスを、運用のために Azure テーブルに格納する必要があります。

    • ASA ジョブで GPV2 アカウントが既にプロビジョニングされている場合は、追加の手順は必要ありません。

    • Premium Storage を使う大規模なジョブがあるユーザーは、GPV2 ストレージ アカウントを引き続き提供する必要があります。

    • パブリック IP ベースのアクセスからストレージ アカウントを保護する場合は、マネージド ID と信頼されたサービスも使って構成することを検討してください。

      ストレージ アカウントについて詳しくは、「ストレージ アカウントの概要」と「ストレージ アカウントを作成する」をご覧ください。

  • Azure 仮想ネットワーク。既存のものを使うか、新規に作成することができます。

  • 運用 Azure Nat ゲートウェイ。以下の重要な注意事項を参照してください。

    重要

    ASA 仮想ネットワークに挿入されたジョブでは、Azure ネットワークによって提供される内部コンテナー インジェクション テクノロジが使われます。

    Azure Stream Analytics ジョブのセキュリティと信頼性を強化するには、次のいずれかを行う必要があります。

    • NAT Gateway を構成する: これにより、VNET からのすべての送信トラフィックが、安全で一貫性のあるパブリック IP アドレスを介してルーティングされるようになります。

    • 既定の送信アクセスを無効にする: これにより、VNET からの意図しない送信トラフィックが防止され、ネットワークのセキュリティが強化されます。

    Azure NAT Gateway は、フル マネージドで回復性の高いネットワーク アドレス変換 (NAT) サービスです。 サブネットで構成すると、すべてのアウトバウンド接続に NAT ゲートウェイの静的パブリック IP アドレスが使用されます。 仮想ネットワークのアーキテクチャを示す図。

    Azure NAT Gateway の詳細については、Azure NAT Gateway に関する記事を参照してください。

  • プライベート エンドポイントを使用して Azure IoT Hub を構成する場合は、組み込みの Event Hubs 互換エンドポイントのプライベート エンドポイントと対応する DNS 設定も構成してください。 IoT Hub では、このエンドポイントを使用してメッセージをルーティングします。適切な DNS 解決がないと、Azure Stream Analytics などのサービスが接続に失敗する可能性があります。

  • IoT Hub と Event Hubs のプライベート エンドポイントと DNS の設定に関するガイダンスについては、次のリソースを参照してください。

サブネットに関する考慮事項

仮想ネットワーク統合は、専用サブネットに依存します。

委任されたサブネットを構成する際は、ASA ワークロードの現在と将来の両方の要件に対応するために、IP 範囲を考慮することが非常に重要です。 一度確立されたサブネット サイズは変更できないため、ジョブの潜在的なスケールをサポートできるサブネット サイズを選択することをお勧めします。 さらに、Azure ネットワークでは内部使用のために、サブネット範囲内の最初の 5 つの IP アドレスが予約されていることに注意してください。

スケール操作は、特定のサブネット サイズでサポートされる実際の使用可能なインスタンスに影響します。

IP 範囲の推定に関する考慮事項:

  • サブネットの範囲が ASA のサブネットの範囲と競合していないことを確認します。 IP 範囲 10.0.0.0 から 10.0.255.255 は、ASA で使われるため避けてください。
  • 予約:
    • Azure ネットワーク用に 5 つの IP アドレス
    • このサブネットに関連付けられているジョブのサンプル データ、テスト接続、メタデータ検出などの機能を容易にするために、1 つの IP アドレスが必要です。
    • 6 ストリーミング ユニット (SU) または 1 SU V2 ごとに 2 つの IP アドレスが必要です (ASA の V2 の価格体系は 2023 年 7 月 1 日に開始されます。詳しくは、こちらをご覧ください)

サブネットの委任とリリースの動作:

  • Azure Stream Analytics (ASA) ジョブの仮想ネットワーク統合を有効にすると、Azure portal によって指定されたサブネットが ASA サービスに自動的に委任されます。

  • ASA は、次のいずれかの場合にサブネットの割り当てを自動的に解除します。

    • Azure portal を使用して、そのサブネットを使用して、最後の ASA ジョブの仮想ネットワーク統合を無効にします。
    • サブネットに関連付けられている最後の ASA ジョブを削除します。

注: 複数の ASA ジョブが同じサブネットを共有できます。 "最後のジョブ" とは、他の ASA ジョブがそのサブネットを使用していない場合のポイントを指します。 最後のジョブが削除されると、ASA は委任されたサブネットを解放します。 完了するまでに数分かかる場合があります。

サブネットは、Intra-Subnet トラフィックを許可する必要があります

  • サブネット構成では、サブネット内ネットワーク トラフィックを有効にする必要があります。
  • つまり、ソースおよび宛先 IP アドレスの両方が同じサブネット内に存在する、受信および送信トラフィックを許可する必要があります。 こちらをご覧ください。

仮想ネットワーク統合を設定する

Azure Portal

  1. Azure portal のメニュー バーから [ネットワーク] に移動し、[Run this job in virtual network] (仮想ネットワークでこのジョブを実行する) をオンにします。 このステップにより、お客様のジョブが仮想ネットワークで動作する必要があることが、Microsoft に通知されます。

  2. プロンプトに従って設定を構成し、[保存] を選びます。

    Stream Analytics ジョブの [ネットワーク] ページのスクリーンショット。

VS Code

  1. Visual Studio Code で、ASA ジョブ内のサブネットを参照します。 このステップにより、サブネットで動作する必要があることがジョブに指示されます。

  2. JobConfig.json で、次の図に示すように VirtualNetworkConfiguration を設定します。

    仮想ネットワーク構成の例のスクリーンショット。

関連付けられたストレージ アカウントを設定する

  1. [Stream Analytics ジョブ] ページの左側のメニューで、[構成][ストレージ アカウントの設定] を選びます。

  2. [ストレージ アカウントの設定] ページで、[ストレージ アカウントの追加] を選びます。

  3. 手順に従って、ストレージ アカウントの設定を構成します。

    Stream Analytics ジョブの [ストレージ アカウントの設定] ページのスクリーンショット。

重要

  • 接続文字列を使って認証を行うには、ストレージ アカウントのファイアウォールの設定を無効にする必要があります。
  • マネージド ID で認証するには、Stream Analytics ジョブを、ストレージ BLOB データ共同作成者ロールとストレージ テーブル データ共同作成者ロール用のストレージ アカウントのアクセス制御リストに追加する必要があります。 ジョブにアクセス権を付与しない場合は、そのジョブではどのような操作も実行できなくなります。 アクセス権を付与する方法に関する詳細については、「Azure RBAC を使用して他のリソースにマネージド ID アクセスを割り当てる」を参照してください。

アクセス許可

Azure portal や CLI を使って、または virtualNetworkSubnetId サイト プロパティを直接設定するときに、仮想ネットワーク統合を構成するには、サブネットまたはそれより上のレベルで、少なくとも次のロールベースのアクセス制御のアクセス許可が必要です。

アクション 説明
Microsoft.Network/virtualNetworks/read 仮想ネットワークの定義を読み取ります
Microsoft.Network/virtualNetworks/subnets/read 仮想ネットワーク サブネットの定義を読み取ります
Microsoft.Network/virtualNetworks/subnets/join/action 仮想ネットワークに参加します。
Microsoft.Network/virtualNetworks/subnets/write 任意。 サブネットの委任を実行する必要がある場合は必須

仮想ネットワークが ASA ジョブとは異なるサブスクリプションにある場合は、仮想ネットワークがあるサブスクリプションが Microsoft.StreamAnalytics リソース プロバイダーに登録されていることを確認する必要があります。 このドキュメントのようにしてプロバイダーを明示的に登録できますが、サブスクリプションでジョブを作成すると自動的に登録されます。

制限事項

  • 仮想ネットワークのジョブには、少なくとも 1 つの SU V2 (新しい価格モデル) または 6 つの SU (現在) が必要です
  • サブネットの範囲が ASA のサブネットの範囲と競合していないことを確認します (つまり、サブネット範囲 10.0.0.0/16 を使わないでください)。
  • ASA のジョブと仮想ネットワークは、同じリージョンに存在する必要があります。
  • 委任されたサブネットは、Azure Stream Analytics でのみ使用できます。
  • ASA と統合されている仮想ネットワークは削除できません。 委任されたサブネットの最後のジョブ* の関連付けを解除するか、ジョブを削除する必要があります。
  • 現在、ドメイン ネーム システム (DNS) の更新はサポートされていません。 仮想ネットワークの DNS 構成が変更された場合は、その仮想ネットワーク内のすべての ASA ジョブを再デプロイする必要があります (サブネットとすべてのジョブの関連付けを解除し、再構成する必要もあります)。 詳しくは、「Azure 仮想ネットワーク内のリソースの名前解決」をご覧ください。

オンプレミスのリソースにアクセスする

仮想ネットワーク経由でオンプレミスのリソースにアクセスするために、仮想ネットワーク統合機能に対する追加の構成は必要ありません。 必要なのは、単に ExpressRoute またはサイト間 VPN を使用して仮想ネットワークをオンプレミスのリソースに接続することだけです。

価格の詳細

このドキュメントに記載されている基本的な要件以外では、仮想ネットワークの統合に関して、Azure Stream Analytics の価格料金以外に追加される使用料金はありません。

トラブルシューティング

機能は簡単にセットアップできますが、問題が発生しないという意味ではありません。 目的のエンドポイントへのアクセスで問題が発生する場合は、Microsoft サポートにお問い合わせください。

この機能に関して直接フィードバックする場合は、askasa@microsoft.com にご連絡ください。