Application Auto Scaling のスケジュールに基づくスケーリング - Application Auto Scaling

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Application Auto Scaling のスケジュールに基づくスケーリング

スケジュールに基づいたスケーリングにより、予想可能な負荷の変化に応じた独自のスケーリングスケジュールを設定できます。たとえば、毎週、ウェブアプリケーションへのトラフィックが水曜日に増え始め、木曜日は高いままで、金曜日に減り始めるとします。Application Auto Scaling のスケジュールを設定して、水曜日に容量を増やし、金曜日に減らすようにすることができます。

スケジュールされたスケーリングを使用するには、のスケジュールされたアクションで、特定の時間にスケーリングアクティビティを実行するように Application Auto Scaling に指示します。スケジュールされたアクションを作成する際、スケーラブルなターゲット、スケーリングアクティビティーが起こる時刻、最小容量、最大容量を指定できます。スケジュールされたアクションは1回だけ、または反復して行われるように作成できます。

指定された時間に、Application Auto Scaling は、現在の容量と指定された最小容量と最大容量を比較して、新しい容量値に基づいてスケーリングします。

  • 現在の容量が指定された最小容量を下回る場合、Application Auto Scaling は指定された最小容量までスケールアウト(容量を増やす)します。

  • 現在の容量が指定された最大容量を上回る場合、Application Auto Scaling は指定された最大容量まで縮小されます。

スケジュールされたスケーリングポリシーとスケーリングポリシーを同じリソース上で一緒に使用することで、両方のメリットを得ることができます。スケジュールされたアクションが実行された後も、スケーリングポリシーは、さらに容量を拡張するかどうかについて引き続き決定を下すことができます。これにより、アプリケーションの負荷を処理するのに十分な容量を確保できます。アプリケーションは需要に合わせて拡張されますが、現在の容量は、スケジュールされたアクションで設定された最小容量と最大容量内に収まる必要があります。

スケジュールに基づくスケーリングの使用例の詳細については、ブログ記事ピーク使用が繰り返される場合の AWS Lambda プロビジョンド同時実行のスケジュール設定を AWS コンピュートブログに掲載しています。サンプルの AWS リソースを使用してスケジュールされたアクションを作成するチュートリアルについては、「」AWS CLI の使用を開始する

Considerations

スケジュールされたアクションを作成する場合、次の点に注意してください。

  • スケジュールされたアクションは、MinCapacityおよびMaxCapacity特定の時間にスケジュールされたアクションで指定された時間にスケジュールされたアクションによって指定されたものに。

  • 既定では、設定した時刻は協定世界時 (UTC) です。ワンタイムスケジュールまたはcron 式で定期的なスケジュールを指定する場合、ローカルタイムゾーンまたはネットワークの他の部分のタイムゾーンに対応するタイムゾーンに変更できます。夏時間を監視するタイムゾーンを指定すると、夏時間 (DST) に合わせて自動的に調整されます。

  • 定期的なスケジュールを指定する場合は、開始時刻、終了時刻、またはその両方の日付と時刻を指定できます。

    • 開始時刻と終了時刻はUTC で設定する必要があります。開始時刻と終了時刻のタイムゾーンの変更はサポートされていません。

    • 開始時刻を指定する場合、Application Auto Scaling はその時刻にアクションを実行し、指定された繰り返しに基づいてアクションを実行します。

    • 終了時刻を指定すると、この時刻以降にアクションの繰り返しが停止します。アプリケーションの Auto Scaling は、以前の値を追跡しないため、終了時間後に以前の値に戻りません。

  • スケジュールされたアクションの名前は、指定されたスケーラブルなターゲット上の他のすべてのスケジュールされたアクション間で一意である必要があります。

  • Application Auto Scaling は、同じスケーラブルターゲットに対してスケジュールされたアクションが実行される順序を保証しますが、スケーラブルターゲット間でスケジュールされたアクションが実行される順序を保証することはできません。

  • Application Auto Scaling とターゲットサービスが持つ分散性の特質により、スケジュールされたアクションがトリガーされてから、ターゲットサービスがスケーリングアクションを適用するまでの遅延は、数秒となる可能性があります。スケジュールされたアクションは指定された順序で実行されるため、開始時間が互いに近い、スケジュールされたアクションの実行には時間がかかる可能性があります。

スケジュールに基づくアクションの作成、管理、および削除に一般的に使用されるコマンド

スケジュールスケーリングを操作するために一般的に使用されるコマンドは次のとおりです。

  • register-scalable-targetを使用して、AWS またはカスタムリソースをスケーラブルターゲット(Application Auto Scaling がスケーリングできるリソース)として登録し、スケーリングを一時停止および再開します。

  • put-scheduled-action既存のスケーラブルなターゲットのスケジュールされたアクションを追加または変更するには。

  • describe-scaling-activitiesAWS リージョンでのスケーリングアクティビティに関する情報を返す。

  • describe-scheduled-actionsAWS リージョンでスケジュールされたアクションに関する情報を返す。

  • delete-scheduled-actionスケジュールされたアクションを削除するには。

注記

ターゲットサービスのコンソールでスケジュールされたアクションを設定する場合(サービスがサポートしている場合)、によりリソースがスケーラブルなターゲットとして自動的に登録されます。

簡潔にするため、本ガイドの例では、Application Auto Scaling と統合されているサービスのいくつかの CLI コマンドを示しています。別のスケーラブルなターゲットを指定するには、--service-namespace で名前空間を、--scalable-dimension でそのスケーラブルなディメンションを、--resource-id でそのリソース ID をそれぞれ指定します。各オプションの有効な値のリストについては、「register-scalable-target」を参照してください。

Limitations

スケジュールに基づくスケーリングを使用する際の制約事項は次のとおりです。

  • Application Auto Scaling は、スケジュール式で第 2 レベルの精度を提供しません。Cron 式を使用した最小の粒度は1分です。

  • スケーラブルなターゲットは、Amazon MSK クラスターにすることはできません。スケジュールされたスケーリングは、Amazon MSK ではサポートされていません。