利用可能なウォームアップ設定とクールダウン設定 - Amazon EC2 Auto Scaling

利用可能なウォームアップ設定とクールダウン設定

スケーリングパフォーマンスを最適化できるように、Auto Scaling グループに適切なウォームアップ設定とクールダウン設定を選択します。

これには、ウォームアップ設定とクールダウン設定のすべてを統一する DefaultInstanceWarmup 設定の使用をお勧めします。必要に応じて、HealthCheckGracePeriod 設定を使用することもできます。

その他の利用可能な設定は、DefaultInstanceWarmup 設定と同時に使用されることを意図していません。例えば、DefaultInstanceWarmup がすでに定義されている場合に EstimatedInstanceWarmup および InstanceWarmup は必要なく、DefaultCooldown および Cooldown が必要となるのはシンプルスケーリングポリシーの使用時のみです。(ベストプラクティスとして、シンプルスケーリングポリシーではなく、ターゲット追跡ポリシーとステップスケーリングポリシーの使用をお勧めします。) ただし、ユーザーがユースケースに適した設定を選択できるように、今後もこれらすべての設定がサポートされます。

DefaultInstanceWarmup (推奨)

API 操作: CreateAutoScalingGroupUpdateAutoScalingGroup

新たに起動されたインスタンスが Amazon CloudWatch メトリクスに反映されるまでの時間 (秒)。この遅延は、Amazon EC2 Auto Scaling がインスタンスメトリクスを集計する前にインスタンスが初期化を終了できるようにするため、より信頼性の高い使用状況データが得られるようになります。この値には、インスタンスが InService 状態になってからリソースの消費が安定するまでにかかる時間に等しい値を設定します。詳しくは、「Auto Scaling グループに対するインスタンスのデフォルトウォームアップを設定する」を参照してください。

インスタンスの起動にライフサイクルフックを使用すると、インスタンスのウォームアップ値を減らすことができます。Auto Scaling グループがロードバランサーの背後にある場合は、グループにライフサイクルフックを追加して、ライフサイクルフックの最後にインスタンスがロードバランサーに登録される前に、トラフィックを提供するためのインスタンスの準備が整っていることを確実にすることができます。詳しくは、「Amazon EC2 Auto Scaling のライフサイクルフック」を参照してください。

重要

グループレベルでウォームアップ設定を管理するには、その値が 0 秒に設定されている場合でも、インスタンスのデフォルトウォームアップを設定することをお勧めします。これにより、ターゲット追跡ポリシーやステップスケーリングポリシーなどの継続的にスケールするスケーリングポリシーのパフォーマンスも最適化されます。

以前設定した値を削除する必要がある場合は、値を -1 に指定したプロパティを含めます。ただし、最小値の 0 を設定して、インスタンスのデフォルトウォームアップを有効にしておくことを強くお勧めします。

デフォルト: なし

EstimatedInstanceWarmup

DefaultInstanceWarmup が定義されている場合は必要ありません。

API 操作: PutScalingPolicy

新たに起動されたインスタンスが CloudWatch メトリクスに反映されるまでの予測時間 (秒)。このウォームアップ期間は、特定のターゲット追跡またはステップスケーリングポリシーによって起動されたインスタンスに適用されます。ここでウォームアップ期間を指定すると、インスタンスのデフォルトウォームアップが上書きされます。詳細については、「ターゲット追跡スケーリングポリシー」および「ステップスケーリングポリシーおよび簡易スケーリングポリシー」を参照してください。

デフォルト値: 定義されていない場合、このパラメータの値はデフォルトで、グループに定義されたインスタンスのデフォルトウォームアップの値になります。インスタンスのデフォルトウォームアップが null の場合、デフォルトクールダウンの値にフォールバックします。

InstanceWarmup

DefaultInstanceWarmup が定義されている場合は必要ありません。

API 操作: StartInstanceRef

特定のインスタンス更新操作に適用される秒単位のウォームアップ期間。インスタンス更新の開始時にウォームアップ期間を指定すると、インスタンスのデフォルトウォームアップが上書きされますが、上書きされるのは現行のインスタンス更新のみです。詳しくは、「インスタンスの更新に基づいて Auto Scaling インスタンスを置き換える」を参照してください。

デフォルト値: 定義されていない場合、このパラメータの値はデフォルトで、グループに定義されたインスタンスのデフォルトウォームアップの値になります。インスタンスのデフォルトウォームアップが null の場合、ヘルスチェック猶予期間の値にフォールバックします。

DefaultCooldown

シンプルスケーリングポリシーを使用する場合にのみ必要になります。

API 操作: CreateAutoScalingGroupUpdateAutoScalingGroup

シンプルスケーリングポリシーによるスケーリングアクティビティが終了してから別のスケーリングアクティビティが開始されるまでの秒単位の時間。詳しくは、「Amazon EC2 Auto Scaling のスケーリングクールダウン」を参照してください。

デフォルト: 300

Cooldown

シンプルスケーリングポリシーを使用する場合にのみ必要になります。

API 操作: PutScalingPolicy

特定のシンプルスケーリングポリシーに適用される秒単位のクールダウン期間。(シンプルスケーリングポリシーは推奨されなくなりました。ベストプラクティスとして、その代わりにターゲット追跡ポリシーとステップスケーリングポリシーを使用することをお勧めします。) ここでクールダウン期間を指定すると、デフォルトのクールダウンが上書きされます。詳しくは、「Amazon EC2 Auto Scaling のスケーリングクールダウン」を参照してください。

デフォルト: なし

HealthCheckGracePeriod

API 操作: CreateAutoScalingGroupUpdateAutoScalingGroup

Amazon EC2 Auto Scaling が、稼働状態になった EC2 インスタンスのヘルスステータスを確認し、失敗した Elastic Load Balancing またはカスタムヘルスチェックが原因でそのインスタンスを異常としてマークするまでの秒単位の待機時間。これは、インスタンスが InService 状態になった直後にこれらのヘルスチェックに合格しない場合に役立ちます。詳しくは、「ヘルスチェックの猶予期間」を参照してください。

インスタンスの起動にライフサイクルフックを使用する場合は、ヘルスチェックの猶予期間の値を 0 に設定できます。Auto Scaling グループがロードバランサーの背後にある場合は、グループにライフサイクルフックを追加して、ライフサイクルフックの最後にインスタンスがロードバランサーに登録される前に、トラフィックを提供するためのインスタンスの準備が整っていることを確実にすることを検討してください。詳しくは、「Amazon EC2 Auto Scaling のライフサイクルフック」を参照してください。

デフォルト値: AWS Management Consoleで作成する Auto Scaling グループについては 300 秒。AWS CLI または SDK を使用して作成する Auto Scaling グループについては 0 秒。