😽

App Service(Functions) の VNet 統合の備忘録

2023/03/28に公開

App Service(Functions) の VNet 統合とは

VNet 統合は、App Service(Functionsを含む)を使用する際に、ユーザーがデプロイした仮想ネットワークを活用するための非常に重要な機能です。
VNet 統合を利用することで、データベースなどの仮想ネットワーク内のリソースへのアクセスや、Azure Firewall などによるアクセス制御が可能になります。

まずは公式ドキュメントを参照してください。情報が古い場合があるため、英語版を確認することをお勧めします。

https://learn.microsoft.com/en-us/azure/app-service/overview-vnet-integration

VNet 統合のルール、制限事項

実際展開する上で考慮が必要なポイントについてほとんど書かれているため、まずは上記の公式ドキュメントを何度も読みましょう。そして手を動かして実際の動きを確かめてください。
特に制限事項が書かれている以下のパートは必ず読み返してください。

VNet をサブネットに統合するパターン

繰り返しになりますが、まずは公式ドキュメントを読んでください。

以下は実際よく質問されるパターンをまとめてみましたので、参考にしてください。

パターン1: 1つの VNet に 1 つの App Service を統合する

もちろんできます。

パターン2: 1つの VNet(同一サブネット) に複数の App Service(1つの App Service Plan) を統合する

できます。

パターン3: 1つの VNet(同一サブネット) に複数の App Service(複数の App Service Plan) を統合する

できません。

Limitations の以下に該当します。

The integration subnet can be used by only one App Service plan.

パターン4: 1つの VNet(別サブネット) に複数の App Service(複数の App Service Plan) を統合する

できます。サブネットが違えば問題ありません。

パターン5: 複数の VNet(もしくは同一 VNet 複数サブネット) に複数の App Service(1つの App Service Plan) を統合する

できます。ただし、1 つの App Service Plan につき 2 つの サブネットが上限です。

Limitations の以下に該当します。

You can't have more than two virtual network integrations per App Service plan. Multiple apps in the same App Service plan can use the same virtual network integration.

参考

以下のブログ記事も参考になります。
https://blog.shibayan.jp/entry/20201215/1608006735
https://blog.shibayan.jp/entry/20230219/1676787946

Discussion