ターゲット追跡ポリシーを使用した スポットフリート のスケーリング
ターゲット追跡スケーリングポリシーでは、メトリクスを選択してターゲット値を設定します。スポットフリート はスケーリングポリシーをトリガーする CloudWatch アラームを作成および管理し、メトリクスとターゲット値に基づいてスケーリング調整値を計算します。スケーリングポリシーは、指定されたターゲット値、またはそれに近い値にメトリクスを維持するため、必要に応じて容量を追加または削除します。ターゲットの追跡スケーリングポリシーは、メトリクスをターゲット値近くに維持することに加えて、負荷パターンの変動によるメトリクスの変動に合わせて調整し、フリートの容量の急速な変動を最小化します。
それぞれが異なるメトリクスを使用していれば、スポットフリート に対して複数のターゲットの追跡スケーリングポリシーを設定できます。フリートは、最大のフリート容量を提供する方針に基づいてスケーリングされます。これにより、複数のシナリオに対応して、アプリケーションワークロードを処理するのに十分な容量が常に確保されます。
アプリケーションの可用性を高めるために、フリートのスケールアウトはメトリクスに比例して可能な限り高速に行われますが、スケールインはより緩やかです。
ターゲット容量が減ったために スポットフリート によってインスタンスが削除される場合、インスタンスは スポットインスタンス の中断通知を受け取ります。
ターゲットの追跡スケーリングポリシー用に スポットフリート が管理する CloudWatch アラームを編集または削除しないでください。ターゲット追跡スケーリングポリシーを削除すると、スポットフリート が自動的にアラームを削除します。
制限
スポットフリート リクエストには、タイプが maintain
のリクエストが必要です。自動スケーリングはタイプ request
のリクエストまたはスポットブロックではサポートされていません。
ターゲットの追跡スケーリングポリシーを設定するには (コンソール)
-
https://console.aws.amazon.com/ec2/
で Amazon EC2 コンソールを開きます。 -
ナビゲーションペインで、[Spot Requests] を選択します。
-
スポットフリート リクエストを選択し、[Auto Scaling] を選択します。
-
自動スケーリングが設定されていない場合は、[Configure] を選択します。
-
スポットフリートの最小容量および最大容量を設定するには、[Scale capacity between] を使用します。自動スケーリングにより、最小容量以下または最大容量以上にスポットフリートがスケールされることはありません。
-
[Policy Name] にこのポリシーの名前を入力します。
-
[Target metric] を選択します。
-
メトリクスの [Target value] を入力します。
-
(オプション) [クールダウン期間] を設定して、デフォルトのクールダウン期間を変更します。
-
(オプション) 現在の構成に基づいてスケールインポリシーの作成を省略するには、[スケールインの無効化] を選択します。別の構成を使用してスケールインポリシーを作成できます。
-
[Save (保存)] を選択します。
AWS CLI を使用して、ターゲットの追跡スケーリングポリシーを設定します。
-
register-scalable-target コマンドを使用して、スケーラブルなターゲットとして スポットフリート リクエストを登録します。
-
put-scaling-policy コマンドを使用してスケーリングポリシーを作成します。