Auto Scaling グループにヘルスチェックの猶予期間を設定する - Amazon EC2 Auto Scaling

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

Auto Scaling グループにヘルスチェックの猶予期間を設定する

Amazon EC2 Auto Scaling ヘルスチェックは、ある InService インスタンスが異常であると判断すると、新しいインスタンスに置き換えます。ヘルスチェックの猶予期間は、新しいインスタンスに異常がある場合、そのインスタンスを終了するまでに稼働する最小時間 (秒単位) を指定します。

ユースケース例としては、Elastic Load Balancing のヘルスチェックが失敗し、インスタンスがまだ初期化していることが原因である場合、Amazon EC2 Auto Scaling が実行を回避する要件があります。Elastic Load Balancing のヘルスチェックは、インスタンスがロードバランサーに登録されたときに開始して並行で実行されます。猶予期間によって、新しく起動されたインスタンスが InService 状態になった後、これらのヘルスチェックにすぐに合格しなかった場合に、Amazon EC2 Auto Scaling がそれらのインスタンスを Unhealthy とマークして不必要に終了しないようになります。

コンソールでは、Auto Scaling グループを作成するときのヘルスチェックの猶予期間がデフォルトで 300 秒になっています。 AWS CLI または SDK を使用して Auto Scaling グループを作成する場合、デフォルト値は 0 秒です。値が 0 の場合、ヘルスチェックの猶予期間は無効になります。

この値を高く設定しすぎると、Amazon EC2 Auto Scaling ヘルスチェックの効果が低減します。インスタンスの起動にライフサイクルフックを使用する場合は、ヘルスチェックの猶予期間の値を 0 に設定できます。ライフサイクルフックを使用すると、Amazon EC2 Auto Scaling は、インスタンスが常に初期化されてから InService 状態になることを確実にするための手段を提供します。詳細については、「Amazon EC2 Auto Scaling のライフサイクルフック」を参照してください。

猶予期間は以下のインスタンスに適用されます。

  • 新しく起動されたインスタンス

  • スタンバイ状態になった後で実行状態に戻されるインスタンス

  • グループに手動でアタッチされるインスタンス

重要

ヘルスチェックの猶予期間中に Amazon EC2 Auto Scaling が Amazon EC2 running 状態ではなくなったインスタンスを検出した場合は、直ちにそのインスタンスを Unhealthy としてマークし、置き換えます。例えば、Auto Scaling グループ内のインスタンスを停止すると、そのインスタンスは Unhealthy とマークされ、置き換えられます。

グループにヘルスチェックの猶予期間を設定する

ヘルスチェックの猶予期間は、新規または既存の Auto Scaling グループに設定できます。

Console
新しいグループのヘルスチェックの猶予期間を変更するには

Auto Scaling グループを作成するときは、[詳細オプションを設定] ページにある [ヘルスチェック][ヘルスチェックの猶予期間] に、時間を秒単位で入力します。これは、インスタンスが InService 状態になってからインスタンスのヘルスステータスを確認するまでに Amazon EC2 Auto Scaling が待機する必要がある時間です。

AWS CLI
新しいグループのヘルスチェックの猶予期間を変更するには

create-auto-scaling-group コマンドに --health-check-grace-period オプションを追加します。以下の例は、my-asg という名前の新しい Auto Scaling グループに対するヘルスチェック猶予期間を 60 秒の値で設定します。

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg \ --health-check-grace-period 60 ...
Console
既存グループのヘルスチェックの猶予期間を変更するには
  1. https://console.aws.amazon.com/ec2/ でAmazon EC2 コンソールを開き、ナビゲーションペインで [Auto Scaling グループ] を選択します。

  2. 画面の上部のナビゲーションバーで、Auto Scaling グループを作した AWS リージョン を選択します。

  3. Auto Scaling グループの横にあるチェックボックスを選択します。

    ページの下部にスプリットペインが開きます。

  4. [詳細] タブで、[ヘルスチェック][編集] の順に選択します。

  5. [Health check grace period] (ヘルスチェックの猶予期間) に、秒単位で時間を入力します。これは、インスタンスが InService 状態になってからインスタンスのヘルスステータスを確認するまでに Amazon EC2 Auto Scaling が待機する必要がある時間です。

  6. [Update] (更新) を選択します。

AWS CLI
既存グループのヘルスチェックの猶予期間を変更するには

update-auto-scaling-group コマンドに --health-check-grace-period オプションを追加します。以下の例は、my-asg という名前の既存の Auto Scaling グループに対するヘルスチェック猶予期間を 120 秒の値で設定します。

aws autoscaling update-auto-scaling-group --auto-scaling-group-name my-asg \ --health-check-grace-period 120
注記

Auto Scaling グループに対してデフォルトのインスタンスウォームアップ時間を設定することも強く推奨されます。詳細については、「Auto Scaling グループに対するインスタンスのデフォルトウォームアップを設定する」を参照してください。