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