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

AWS Elastic Beanstalk 環境の Auto Scaling グループ

Elastic Beanstalk には、Amazon EC2 インスタンスを管理する Auto Scaling グループが含まれます。単一インスタンス環境では、Auto Scaling グループに対して常に1 つのインスタンスが実行されます。負荷分散される環境では、実行する範囲のグループを設定すると、Auto Scaling は、負荷に基づき、必要に応じてインスタンスを追加または削除します。

また、Auto Scaling グループでは、環境のインスタンスの起動設定が管理されます。起動設定を変更することで、インスタンスタイプ、キーペア、Amazon Elastic Block Store ストレージ、インスタンス起動時にのみ設定できるその他の設定を変更することができます。

Auto Scaling グループでは、2 つの Amazon CloudWatch アラームを使用して、スケーリング操作をトリガーしています。各インスタンスの 5 分間の平均アウトバウンドネットワークトラフィックが 6 MiB 以上または 2 MiB 以下の場合は、デフォルトのトリガーがスケーリングされます。Auto Scaling を効率的に使用するには、アプリケーション、インスタンスタイプ、サービス要件に合ったトリガーを構成します。レイテンシー、ディスク I/O、CPU 使用率、リクエスト数などの複数の統計に基づいて、スケールすることができます。

ピークトラフィックが予測される期間に、環境での Amazon EC2 インスタンスの使用を最適化する場合は、Auto Scaling グループを設定し、スケジュールに基づいてインスタンス数を変更します。毎日または週 1 回繰り返すグループの設定への変更、またはワンタイムへの変更をスケジュールして、多量のトラフィックをサイトへ誘導するマーケティングイベント用に準備することができます。

Auto Scaling は、起動した各 Amazon EC2 インスタンスの状態をモニタリングします。インスタンスが予期せず終了した場合、Auto Scaling は終了を検出し、代わりのインスタンスを起動します。グループを設定して、ロードバランサーのヘルスチェックメカニズムを使用する方法については、「Auto Scaling ヘルスチェックの設定」を参照してください。

環境の Auto Scaling グループの設定

Auto Scaling の動作は、環境マネジメントコンソールで環境の [Configuration] ページの [Scaling] を編集することで設定することができます。

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

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

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

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

  4. [Scaling] を選択します。

  5. [Auto Scaling] セクションを展開します。

     [Elastic Beanstalk Auto Scaling Configuration] ウィンドウ
  6. 以下を設定します。

    Auto Scaling グループの設定

    • Minimum instance count – グループに随時含まれる EC2 インスタンスの最小数。グループは最小数から開始し、スケールアップのトリガー条件が満たされるとインスタンスが追加されます。

    • Maximum instance count – グループに随時含まれる EC2 インスタンスの最大数。

      注記

      ローリング更新を使用する場合、ローリング更新の最小インスタンス数が [Minimum instances in service] の設定よりも多いことを確認します。

    • Availability Zones – アベイラビリティーゾーンの数を選択し、環境のインスタンスを分散させます。デフォルトでは、Auto Scaling グループは、使用可能なゾーン間で均等にインスタンスを起動します。少ないゾーンにインスタンスを集中させるには、使用するゾーンの数を選択します。実稼働環境では、2 つ以上のゾーンを使用して、一方のアベイラビリティーゾーンが使用できなくなってもアプリケーションが利用できるようにします。

    • Custom Availability Zones (オプション) – 使用するアベイラビリティーゾーンを選択します。インスタンスを特定のゾーンのリソースに接続する必要がある場合、またはゾーン固有の「リザーブドインスタンス」を購入済みの場合は、この設定を使用します。同時にゾーンの数を設定する場合は、多数のカスタムゾーンを選択する必要があります。

      カスタム VPC で環境を起動する場合は、このオプションを設定できません。カスタム VPC では、環境に割り当てるサブネットのアベイラビリティーゾーンを選択します。

    • Scaling cooldown (seconds) – スケーリング後、トリガーの評価を継続する前に、インスタンスが起動または停止するまでの時間。詳細については、「Auto Scaling クールダウン」を参照してください。

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

aws:autoscaling:asg 名前空間

Elastic Beanstalk には、aws:autoscaling:asg 名前空間の Auto Scaling 設定向けに設定オプションが用意されています。

option_settings:
  aws:autoscaling:asg:
    Availability Zones: Any
    Cooldown: '720'
    Custom Availability Zones: 'us-west-2a,us-west-2b'
    MaxSize: '4'
    MinSize: '2'