ひとことで言うと
「スケーリングプラン」という機能名を持つ製品で、タグや CloudFormation スタック単位で複数リソースをまとめてスケーリング設定できます。対応リソースは Aurora・Amazon EC2 Auto Scaling・ECS・DynamoDB・Spot Fleet の5種類だけで、SageMaker も Bedrock も含まれません。GenAI 推論のオートスケールが必要な場面(SageMaker エンドポイント)では、この製品ではなく Application Auto Scaling(別の、より低レベルの API)を直接使います。
要するに、複数の家電をまとめて操作できる万能リモコンです。ただし対応機種リストに載っていない機器(SageMaker エンドポイント)は、そのリモコンでは操作できません。個別リモコン(Application Auto Scaling の API)を使うしかない、という状況です。
なぜ生まれたか
| 課題 | AWS Auto Scaling(スケーリングプラン)側の設計 |
|---|---|
| 複数種類のリソースを個別にスケーリング設定するのが面倒 | タグ・CloudFormation スタック単位でまとめて発見・設定 |
| 単純な閾値だけでなく将来の負荷も見込んで前もってスケールしたい | 予測スケーリング(過去14日分から今後2日分を予測) |
| 可用性重視かコスト重視かを毎回細かく決めたくない | 40%(可用性)/ 50%(バランス)/ 70%(コスト)のスケーリング戦略プリセット |
この製品が生まれた背景に GenAI 推論のスケーリング課題は入っていません。 対応リソースの5種類(Aurora・EC2 Auto Scaling・ECS・DynamoDB・Spot Fleet)は GenAI 登場以前からある汎用ワークロードで、SageMaker のような推論エンドポイントは後から別の仕組み(Application Auto Scaling への register-scalable-target 呼び出し)でカバーされています。
何に使うか
| 用途 | 使い方 | 関連ドメイン |
|---|---|---|
| GenAI パイプラインの周辺インフラ(ECS 上の推論プロキシ、DynamoDB の会話履歴テーブル等)をまとめてスケール | タグベースでリソースを発見し、スケーリングプランを作成 | D4 |
| SageMaker AI エンドポイント(fine-tuned モデルのホスティング)のオートスケール | AWS Auto Scaling ではなく Application Auto Scaling に register-scalable-target(サービス名前空間 sagemaker)でスケーラブルターゲット登録 → ターゲット追跡スケーリングポリシーを付与 | D1, D4 |
| Bedrock 自体の呼び出しキャパシティ管理 | どちらも使わない。 Bedrock はサーバーレスで、オンデマンドはリクエストごとに課金されるだけ。固定キャパシティが要るならプロビジョンドスループットを購入する(オートスケール対象ではない) | D1, D4 |
試験でどう問われるか
| 問われ方 | 正解に寄る条件 | 引っかけ |
|---|---|---|
| 「SageMaker AI エンドポイントのインスタンス数を負荷に応じて自動調整したい」 | Application Auto Scaling(register-scalable-target でスケーラブルターゲットを登録し、ターゲット追跡ポリシーを付ける) | 「オートスケール」の一般名詞から短絡して AWS Auto Scaling(スケーリングプラン) を選ぶ(対応リソースに SageMaker は無い) |
| 「Bedrock のオンデマンド呼び出しが急増したとき、インスタンスを自動追加したい」 | どちらも不要。 Bedrock はサーバーレスでインフラのプロビジョニング自体が無い | Auto Scaling 系サービスのどれかを選んでしまう(選択肢に「Bedrock はスケーリング設定不要」が無い場合は誤答を誘導される設計に注意) |
| 「複数の GenAI 周辺リソース(ECS タスク・DynamoDB テーブル)をまとめて、可用性重視でスケーリングしたい」 | 複数リソース種別の一括管理 → **AWS Auto Scaling(スケーリングプラン)**が対応(ECS・DynamoDB は対応リソースに含まれる) | Application Auto Scaling で1つずつ個別設定しようとする(できなくはないが、まとめて管理したいという要件には合わない) |
| 「予測スケーリングで急な負荷増に備えたい(EC2 上でホストする自前推論サーバ)」 | 予測スケーリング自体は使えるが、公式はスケーリングプラン経由ではなく EC2 Auto Scaling / Application Auto Scaling に直接ポリシーを設定することを推奨(機能が豊富) | スケーリングプラン一本で最新機能まで揃うと考える |
「AWS Auto Scaling」という名前に釣られないこと。この名前はサービスの総称のように聞こえますが、実体は「スケーリングプラン」という特定機能を指す製品名で、対応リソースは5種類に限定されます。GenAI 推論エンドポイント(SageMaker)のスケーリングを問うシナリオでこの名前が選択肢にあっても、正解は多くの場合 Application Auto Scaling です。
実務でどう使うか
- SageMaker のオートスケールは AWS CLI/SDK で
application-autoscalingサービスを直接呼びます。register-scalable-target→put-scaling-policy(ターゲット追跡)が基本の流れで、AWS Auto Scaling コンソールからは設定できません - 予測スケーリングだけが目的なら、スケーリングプランは非推奨です。 公式ドキュメントも「予測スケーリングだけならスケーリングプラン経由ではなく EC2 Auto Scaling / Application Auto Scaling に直接ポリシーを設定することを強く推奨する」と明記しています(メトリクス集計のカスタマイズやブルーグリーンデプロイ間の履歴保持など、直接設定のほうが機能が豊富)
- 予測スケーリングは CloudWatch の
GetMetricData呼び出しに課金が発生します。 スケーリングプラン経由ではなく EC2 Auto Scaling のポリシーとして直接設定すれば、このGetMetricData呼び出し分の課金は発生しません - SageMaker エンドポイントは0インスタンスまでスケールインできます。 常時起動が不要な検証環境・低頻度呼び出しのワークロードでコストを抑えられますが、スケールアウト時にコールドスタートの遅延が発生する点は考慮が要ります
コンソールで「Auto Scaling」を検索すると複数の製品が出てきます。「AWS Auto Scaling」(スケーリングプラン)と「Application Auto Scaling」は名前が紛らわしいですが別サービスです。SageMaker エンドポイントの設定作業をするなら、後者の CLI コマンド(aws application-autoscaling ...)を使うことになります。
取り違えやすいもの
| 迷う相手 | 切り分けの一言 |
|---|---|
| Application Auto Scaling | AWS Auto Scaling(スケーリングプラン)はタグ・スタック単位のまとめて管理が売り。Application Auto Scaling は個別リソースへの低レベルAPIで、SageMaker・ECS・DynamoDB 等がこちらの直接対象。SageMaker のスケーリングは常に後者 |
| Amazon EC2 Auto Scaling | EC2 インスタンス集合(Auto Scaling グループ)そのものの機能。スケーリングプランはこの上に乗る管理レイヤーの1つに過ぎない |
| Bedrock プロビジョンドスループット | 固定キャパシティを購入する仕組みで、負荷に応じた自動増減(オートスケール)はしない。「Bedrock で急増に自動対応したい」という要件に Auto Scaling 系サービスを充てるのは的外れで、正解はモデルカスケードや動的モデルルーティングのような別の設計パターンになることが多い |
想起チェック
Q1. SageMaker AI エンドポイントのインスタンス数を自動調整したい。使うのは AWS Auto Scaling(スケーリングプラン)でよい?
よくありません。 AWS Auto Scaling(スケーリングプラン)の対応リソースは Aurora・EC2 Auto Scaling・ECS・DynamoDB・Spot Fleet の5種類で、SageMaker は含まれません。SageMaker エンドポイントのオートスケールは Application Auto Scaling に register-scalable-target で登録して設定します。
Q2. Bedrock のオンデマンド呼び出しが急増したとき、Auto Scaling 系サービスで自動的にキャパシティを増やす設定が必要?
不要です。 Bedrock のオンデマンド呼び出しはサーバーレスで、ユーザー側がプロビジョニングするインフラがありません。固定キャパシティが要る場合はプロビジョンドスループットを購入しますが、これも負荷に応じた自動増減の対象ではありません。
Q3. 予測スケーリングだけを使いたい場合、スケーリングプランを使うのが推奨される?
推奨されません。 公式ドキュメントは、予測スケーリングのみが目的ならスケーリングプラン経由ではなく、Amazon EC2 Auto Scaling または Application Auto Scaling に直接ポリシーを設定することを推奨しています。カスタムメトリクス集計やブルーグリーンデプロイ間の履歴保持など、機能面で直接設定のほうが優れます。