App Service と App Service プラン とは?

App Service とは[Web Apps][Mobile Apps][Functions][API Apps]のアプリケーション群の総称なのです。

これらのサービスは、PaaS にて提供されているので、管理の範囲が「アプリケーション」のみとなります。※OSが管理範囲外なので、RDP接続も出来ません。
また、プランにもよりますが、オートスケール、バックアップ、ステージング環境などの機能が提供されます。

このApp Service は[App Service プラン]と呼ばれるリソース(CPU,Mem,Storage)を共有し動作します。※[App Service プラン]=VMリソース

ここで、WebAppを作成した場合の構成を見てみましょう。

WebAppを作成すると、(見えない)ロードバランサーが自動で作成されます。
※事前に[App Service プラン]を作成する必要があります。
WebAppの接続先URLは「xxx.azurewebsites.net」となります。
例の場合「app01.azurewebsites.net」となる。※オリジナルドメインも可能
ユーザーは、「app01.azurewebsites.net」にアクセスする事で、WebAppに接続できます。
※App Service プラン(Worker)のバーチャルホスト上で動作しているので、IPアドレスでの接続ができません。

App Service プラン(Worker)をスケールアウトすると、[\home]以下を共有ストレージからマウントします。※[\home]にユーザーデータが置かれている。

App Service プラン(Worker)をスケールアップ/ダウンの場合、サイズ変更後のWorkerを作成し、変更前のWorkerを削除し移行します。
※スケールアップ/ダウンの際は、移行時に2倍のIPアドレスが必要となる。

ここからは、App Service プランが展開される環境について見ています!

App Service プランを作成するリージョンを選択すると、そのリージョンで既に展開されている[スタンプ]と呼ばれるユニット内のどこかに作成されます。
※スタンプ内には、他ユーザーのASPも存在します。
※ASEは、スタンプ環境を仮想ネットワーク上に作成(専有)します。

各スタンプには、受信用IPアドレス(1つ)と送信用IPアドレス(5つ/Prev2:15)があり、スタンプ内のWebAppが共有して利用します。

よって、WebAppを停止/開始してもIPアドレスが変更される事はありませんし、IPアドレスでWebAppに接続できない事がわかります。

※WebAppを作成すると、スタンプ名とIPアドレスが確認できます。


さっそく、作成してみましょう!

[すべてのサービス]ー[Web]ー[App Service プラン]を選択

サブスクリプション:Azureサービスの提供範囲
リソースグループ:グループ名(複数のリソースを1つにグループ化する機能)
App Service プラン:表示名
オペレーティングシステム:Window or Linux
場所:デプロイするAzureのリージョン
価格レベル:リソースサイズを選択。※下記のようなオプションがある。
[ストレージ容量][最大インスタンス数][スロット数(ステージング)][バックアップ回数][Traffic Manager][カスタムドメイン][証明書]

2~3分で完成です!

[App Service プラン]で出来る主な設定項目は[スケールアップ][スケールアウト][警告]ぐらいでしょうか。
※[警告]メトリックやイベントを基に条件を設定し、管理者にメール通知ができます。