仮想ネットワークへの API Management インジェクションのネットワーク リソース要件
適用対象: Developer | Premium
仮想ネットワークへの API Management インジェクションの仮想ネットワーク リソース要件は次のとおりです。 一部の要件は、API Management インスタンスをホストしているstv2
のバージョン (stv2
または stv1
) によって異なります。
- Azure Resource Manager 仮想ネットワークが必要です。
- API Management インスタンスへの接続に使用されるサブネットには、他の Azure リソース タイプが含まれている場合があります。
- API Management インスタンスへの接続に使用されるサブネットでは、委任を有効にするべきではありません。 サブネットの [サブネットをサービスに委任] 設定は、[なし] に設定する必要があります。
- 上記のサブネットに接続されたネットワーク セキュリティ グループ。 受信接続を明示的に許可するには、ネットワーク セキュリティ グループ (NSG) が必要です。これは、API Management によって内部的に使用されるロード バランサーが既定でセキュリティ保護され、すべての受信トラフィックを拒否するためです。
- 外部モードと内部モードのどちらで API Management インスタンスを仮想ネットワークに挿入するかに応じて、仮想ネットワークとサブネットを指定するだけでなく、Standard SKU パブリック IPv4 アドレスを指定することもできます。
- API Management サービス、仮想ネットワークとサブネット、パブリック IP アドレス リソース (指定されている場合) は、同じリージョンおよびサブスクリプション内に存在する必要があります。
- 複数リージョンの API Management デプロイの場合、場所ごとに仮想ネットワーク リソースを個別に構成します。
サブネットのサイズ
API Management をデプロイできるサブネットの最小サイズは /29 で、3 つの使用可能な IP アドレスが提供されます。 API Management の追加スケール ユニットごとに、さらに 2 つの IP アドレスが必要になります。 最小サイズ要件は、次の考慮事項に基づきます。
Azure では、各サブネット内で 5 つの IP アドレスが予約されており、これらを使用することはできません。 サブネットの最初と最後の IP アドレスは、プロトコルに準拠するために予約されています。 さらに 3 つのアドレスが Azure サービスのために使用されます。 詳細については、「これらのサブネット内の IP アドレスの使用に関する制限はありますか」をご覧ください。
Azure 仮想ネットワーク インフラストラクチャによって使用される IP アドレスに加えて、サブネットの各 API Management インスタンスでは、以下が使用されます。
- Basic SKU、Standard SKU、または Premium SKU のユニットごとに 2 つの IP アドレス、または
- Developer SKU 用に 1 つの IP アドレス。
内部仮想ネットワーク にデプロイする場合は、このインスタンスは、内部ロード バランサー用に追加の IP アドレスが必要です。
例
/29 サブネット: 8 個の使用可能な IP アドレス - 5 個の予約済み Azure IP アドレス - 2 個の API Management IP アドレス (1 つのインスタンス用) - 1 個の IP アドレス (内部ロード バランサー用、内部モードで使用する場合) = 残りの IP アドレス 0 個 (スケールアウト ユニット用の残り)。
/28 サブネット: 16 個の使用可能な IP アドレス - 5 個の予約済み Azure IP アドレス - 2 個の API Management IP アドレス (1 つのインスタンス用) - 1 個の IP アドレス (内部ロード バランサー用、内部モードで使用する場合) = 残りの IP アドレス 8 個 (スケールアウト ユニットあたり 2 個の IP アドレス)、計 5 ユニット。
/27 サブネット: 32 個の使用可能な IP アドレス - 5 個の予約済み Azure IP アドレス - 2 個の API Management IP アドレス (1 つのインスタンス用) - 1 個の IP アドレス (内部ロード バランサー用、内部モードで使用する場合) = 残りの IP アドレス 24 個 (スケールアウト ユニットあたり 2 個の IP アドレス)、計 13 ユニット。
/26 サブネット: 64 個の使用可能な IP アドレス - 5 個の予約済み Azure IP アドレス - 2 個の API Management IP アドレス (1 つのインスタンス用) - 1 個の IP アドレス (内部ロード バランサー用、内部モードで使用する場合) = 残りの IP アドレス 56 個 (スケールアウト ユニットあたり 2 個の IP アドレス)、計 29 ユニット。
/25 サブネット: 128 個の使用可能な IP アドレス - 5 個の予約済み Azure IP アドレス - 2 個の API Management IP アドレス (1 つのインスタンス用) - 1 個の IP アドレス (内部ロード バランサー用、内部モードで使用する場合) = 残りの IP アドレス 120 個 (スケールアウト ユニットあたり 2 個の IP アドレス)、計 61 ユニット。 これは大きい、理論上のスケールアウト ユニット数です。
Note
現在、Premium SKU を 31 ユニットにスケーリングできます。 この制限に近づく需要が予測される場合は、/26 サブネットまたは /25 サブネットの使用を検討してください。
重要
内部ロード バランサーと API Management ユニットのプライベート IP アドレスは動的に割り当てられます。 そのため、デプロイ前に API Management インスタンスのプライベート IP を予測することはできません。 また、別のサブネットに変更した後に元に戻すことで、プライベート IP アドレスが変化する可能性があります。
ルーティング
API Management インスタンスを外部仮想ネットワーク または内部仮想ネットワーク にデプロイする場合は、ルーティングに関するガイダンスを参照してください。
詳細については、Azure API Management の IP アドレスに関するページを参照してください。
DNS
外部モードでは、仮想ネットワークによって、API Management エンドポイントとその他の Azure リソースに対して Azure で提供される名前解決が既定で可能になります。 オンプレミスのリソースの名前解決は提供されません。 必要に応じて、独自の DNS ソリューションを構成します。
内部モードでは、API Management エンドポイントおよびその他の必要な Azure リソースに対する名前解決を保証するために、独自の DNS ソリューションを提供する必要があります。 Azure プライベート DNS ゾーンを構成することをお勧めします。
詳細については、API Management インスタンスを外部仮想ネットワーク または内部仮想ネットワーク にデプロイする場合の DNS に関するガイダンスをご覧ください。
関連情報:
重要
VNet でカスタム DNS ソリューションを使用する予定の場合は、そのソリューションは、API Management サービスをデプロイする前に設定します。 それ以外の場合は、DNS サーバーを変更するたびに、[Apply Network Configuration Operation](ネットワーク構成操作の適用) を実行するか、または Azure portal でサービス インスタンスのネットワーク構成ウィンドウで [Apply network configuration](ネットワーク構成の適用) を選択して、API Management サービスを更新する必要があります。
制限事項
一部の仮想ネットワークの制限は、API Management インスタンスをホストするコンピューティング プラットフォームのバージョン (stv2
または stv1
) によって異なります。
- API Management インスタンスが含まれるサブネットは、サブスクリプション間で移動できません。
- 内部仮想ネットワーク モードで構成された複数リージョンの API Management デプロイでは、ユーザーがルーティングを所有し、複数のリージョン間の負荷分散を管理する責任を負います。
- API を OpenAPI 仕様から API Management にインポートするには、仕様 URL が、パブリックにアクセス可能なインターネット アドレスでホストされている必要があります。