スケジュールされた Auto Scaling アクション - AWS Elastic Beanstalk

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

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

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

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

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

Elastic Beanstalk コンソールで、環境の Auto Scaling グループに対してスケジュールされたアクションを作成できます。

Elastic Beanstalk コンソールでスケジュールされたアクションを設定するには
  1. Elastic Beanstalk コンソールを開き、[Regions] (リージョン) リストで AWS リージョンを選択します。

  2. ナビゲーションペインで、[環境] を選択し、リストから環境の名前を選択します。

    注記

    環境が多数ある場合は、検索バーを使用して環境リストをフィルタリングします。

  3. ナビゲーションペインで、[設定] を選択します。

  4. [キャパシティー] 設定カテゴリで、[編集] を選択します。

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

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

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

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

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

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

    • [開始時刻] – 1 回限りのアクションの場合は、アクションの実行日時を選択します。

      繰り返しアクションの場合は、開始時間はオプションです。指定するときは、アクションが実行される直近の時間を選択します。この時間の後、アクションは繰り返し式に従って繰り返されます。

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

    • 終了時間 (オプション) – 繰り返しアクションの場合はオプションです。指定すると、アクションは繰り返し式に従って繰り返され、この時間の後、再度実行されません。

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

  7. [Add] (追加) を選択します。

  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-long.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-periodic-scale-down.config

この設定ファイルでは、毎日午後 6 時に、いずれの実行中のインスタンスにもスケールインしないよう Elastic Beanstalk に指示します。アプリケーションが営業時間外にほぼアイドル状態であることを知っている場合は、同様のスケジュール済みアクションを作成できます。アプリケーションを営業時間外にダウンさせる場合は、MaxSize0 に変更します。

option_settings: ScheduledPeriodicScaleDown.aws:autoscaling:scheduledaction: MinSize: '0' MaxSize: '1' DesiredCapacity: '0' StartTime: '2015-05-14T07:00:00Z' EndTime: '2016-01-12T07:00:00Z' Recurrence: 0 18 * * *
例 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