App Service Environment v1 内でのアプリのスケーリング

重要

この記事は、App Service Environment v1 に関するものです。 App Service Environment v1 は 2024 年 8 月 31 日に廃止される予定です。 より強力なインフラストラクチャ上で実行できる、使いやすい新しいバージョンの App Service Environment があります。 新しいバージョンの詳細については、App Service Environment の概要に関するページから始めてください。 現在 App Service Environment v1 を使用している場合は、この記事の手順に従って新しいバージョンに移行ください。

2024 年 1 月 29 日の時点で、ARM/Bicep テンプレート、Azure Portal、Azure CLI、REST API などの使用可能な方法を使用して、新しい App Service Environment v1 リソースを作成することはできなくなります。 リソースの削除とデータの損失を防ぐために、2024 年 8 月 31 日より前に App Service Environment v3 に移行する必要があります。

Azure App Service では、通常、次の 3 つの項目をスケーリングできます。

  • 料金プラン
  • ワーカーのサイズ
  • インスタンスの数

ASE では、料金プランを選択または変更する必要はありません。 機能に関しては、既に Premium 料金機能レベルにあります。

ワーカー サイズについては、ASE 管理者が各ワーカー プールに使用するコンピューティング リソースのサイズを割り当てることができます。 つまり、必要に応じて、ワーカー プール 1 に P4 コンピューティング リソースを割り当て、ワーカー プール 2 に P1 コンピューティング リソースを割り当てることができます。 サイズの順に従う必要はありません。 サイズとその価格設定の詳細については、「App Service の価格」のドキュメントを参照してください。 結果として、App Service Environment 内の Web アプリおよび App Service プランに対しては、次のスケーリング オプションが残されます。

  • ワーカー プールの選択
  • インスタンスの数

どちらの項目も、ASE でホストされる App Service プランに対して表示される適切な UI を使用して変更できます。

Screenshot that shows where to view the details of the Scale service plan and the Worker Pool service plan.

ASP が属しているワーカー プールで利用可能なコンピューティング リソースの数を超えて ASP をスケールアップすることはできません。 そのワーカー プールにコンピューティング リソースが必要な場合は、ASE 管理者に依頼してコンピューティング リソースを追加してもらう必要があります。 ASE を再構成する方法については、App Service Environment を構成する方法に関するページを参照してください。 また、ASE の自動スケール機能を利用することで、スケジュールまたはメトリックに基づいて容量を追加することができます。 ASE 環境自体の自動スケールを構成する方法の詳細については、App Service Environment の自動スケールを構成する方法に関するページを参照してください。

異なるワーカー プールまたは同じワーカー プールのコンピューティング リソースを使用して、複数の App Service プランを作成できます。 たとえば、ワーカー プール 1 に利用可能なコンピューティング リソースが 10 ある場合、6 つのコンピューティング リソースを使用する App Service プランと 4 つのコンピューティング リソースを使用する App Service プランを作成することを選択できます。

インスタンスの数のスケーリング

App Service Environment で初めて Web アプリケーションを作成するときは、1 つのインスタンスで始まります。 スケールアウトしてインスタンスを追加することで、アプリ用の追加コンピューティング リソースを用意できます。

ASE に十分な容量がある場合、この操作は非常に単純です。 スケールアップするサイトが保持されている App Service プランに移動し、[スケール] を選択します。 UI が開きます。ここでは、ASP のスケールを手動で設定することも、ASP の自動スケール ルールを構成することもできます。 アプリを手動でスケーリングするには、[スケールの基準][手動で入力したインスタンス数] に設定するだけです。 あとは、スライダーを目的の数量までドラッグするか、スライダーの横のボックスに目的の値を入力します。

Screenshot that shows where you can set the scale for your ASP or configure autoscale rules for your ASP.

ASE の ASP 用の自動スケール ルールは、通常と同じように機能します。 [スケールの基準][CPU の割合] を選び、CPU の割合に基づいて ASP の自動スケール ルールを作成することも、[スケジュールおよびパフォーマンスのルール] を使用してより複雑なルールを作成することもできます。 自動スケールの構成の詳細を確認するには、Azure App Service でのアプリのスケーリングに関するガイドを使用してください。

ワーカー プールの選択

前述のように、ワーカー プールを選択するには、ASP の UI を使用します。 スケーリングする ASP 用のブレードを開き、[ワーカー プール] を選択します。 App Service Environment 内に構成されているすべてのワーカー プールが表示されます。 構成されているワーカー プールが 1 つの場合は、1 つのプールが表示されます。 ASP が属しているワーカー プールを変更するには、App Service プランの移動先のワーカー プールを選択します。

Screenshot that shows where you can change what worker pool your ASP is in.

ワーカー プール間で ASP を移動する場合は、ASP のための容量が十分に確保されているか事前に確認することが重要です。 ワーカー プールの一覧には、ワーカー プールの名前だけでなく、そのワーカー プールで使用可能なワーカーの数も表示されます。 App Service プランを格納するための十分なインスタンスがあることを確認します。 移動先のワーカー プールにより多くのコンピューティング リソースが必要な場合は、ASE 管理者に依頼してコンピューティング リソースを追加してもらう必要があります。

Note

ASP を 1 つのワーカー プールから移動すると、その ASP のアプリがコールド スタートします。 アプリが新しいコンピューティング リソースでコールド スタートするため、要求の実行が遅くなる可能性があります。 このコールド スタートは、Azure App Service のアプリケーション ウォームアップ 機能を使用して回避できます。 アプリが新しいコンピューティング リソースでコールド スタートするときに初期化プロセスも呼び出されるため、この記事で説明しているアプリケーション初期化モジュールはコールド スタートでも有効です。

作業の開始

App Service 環境の使用を開始するには、テンプレートから ASEv1 を作成する方法に関するページを参照してください。