AWS Elastic Beanstalk
開発者ガイド

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

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

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

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

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

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

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

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

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

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

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

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

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

  5. [Auto Scaling グループ] セクションで、次のように設定します。

    • [環境タイプ] – [負荷分散] を選択します。

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

    • [最大インスタンス数] – グループに一度に含まれる EC2 インスタンスの最大数。

      注記

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

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

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

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

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

    
            Elastic Beanstalk Auto Scaling 設定ウィンドウ
  6. [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'