次の方法で共有


仮想ネットワークのシナリオとリソース

Azure Virtual Network では、Azure リソースやオンプレミス リソースのセキュアなプライベート ネットワーキングが提供されます。 Azure 仮想ネットワークにコンテナー グループをデプロイすれば、それらのコンテナーで、仮想ネットワーク内の他のリソースと安全に通信することができます。

この記事では、仮想ネットワークのシナリオ、制限、およびリソースに関する背景について説明します。 Azure CLI を使用したデプロイの例については、「コンテナー インスタンスを Azure 仮想ネットワークにデプロイする」を参照してください。

重要

仮想ネットワークへのコンテナー グループのデプロイは、一般に Azure Container Instances が利用可能なほとんどのリージョンでは、Linux および Windows コンテナーで使用できます。 詳しくは、「リソースの可用性とクォータ制限」を参照してください。

シナリオ

Azure 仮想ネットワークにデプロイされたコンテナー グループでは、次のようなシナリオに対応できます。

  • 同じサブネット内のコンテナー グループ間での直接的な通信
  • コンテナー インスタンスから、仮想ネットワーク内のデータベースにタスクベースのワークロード出力を送信する
  • 仮想ネットワーク内のサービス エンドポイントから、コンテナー インスタンス用のコンテンツを取得する
  • VPN ゲートウェイまたは ExpressRoute を使用してオンプレミス リソースとのコンテナー通信を有効にする
  • Azure Firewall と統合して、コンテナーから発信された送信トラフィックを識別する
  • 仮想マシンなどの仮想ネットワーク内の Azure リソースと通信するために、内部 Azure DNS を介して名前を解決する
  • NSG 規則を使用して、サブネットまたはその他のネットワーク リソースへのコンテナー アクセスを制御する

サポートされていないネットワーク シナリオ

  • Azure Load Balancer - ネットワーク接続されたコンテナー グループ内のコンテナー インスタンスの前に Azure Load Balancer を配置することはサポートされていません
  • グローバル仮想ネットワーク ピアリング - グローバル ピアリング (Azure リージョンをまたぐ仮想ネットワークの接続) はサポートされていません
  • パブリック IP または DNS ラベル - 仮想ネットワークにデプロイされたコンテナー グループでは現在、パブリック IP アドレスまたは完全修飾ドメイン名を使用してコンテナーをインターネットに直接公開することはサポートされていません
  • Azure Government リージョンでの仮想ネットワークを使用したマネージド ID - 仮想ネットワーク機能を使用したマネージド ID は、Azure Government リージョンではサポートされていません

その他の制限事項

  • コンテナー グループをサブネットにデプロイする場合、サブネットに他の種類のリソースを含めることはできません。 コンテナー グループをデプロイする前に、既存のサブネットから既存のリソースをすべて削除するか、新しいサブネットを作成してください。
  • コンテナー グループをサブネットにデプロイするには、サブネットとコンテナー グループが同じ Azure サブスクリプションにある必要があります。
  • 仮想ネットワークにデプロイされているコンテナー グループ内の liveness probe または readiness probe を有効にすることはできません。
  • 追加のネットワーク リソースが関係しているため、通常、仮想ネットワークへのデプロイには標準のコンテナー インスタンスをデプロイするよりも時間がかかります。
  • 現時点では、ポート 25 と 19390 への送信接続はサポートされていません。 コンテナー グループが仮想ネットワークにデプロイされている場合は、Azure portal から ACI に接続するために、ファイアウォールでポート 19390 を開く必要があります。
  • 受信接続については、ファイアウォールで仮想ネットワーク内のすべての IP アドレスも許可する必要があります。
  • コンテナー グループを Azure Storage アカウントに接続する場合は、そのリソースにサービス エンドポイントを追加する必要があります。
  • IPv6 アドレスは、現時点ではサポートされていません。
  • サブスクリプションの種類によっては、特定のポートがブロックされる場合があります
  • コンテナー インスタンスは、関連付けられている仮想ネットワークから DNS 設定を読み取ったり継承したりしません。 コンテナー インスタンスに対して DNS 設定を明示的に設定する必要があります。

必要なネットワーク リソース

仮想ネットワークにコンテナー グループをデプロイするには、3 つの Azure Virtual Network リソースが必要になります。仮想ネットワーク自体と、仮想ネットワーク内で委任されたサブネット、そしてネットワーク プロファイルです。

仮想ネットワーク

仮想ネットワークでは、1 つ以上のサブネットを作成するためのアドレス空間が定義されます。 これにより、仮想ネットワーク内のサブネットに Azure リソース (コンテナー グループなど) をデプロイできるようになります。

サブネット (委任して使用)

サブネットは、仮想ネットワークを個別のアドレス空間に分割し、サブネット内に配置された Azure リソースから使用できるようにするものです。 仮想ネットワーク内には、1 つ以上のサブネットを作成できます。

コンテナー グループ用に使用するサブネットには、コンテナー グループしか含めることができません。 コンテナー グループをサブネットにデプロイするには、プロビジョニング前にサブネットを明示的に委任する必要があります。 委任されると、サブネットはコンテナー グループ用にしか使用できなくなります。 委任されたサブネットにコンテナー グループ以外のリソースをデプロイしようとすると、操作が失敗します。

ネットワーク プロファイル

重要

ネットワーク プロファイルは、2021-07-01 API バージョンで廃止されました。 このバージョンまたはより新しいバージョンを使用している場合は、ネットワーク プロファイルに関連する手順とアクションは無視してください。

ネットワーク プロファイルは、Azure リソース用のネットワーク構成テンプレートです。 このプロファイルでは、リソースのネットワーク プロパティが指定されます (たとえば、リソースのデプロイ先となるサブネットなど)。 最初に az container create コマンドを使用してコンテナー グループをサブネット (および仮想ネットワーク) にデプロイすると、Azure により、ネットワーク プロファイルが自動的に作成されます。 その後は、そのネットワーク プロファイルを使ってサブネットにリソースをデプロイしていくことができます。

Resource Manager テンプレート、YAML ファイル、またはプログラムのメソッドを使用して、コンテナー グループをサブネットにデプロイするには、ネットワーク プロファイルの完全な Resource Manager リソース ID を指定する必要があります。 以前 az container create を使用して作成したプロファイルを使用することも、Resource Manager テンプレート (テンプレートの例リファレンスを参照) を使用してプロファイルを作成することもできます。 以前作成したプロファイルの ID を取得するには、az network profile list コマンドを使用します。

次の図は、Azure Container Instances へ委任されたサブネットにデプロイされた複数のコンテナー グループを示しています。 サブネットにコンテナー グループを 1 つデプロイしたら、同じネットワーク プロファイルを指定して追加のコンテナー グループをデプロイできます。

仮想ネットワーク内のコンテナー グループ

次のステップ

  • Azure CLI を使用したデプロイの例については、「コンテナー インスタンスを Azure 仮想ネットワークにデプロイする」を参照してください。
  • 新しい仮想ネットワーク、サブネット、ネットワーク プロファイル、およびコンテナー グループを Resource Manager テンプレートを使用してデプロイするには、「Create an Azure container group with VNet」(VNet 内に Azure コンテナー グループを作成する) を参照してください。
  • Azure portal を使用してコンテナー インスタンスを作成する場合は、[ネットワーク] タブで、新しい仮想ネットワークまたは既存の仮想ネットワークの設定を指定することもできます。