メニュー
AWS Elastic Beanstalk
開発者ガイド (API バージョン 2010-12-01)

スケジュールされた Auto Scaling のアクション

ピークトラフィックが予測される期間に、環境での Amazon EC2 インスタンスの使用を最適化する場合は、Auto Scaling グループを設定し、スケジュールに基づいてインスタンス数を変更します。繰り返しアクションを使用して環境を設定すれば、毎日朝はスケールアップし、トラフィックの低い夜はスケールダウンすることができます。たとえば、マーケティングイベントで一時的にトラフィックをサイトに誘導する場合は、ワンタイムイベントをスケジュールして、開始時にはスケールアップし、終了時にはスケールダウンすることができます。

環境ごとに最大 120 のスケジュールに基づくアクティブアクションを定義することができます。また、Elastic Beanstalk でも、有効期限切れのスケジュールに基づき、最大 150 のアクションを保持し、設定をアップデートして再使用することができます。

スケジュールに基づくアクションの設定

Elastic Beanstalk コンソールで、環境の Auto Scaling グループ向けにスケジュールに基づくアクションを作成することができます。

Elastic Beanstalk コンソールで、スケジュールに基づくアクションを設定するには

  1. Elastic Beanstalk コンソールを開きます。

  2. お客様の環境の管理ページに移動します。

  3. [Configuration] を選択します。

  4. [キャパシティ] 設定カードで、[変更] を選択します。

  5. [時間に基づくスケーリング] セクションで、[スケジュールされたアクションの追加] を選択します。

     Elastic Beanstalk Auto Scaling のスケジュールに基づくアクションの設定ウィンドウ
  6. 次のスケジュールされたアクション設定を入力します。

    • [名前] – 最大 255 文字の英数字で一意の名前を指定し、スペースは含めないでください。

    • Instances – 最小および最大インスタンス数を選択して、Auto Scaling グループを適用します。

    • Desired capacity (オプション) – Auto Scaling グループに必要な容量の初期値を設定します。スケジュールに基づくアクションが適用されたら、トリガーは設定に基づき、希望する容量を調整します。

    • [出現] – [Recurrent(繰り返し)] を選択して、スケジュールでスケーリングアクションを繰り返します。

    • Start time – ワンタイムアクションの場合は、アクションの実行日時を選択します。繰り返しアクションの場合は、アクションをアクティブ化する日時を選択します。

    • RecurrenceCron 式を使用して、スケジュールに基づくアクションを実行する頻度を指定します。たとえば、30 6 * * 2 では、毎週火曜日の午前 6:30 (UTC 時刻) にアクションが実行されます。

    • End time (オプション) – 繰り返しアクションの場合は、アクションを無効化する日時を選択します。[EndTime] を指定しない場合、アクションは Recurrence 式に基づいて繰り返されます。

      スケジュールに基づくアクションが終了すると、Amazon EC2 Auto Scaling は自動的に以前の設定に戻ります。必要に応じて、Amazon EC2 Auto Scaling が元の設定に戻るように、スケジュールに基づいて 2 つ目のアクションを設定します。

  7. [Add] を選択します。

    このセクションには、追加しようとしているスケジュールされたアクションが表示されます。

     Elastic Beanstalk Auto Scaling のスケジュールに基づくアクションの設定ページに入力
  8. [保存] を選択し、[適用] を選択します。

aws:autoscaling:scheduledaction 名前空間

スケジュールに基づくアクションを多数設定する必要がある場合は、設定ファイルまたは Elastic Beanstalk API を使用して、YAML または JSON ファイルの設定オプションの変更を適用します。これらのメソッドでは、Suspendオプションにアクセスして、スケジュールに基づく繰り返しアクションを一時的に無効にすることができます。

注記

スケジュールに基づくアクション設定オプションをコンソール外で操作する場合は、ISO 8601 時刻形式を使用して UTC 時刻で開始時間および終了時間を指定します。たとえば、2015-04-28T04:07:02Z のように指定します。ISO 8601 時刻形式の詳細については、「日付と時刻形式」を参照してください。日付はすべての予定されているアクションで一意である必要があります。

Elastic Beanstalk には、aws:autoscaling:scheduledaction 名前空間のスケジュールに基づく設定向けに設定オプションが用意されています。resource_name フィールドを使用して、スケジュールに基づくアクションの名前を指定します。

例 scheduled-scale-up-specific-time.config

この設定ファイルでは、2015-12-12T00:00:00Z に 5 インスタンスから 10 インスタンスにスケールアウトするよう Elastic Beanstalk に指示しています。

option_settings: - namespace: aws:autoscaling:scheduledaction resource_name: ScheduledScaleUpSpecificTime option_name: MinSize value: '5' - namespace: aws:autoscaling:scheduledaction resource_name: ScheduledScaleUpSpecificTime option_name: MaxSize value: '10' - namespace: aws:autoscaling:scheduledaction resource_name: ScheduledScaleUpSpecificTime option_name: DesiredCapacity value: '5' - namespace: aws:autoscaling:scheduledaction resource_name: ScheduledScaleUpSpecificTime option_name: StartTime value: '2015-12-12T00:00:00Z'

例 scheduled-scale-up-specific-time.config

EB CLI または設定ファイルで短縮構文を使用するには、リソース名を名前空間に不可します。

option_settings: ScheduledScaleUpSpecificTime.aws:autoscaling:scheduledaction: MinSize: '5' MaxSize: '10' DesiredCapacity: '5' StartTime: '2015-12-12T00:00:00Z'

例 scheduled-scale-down-specific-time.config

この設定ファイルでは、2015-12-12T07:00:00Z にスケールインするよう Elastic Beanstalk に指示しています。

option_settings: ScheduledScaleDownSpecificTime.aws:autoscaling:scheduledaction: MinSize: '1' MaxSize: '1' DesiredCapacity: '1' StartTime: '2015-12-12T07:00:00Z'

例 scheduled-periodic-scale-up.config

この設定ファイルでは、毎日午前 9 時にスケールアウトするよう Elastic Beanstalk に指示しています。このアクションは、2015 年 5 月 14 日に開始し、2016 年 1 月 12 日に終了するようにスケジュールされます。

option_settings: ScheduledPeriodicScaleUp.aws:autoscaling:scheduledaction: MinSize: '5' MaxSize: '10' DesiredCapacity: '5' StartTime: '2015-05-14T07:00:00Z' EndTime: '2016-01-12T07:00:00Z' Recurrence: 0 9 * * *

例 scheduled-weekend-scale-down.config

この設定ファイルでは、毎週金曜日の午後 6 時にスケールインするよう Elastic Beanstalk に指示しています。週末はアプリケーションが大量のトラフィックを受信しないことがわかっている場合は、同様のスケジュールに基づくアクションを作成できます。

option_settings: ScheduledWeekendScaleDown.aws:autoscaling:scheduledaction: MinSize: '1' MaxSize: '4' DesiredCapacity: '1' StartTime: '2015-12-12T07:00:00Z' EndTime: '2016-01-12T07:00:00Z' Recurrence: 0 18 * * 5