すべてのプロダクト
Search
ドキュメントセンター

Auto Scaling:スケーリングポリシー

最終更新日:Nov 14, 2025

スケーリンググループは、アプリケーションの負荷の変動に応じてリソースを自動的に調整し、サービスの安定性とコスト効率を確保します。スケールアウトまたはスケールイン操作がトリガーされると、システムは事前に設定されたスケーリングポリシーに基づいて、スケーリンググループに追加または削除する適切なインスタンスを選択します。このトピックでは、利用可能なスケーリングポリシーとその設定方法について説明します。

スケーリングポリシーの説明

デフォルトでは、スケーリンググループは、設定した vSwitch の順序に基づいてスケーリングアクティビティを実行します。このデフォルトの動作は、優先度ポリシーとして知られています。[スケーリングポリシー] を変更して、他のポリシーを使用できます。Auto Scaling は、このセクションで説明するいくつかの事前設定されたスケーリングポリシーを提供します。

重要

この設定は、[スケーリンググループタイプ][ECS] に設定され、[ネットワークタイプ][Virtual Private Cloud (VPC)] に設定されている場合にのみ変更できます。[スケーリンググループタイプ][ECI] の場合、[スケーリングポリシー] はデフォルトで [優先度ポリシー] になります。

  • 優先度ポリシー (デフォルトポリシー)

    このポリシーは、定義した vSwitch の順序に基づいてインスタンスをスケールアウトまたはスケールインします。優先度の高い vSwitch のゾーンでインスタンスを作成できない場合、システムは自動的に次の優先度の vSwitch のゾーンでインスタンスの作成を試みます。

  • 均等配置ポリシー

    このポリシーは、マルチゾーンのディザスタリカバリをサポートするために、インスタンスを複数のゾーンに均等に分散させます。在庫不足などの理由でゾーン間の ECS インスタンスの数が不均衡になった場合、リバランス操作を実行してバランスを回復できます。詳細については、「ECS インスタンスのリバランス」をご参照ください。

  • コスト最適化ポリシー

    コストが最優先事項である場合は、[コスト最適化ポリシー] を使用します。スケーリングアクティビティが発生すると、このポリシーは vCPU 単価の昇順でインスタンスの作成を試みます。スケーリング設定にスポット課金方法を使用する複数のインスタンスタイプが含まれている場合、ポリシーは最初にスポットインスタンスの作成を試みます。在庫不足などの理由でポリシーがスポットインスタンスを作成できない場合、自動的に従量課金インスタンスの作成を試みます。スケールインアクティビティ中、ポリシーは vCPU 単価が最も高いインスタンスから削除します。

  • カスタム組み合わせポリシー

    このポリシーでは、設定の組み合わせを使用してキャパシティの分散をカスタマイズできます。このポリシーを使用して、オンデマンドインスタンスとスポットインスタンスの比率を調整し、ゾーン間でキャパシティのバランスを取り、スケーリンググループ内のインスタンスタイプを選択できます。

設定手順については、「スケーリングポリシーの設定」をご参照ください。

スケーリングポリシーの設定

既存のスケーリンググループのスケーリングポリシーを変更する

既存のスケーリンググループの [スケーリングポリシー] を変更するには、次のステップに従います。

  1. Auto Scaling コンソールにログインします。

  2. 左側のナビゲーションウィンドウで、[スケーリンググループ] をクリックします。

  3. 上部のナビゲーションバーで、Auto Scaling が有効化されているリージョンを選択します。

  4. [スケーリンググループ管理] ページで、[スケーリングポリシー] を変更するスケーリンググループを見つけます。[アクション] 列で、[変更] ボタンをクリックして [スケーリンググループの変更] ウィンドウを開きます。

  5. [スケーリングポリシー] を目的のポリシーに設定します。

    [均等配置ポリシー][コスト最適化ポリシー]、または [カスタム組み合わせポリシー] を選択した場合は、関連する子設定項目を設定する必要があります。子設定項目の詳細については、「子設定項目」をご参照ください。

  6. [OK] ボタンをクリックして設定を完了します。

スケーリンググループ作成時のスケーリングポリシーの設定

次の図に示すように、スケーリンググループを作成するときに、作成ページで [スケーリングポリシー] を設定することもできます。

image

[コスト最適化ポリシー] または [カスタム組み合わせポリシー] を選択した場合は、関連する子設定項目を設定する必要があります。子設定項目の詳細については、「子設定項目」をご参照ください。

子設定項目

[均等配置ポリシー][コスト最適化ポリシー]、または [カスタム組み合わせポリシー] を設定した場合は、次の表で説明するように、追加の子設定項目を設定する必要があります。

均等配置ポリシー

設定項目

説明

バランスモード

  • ベストエフォート配信モード: デフォルトの配信モード。リソース制限によりゾーンでインスタンスを作成できない場合、システムは別のゾーンにフォールバックします。

  • バランスのみ: リソース制限によりゾーンでインスタンスを作成できない場合、システムは別のゾーンにフォールバックしません。

自動バランシングを有効にする

この機能を有効にすると、スケーリンググループはゾーンのキャパシティを自動的に検出します。ゾーン間でキャパシティが不均衡な場合、グループはゾーン間でプロアクティブにスケールアウトまたはスケールインして、キャパシティをリバランスします。

コスト最適化ポリシー

設定項目

説明

グループ内のオンデマンドインスタンスの最小数 (台)

スケーリンググループに含める必要がある従量課金 ECS インスタンスの最小数です。デフォルト値は 0 です。スケーリンググループ内の従量課金 ECS インスタンスの数がこの値を下回る場合、スケールアウト中に最初に従量課金インスタンスが作成されます。

オンデマンドインスタンスの割合 (%)

自動的に作成される ECS インスタンスに占める従量課金インスタンスの割合。デフォルト値は 70% です。この計算には、「グループ内のオンデマンドインスタンスの最小数 (台)」で指定されたインスタンス数は含まれません。

最低コストのインスタンスタイプの数 (個)

インスタンスの作成に使用する最低価格のインスタンスタイプの数。デフォルト値は 1 です。このパラメーターは、スケーリング設定で複数のインスタンスタイプが指定されている場合にのみ有効になります。スポットインスタンスを作成する場合、スケーリンググループは、指定された数の最低価格のインスタンスタイプにインスタンスを均等に分散します。

スポットインスタンスの補償を有効にする

この機能を有効にすると、スケーリンググループは、回収が予定されているスポットインスタンスを置き換えるために、新しいスポットインスタンスを作成します。置き換えインスタンスは、回収の約 5 分前に作成されます。

オンデマンドインスタンスを使用してスポットキャパシティを補完する

この機能はデフォルトで有効になっています。価格や在庫などの理由で必要なスポットインスタンスのキャパシティを満たせない場合、スケーリンググループは従量課金インスタンスを作成してキャパシティ要件を満たそうとします。

オンデマンドインスタンスのスポットインスタンスによる自動置き換えを有効にする

[オンデマンドインスタンスを使用してスポットキャパシティを補完する] を有効にすると、スケーリンググループ内のオンデマンドインスタンスの割合が [オンデマンドインスタンスの割合 (%)] に指定された値を超える場合があります。このオプションを有効にすると、スケーリンググループは超過したオンデマンドインスタンスをスポットインスタンスに置き換えようとします。

カスタム組み合わせポリシー

設定項目

説明

グループ内のオンデマンドインスタンスの最小数 (台)

スケーリンググループに含める必要がある従量課金 ECS インスタンスの最小数です。デフォルト値は 0 です。スケーリンググループ内の従量課金 ECS インスタンスの数がこの値を下回る場合、スケールアウト中に最初に従量課金インスタンスが作成されます。

オンデマンドインスタンスの割合 (%)

自動的に作成される ECS インスタンスに占める従量課金インスタンスの割合。デフォルト値は 70% です。この計算には、「グループ内のオンデマンドインスタンスの最小数 (台)」で指定されたインスタンス数は含まれません。

ゾーンキャパシティバランシングを有効にする

スケーリンググループに指定されたゾーンに ECS インスタンスを均等に分散します。複数のゾーンを使用するには、複数の vSwitch を指定する必要があります。

説明

リバランス操作を実行して、ゾーン間で ECS インスタンスの分散のバランスを取ることができます。詳細については、「ECS インスタンスのリバランス」をご参照ください。

キャパシティ分散ポリシー

スケーリンググループがキャパシティ要件を満たすために、利用可能なインスタンスタイプからどのように選択するかを指定します。

  • インスタンスタイプの順序: 設定されたインスタンスタイプの順序でインスタンスを作成します。

  • 最低価格: インスタンスタイプの単一 vCPU 価格の昇順でインスタンスを作成します。

スポットキャパシティ分散ポリシーを別途指定する

このオプションを有効にすると、スポットインスタンスに対して個別のキャパシティ分散ポリシーを指定できます。

スポットキャパシティ分散ポリシー

[キャパシティ分散ポリシー] と同じです。

最低コストのインスタンスタイプの数 (個)

使用する最低価格のインスタンスタイプの数。スポットインスタンスを作成する場合、システムは指定された数のインスタンスタイプに均等に分散します。

スポットインスタンスの補償を有効にする

この機能を有効にすると、システムは、回収される約 5 分前に既存のスポットインスタンスを置き換えるために、新しいスポットインスタンスを作成します。

オンデマンドインスタンスを使用してスポットキャパシティを補完する

この機能はデフォルトで有効になっています。価格や在庫などの理由で必要なスポットインスタンスのキャパシティを満たせない場合、スケーリンググループは従量課金インスタンスを作成してキャパシティ要件を満たそうとします。

オンデマンドインスタンスのスポットインスタンスによる自動置き換えを有効にする

[オンデマンドインスタンスを使用してスポットキャパシティを補完する] を有効にすると、スケーリンググループ内のオンデマンドインスタンスの割合が [オンデマンドインスタンスの割合 (%)] に指定された値を超える場合があります。このオプションを有効にすると、スケーリンググループは超過したオンデマンドインスタンスをスポットインスタンスに置き換えようとします。

API を使用したスケーリンググループのスケーリングポリシーの変更

API 操作を呼び出して、スケーリンググループのスケーリングポリシーを変更できます。このセクションでは、ModifyScalingGroup 操作を例として使用します。必要な設定項目は、次のセクションで説明するように、スケーリングポリシーによって異なります。

優先度ポリシーの設定

このポリシーは、定義した vSwitch の順序に基づいてインスタンスをスケールアウトまたはスケールインします。優先度の高い vSwitch のゾーンでインスタンスを作成できない場合、システムは自動的に次の優先度の vSwitch のゾーンでインスタンスの作成を試みます。

パラメーター

タイプ

説明

設定方法

ScalingGroupId

string

スケーリンググループの ID。(必須)

変更するスケーリンググループの ID に設定します。

MultiAZPolicy

string

スケーリングポリシー。(必須)

[優先度ポリシー] を実装するには、これを PRIORITY に設定します。

均等配置ポリシーの設定

重要

複数のゾーンでインスタンスを作成するには、スケーリンググループを複数のゾーンの vSwitch で設定する必要があります。

パラメーター

タイプ

説明

設定方法

ScalingGroupId

string

スケーリンググループの ID。(必須)

変更するスケーリンググループの ID に設定します。

MultiAZPolicy

string

スケーリングポリシー。(必須)

[均等配置ポリシー] を実装するには、これを BALANCE に設定します。

BalanceMode

string

バランスモード。(オプション)

有効な値:

  • BalancedBestEffort: [ベストエフォート配信モード]。ゾーンでインスタンスを作成できない場合、システムは別のゾーンにフォールバックして、ベストエフォートのリソース配信を保証します。

  • BalancedOnly: リソース制限によりゾーンでインスタンスを作成できない場合、システムは別のゾーンにフォールバックしません。

デフォルト値: BalancedBestEffort

AutoRebalance

boolean

自動バランシングを有効にする。(オプション)

この機能を有効にすると、スケーリンググループはゾーンのキャパシティを自動的に検出します。ゾーン間でキャパシティが不均衡な場合、グループはゾーン間でプロアクティブにスケールアウトまたはスケールインして、キャパシティをリバランスします。

このパラメーターは、BalanceMode=BalancedOnly の場合にのみ有効です。

有効な値:

  • false: 有効にしません。

  • true: 有効にします。

デフォルト値: false。

在庫不足などの理由でゾーン間でインスタンスの分散が不均衡になった場合、関連する API 操作を手動で呼び出してインスタンスをリバランスできます。詳細については、「RebalanceInstances - ECS インスタンスの分散をリバランスする」をご参照ください。

コスト最適化ポリシーの設定

このポリシーは、vCPU 単価の昇順でインスタンスを作成しようとします。スケーリング設定がスポットインスタンス用に設定されている場合、最初にスポットインスタンスが作成されます。スポットインスタンスを作成できない場合、システムはオンデマンドインスタンスの作成を試みます。

重要

コスト最適化ポリシーは、スケーリング設定で複数のインスタンスタイプを指定するか、スポットインスタンスを有効化した場合にのみ有効になります。

パラメーター

タイプ

説明

設定方法

ScalingGroupId

string

スケーリンググループの ID。(必須)

変更するスケーリンググループの ID に設定します。

MultiAZPolicy

string

スケーリングポリシー。(必須)

[コスト最適化ポリシー] を実装するには、これを COST_OPTIMIZED に設定します。

OnDemandBaseCapacity

integer

グループ内のオンデマンドインスタンスの最小数 (台)。(オプション)

スケーリンググループ内のオンデマンドインスタンスの数がこの値を下回る場合、システムは最初にオンデマンドインスタンスを作成します。

必要に応じて設定します。

範囲: 0~1000。

デフォルト値: 0。

OnDemandPercentageAboveBaseCapacity

integer

オンデマンドインスタンスの割合 (%)。(オプション)

OnDemandBaseCapacity を超えるインスタンスに占めるオンデマンドインスタンスの割合。

必要に応じて設定します。

範囲: 0~100。

デフォルト値: 0。

SpotInstancePools

integer

最低コストのインスタンスタイプの数 (個)。

最低価格のインスタンスタイプの数。これは、スケーリング設定で複数のオプションのインスタンスタイプが指定されている場合に有効になります。
スポットインスタンスを作成する場合、スケーリンググループは最低価格のインスタンスタイプ間で ECS インスタンスをバランスよく作成します。

必要に応じて設定します。

範囲: 0~10。

デフォルト値: 2。

SpotInstanceRemedy

boolean

スポットインスタンスの補償を有効にするかどうか。

スポットインスタンスの補償を有効にすると、スケーリンググループは、回収されようとしているスポットインスタンスを置き換えるために、回収の 5 分前に新しいスポットインスタンスをプロアクティブに作成します。

必要に応じて設定します。

有効な値:

  • true: 有効にします。

  • false: 無効にします。

CompensateWithOnDemand

boolean

オンデマンドインスタンスを使用してスポットキャパシティを補完するを有効にするかどうか。

価格や在庫などの理由で十分なスポットインスタンスを作成できない場合、システムが自動的にオンデマンドインスタンスを作成して必要な ECS インスタンス数を満たすことを許可するかどうかを指定します。

必要に応じて設定します。

有効な値:

  • true: 有効にします。

  • false: 無効にします。

CapacityOptions.SpotAutoReplaceOnDemand

boolean

オンデマンドインスタンスのスポットインスタンスによる自動置き換えを有効にするかどうか。

CompensateWithOnDemand が有効な場合、オンデマンドインスタンスの割合が OnDemandPercentageAboveBaseCapacity を超えると、システムはオンデマンドキャパシティをスポットキャパシティに置き換えようとします。

必要に応じて設定します。

有効な値:

  • true: 有効にします。

  • false: 無効にします。

カスタム組み合わせポリシーの設定

このポリシーを使用して、スケーリンググループ内のオンデマンドインスタンスとスポットインスタンスの比率を調整し、ゾーン間でキャパシティのバランスを取り、インスタンスタイプを選択できます。

パラメーター

タイプ

説明

設定方法

ScalingGroupId

string

スケーリンググループの ID(必須)

変更するスケーリンググループの ID に設定します。

MultiAZPolicy

string

スケーリングポリシー(必須)

[カスタム組み合わせポリシー] を実装するには、これを COMPOSABLE に設定します。

OnDemandBaseCapacity

integer

グループ内のオンデマンドインスタンスの最小数 (台)。(オプション)

スケーリンググループ内のオンデマンドインスタンスの数がこの値を下回る場合、システムは最初にオンデマンドインスタンスを作成します。

必要に応じて設定します。

範囲: 0~1000。

デフォルト値: 0。

OnDemandPercentageAboveBaseCapacity

integer

オンデマンドインスタンスの割合 (%)。(オプション)

OnDemandBaseCapacity を超えるインスタンスに占めるオンデマンドインスタンスの割合。

必要に応じて設定します。

範囲: 0~100。

デフォルト値: 100。

AzBalance

boolean

ゾーンキャパシティバランシングを有効にするかどうか。(オプション)

スケーリンググループに指定された複数のゾーン (つまり、複数の VPC vSwitch が指定されている) に ECS インスタンスを均等に分散します。在庫不足などの理由でゾーン間でインスタンスが不均衡になった場合、関連する API を呼び出してリバランスできます。詳細については、「RebalanceInstances - ECS インスタンスの分散をリバランスする」をご参照ください。

必要に応じて設定します。

有効な値:

  • true: 有効にします。

  • false: 無効にします。

AllocationStrategy

string

キャパシティ分散ポリシー。(オプション)

キャパシティ分散ポリシーは、スケーリンググループがキャパシティ要件を満たすために利用可能なインスタンスタイプをどのように選択するかを決定します。

必要に応じて設定します。

有効な値:

  • priority (デフォルト値): 設定されたインスタンスタイプの順序でインスタンスを作成します。

  • lowestPrice: インスタンスタイプの単一 vCPU 価格の昇順でインスタンスを作成します。

SpotAllocationStrategy

string

スポットキャパシティ分散ポリシーを別途指定する。(オプション)

このオプションを使用して、スポットインスタンスに個別のキャパシティ分散ポリシーを指定します。

必要に応じて設定します。

有効な値:

  • priority: 設定されたインスタンスタイプの順序でインスタンスを作成します。

  • lowestPrice: インスタンスタイプの単一 vCPU 価格の昇順でインスタンスを作成します。

SpotInstancePools

integer

最低コストのインスタンスタイプの数 (個)。

重要

このフィールドは、AllocationStrategy または SpotAllocationStrategy パラメーターが lowestPrice に設定されている場合に設定する必要があります。

最低価格のインスタンスタイプの数。これは、スケーリング設定で複数のオプションのインスタンスタイプが指定されている場合に有効になります。
スポットインスタンスを作成する場合、スケーリンググループは最低価格のインスタンスタイプ間で ECS インスタンスをバランスよく作成します。

必要に応じて設定します。

範囲: 0~10。

デフォルト値: 2。

SpotInstanceRemedy

boolean

スポットインスタンスの補償を有効にするかどうか。

重要

このフィールドは、AllocationStrategy または SpotAllocationStrategy パラメーターが lowestPrice に設定されている場合に設定する必要があります。

スポットインスタンスの補償を有効にすると、スケーリンググループは、回収されようとしているスポットインスタンスを置き換えるために、回収の 5 分前に新しいスポットインスタンスをプロアクティブに作成します。

必要に応じて設定します。

有効な値:

  • true: 有効にします。

  • false: 無効にします。

CompensateWithOnDemand

boolean

オンデマンドインスタンスを使用してスポットキャパシティを補完するを有効にするかどうか。

重要

このフィールドは、AllocationStrategy または SpotAllocationStrategy パラメーターが lowestPrice に設定されている場合に設定する必要があります。

価格や在庫などの理由で十分なスポットインスタンスを作成できない場合、システムが自動的にオンデマンドインスタンスを作成して必要な ECS インスタンス数を満たすことを許可するかどうかを指定します。

必要に応じて設定します。

有効な値:

  • true: 有効にします。

  • false: 無効にします。

CapacityOptions.SpotAutoReplaceOnDemand

boolean

オンデマンドインスタンスのスポットインスタンスによる自動置き換えを有効にするかどうか。

CompensateWithOnDemand が有効な場合、オンデマンドインスタンスの割合が OnDemandPercentageAboveBaseCapacity を超えると、システムはオンデマンドキャパシティをスポットキャパシティに置き換えようとします。

必要に応じて設定します。

有効な値:

  • true: 有効にします。

  • false: 無効にします。