Amazon ECS のオートスケールが最大 4.2 倍速く!20 秒刻みの高解像度メトリクス登場!
やっほー、しぃちゃんだよ!今日はコンテナを動かしてるみんなに、とっておきのニュースがあるの。Amazon ECS のオートスケールが、ぐっと素早くなるアップデートだよ!
AWS Blog
なにが発表されたの?
AWS の Blog で、Amazon ECS のサービスオートスケーリング向けに 高解像度メトリクス(high-resolution metrics) が登場したって発表があったよ。
これまでの ECS のメトリクスは 60 秒ごと(標準解像度)だったんだけど、新しく 20 秒ごと の高解像度メトリクスが使えるようになったの。負荷の変化にもっと早く気づいて、スケールアウトを素早く始められるようになるってわけ!
今までどうだったの?
ECS のサービスオートスケーリングは、タスク数を自動で増やしたり減らしたりして、負荷に合わせてくれる便利な仕組み。ターゲット追跡(target tracking)でリアルタイムのメトリクスに反応したり、予測スケーリングやスケジュールスケーリングもできるの。
でも、これまで判断のもとになるメトリクスは 60 秒間隔だったから、急にアクセスが増えたときに「あ、混んできた!」と気づくまでに時間がかかっちゃってたの。トラフィックのスパイクにギリギリで対応する場面だと、この待ち時間がちょっと痛かったんだよね。
これで何が変わるの?
高解像度メトリクスを使うと、ターゲット追跡ポリシーが 60 秒じゃなくて 20 秒間隔 でスケーリングの判断をできるようになるの。だから反応がずっと機敏!
AWS のベンチマークによると、効果はこんな感じ:
- スケールアウトのトリガー時間: 363 秒 → 86 秒(76% 短縮、約 4.2 倍速く)
- スケール&プロビジョニングの合計時間: 386 秒 → 109 秒(72% 短縮、約 3.5 倍速く)
急なトラフィックにもキビキビ追従できるから、レスポンスが遅くなったりエラーが出たりするのを防ぎやすくなるよ。オンラインイベントみたいに読めないスパイクがあるサービスを運用してるみんなにうれしい変化!
深く潜ってみよう
使い方もチェックしておくね。
まず、ECS サービスを作成/更新するときに、Monitoring configuration のセクションで高解像度メトリクスを有効化するの。そのあと Service auto scaling のセクションでターゲット追跡スケーリングポリシーを設定して、新しいメトリクスタイプを選ぶだけ。
選べる高解像度メトリクスはこちら:
ECSServiceAverageCPUUtilizationHighResolution
ECSServiceAverageMemoryUtilizationHighResolution
平均 CPU / メモリ使用率のほか、ターゲットあたりのリクエスト数や、キューの深さみたいなカスタムメトリクスでも使えるよ。
対応してるコンピュートは AWS Fargate・ECS Managed Instances・Amazon EC2 の全部。どのタイプで動かしていても使えるのがうれしいね。
料金についても大事なところ。高解像度メトリクス機能そのものには追加料金はかからないけど、CloudWatch に高解像度でメトリクスを送るぶんの CloudWatch 側の費用は増えるから、そこは頭に入れておいてね。
まとめ
- Amazon ECS のサービスオートスケーリングで 20 秒ごと の高解像度メトリクスが使えるようになったよ(従来は 60 秒)
- AWS のベンチマークでは、スケールアウトのトリガーが 363 秒 → 86 秒(約 4.2 倍速く)に短縮
- Monitoring configuration で有効化して、
ECSServiceAverageCPUUtilizationHighResolutionなどのメトリクスをターゲット追跡ポリシーで選ぶだけ - Fargate・ECS Managed Instances・EC2 のどれでも使える
- 機能自体は追加料金なし。ただし CloudWatch 側のコストは増える
急なトラフィックのスパイクに素早く反応したい、コンテナ運用中のみんなにぴったりのアップデートだよ!