アプリケーションの自動スケーリングを設定する

Note

Azure Spring Apps は、Azure Spring Cloud サービスの新しい名前です。 サービスの名前は新しくなりましたが、スクリーンショット、ビデオ、図などの資産の更新に取り組んでいる間、場所によってはしばらく古い名前が表示されます。

この記事の適用対象: ✔️ Java ✔️ C#

この記事の適用対象: ✔️ Basic または Standard ✔️ Enterprise

この記事では、Microsoft Azure portal または Azure CLI を使用してアプリケーションの自動スケーリングの設定をセットアップする方法について説明します。

自動スケーリングは、需要の変化に応じてアプリケーションで最高のパフォーマンスが実現されるようにする Azure Spring Apps の組み込み機能です。 Azure Spring Apps では、スケールアウトとスケールインがサポートされています。これには、アプリ インスタンスの数と負荷分散の変更が含まれます。

前提条件

以下の手順に従うためには、次の要件を満たす必要があります。

  1. Azure portal にサインインします。
  2. Azure Spring Apps の [概要] ページに移動します。
  3. 左側のナビゲーション ペインのメニューにある [設定][アプリ] タブを選択します。
  4. 自動スケーリングを設定するアプリケーションを選択します。 この例では、demo という名前のアプリケーションを選択します。 アプリケーションの [概要] ページが表示されます。
  5. 左側のナビゲーション ペインのメニューにある [設定][スケールアウト] タブに移動します。

Azure portal でアプリケーションに対する自動スケーリングの設定をセットアップする

自動スケーリングの要求管理には、次の 2 つのオプションがあります。

  • 手動スケーリング: 固定のインスタンス数を維持します。 Standard プランでは、最大 500 インスタンスにスケールアウトできます。 この値は、アプリケーションの個別の実行インスタンスの数を変更します。
  • カスタム自動スケーリング: 任意のメトリックに基づき、任意のスケジュールでスケーリングします。

Azure portal でスケーリング方法を選択します。 次の図では、[カスタム自動スケーリング] オプションとモードの設定を示します。

Screenshot of the Azure portal that shows the Autoscale setting page with the Custom autoscale option highlighted.

Azure CLI でアプリケーションに対する自動スケーリングの設定をセットアップする

Azure CLI を使用して自動スケーリング モードを設定することもできます。 次のコマンドを使用すると、自動スケーリング設定と自動スケーリング規則が作成されます。

  • 自動スケーリング設定を作成します。

    az monitor autoscale create \
         --resource-group <resource-group-name> \
         --name <autoscale-setting-name> \
         --resource /subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.AppPlatform/Spring/<service-instance-name>/apps/<app-name>/deployments/<deployment-name> \
         --min-count 1 \
         --max-count 5 \
         --count 1
    
  • 自動スケーリング規則を作成します。

    az monitor autoscale rule create \
         --resource-group <resource-group-name> \
         --autoscale-name <autoscale-setting-name> \
         --scale out 1 \
         --cooldown 1 \
         --condition "tomcat.global.request.total.count > 100 avg 1m where AppName == <app-name> and Deployment == <deployment-name>"
    

利用できるメトリックの詳細については、Azure Spring Apps のメトリックの「ユーザー メトリック オプション」セクションをご覧ください。

Standard プランへのアップグレード

Basic プランを使用していて、これらの制限の 1 つ以上によって制約されている場合は、Standard プランにアップグレードできます。 アップグレードするには、最初に Standard レベルの列を選択し、[アップグレード] ボタンを選択して、[価格プラン] メニューに移動します。

次のステップ