Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

ECS Managed Instance の紹介・Fargateとの違い

Avatar for kenicazu kenicazu
November 03, 2025
750

ECS Managed Instance の紹介・Fargateとの違い

Gov-JAWS#4 で ECS Managed Instance についてお話させていただきました。
資料の内容は10/31時点に基づいており、今後のアップデート次第では情報が古くなる可能性がございますが必要に応じて利活用いただければ幸いです。

Avatar for kenicazu

kenicazu

November 03, 2025
Tweet

Transcript

  1. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 今月登場した ECS Managed Instances は Fargateと何が違うのか Kenichi Azuma Amazon Web Services Japan G.K. Solutions Architect 1 Gov-JAWS#4
  2. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 2 自己紹介 東 健⼀ (あずま けんいち) アマゾンウェブサービスジャパン パブリックセクター ソリューションアーキテクト • 中央省庁のお客様を中⼼に ガバメントクラウド、医療DXに関するご⽀援 • 社内 Tech コミュニティ(TFC)における コンテナサービスの Japan Lead(ECS Focus)
  3. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. はじめに(1/3) 3 #ベースイメージ FROM alpine:3.19 # 必要なツールをインストール RUN apk add --no-cache \ bash curl jq aws-cli # スクリプトのコピー WORKDIR /app COPY scripts/ /app/scripts/ # スクリプトに実⾏権限を付与 RUN chmod +x /app/scripts/*.sh # シェル実⾏ ENTRYPOINT ["/bin/bash"] CMD ["/app/scripts/main.sh"] # ビルドステージのイメージ FROM maven:3.9-amazoncorretto-17 AS builder # Javaアプリケーションのビルドアセットのコピー WORKDIR /build COPY pom.xml . COPY src ./src # Javaアプリケーションのビルド RUN mvn clean package -DskipTests # 実⾏ステージのイメージ FROM amazoncorretto:17-alpine #ビルドステージのアウトプット(JAR)をコピー WORKDIR /app COPY --from=builder /build/target/*.jar app.jar #アプリケーションの実⾏ EXPOSE 8080 CMD ["java", "-jar", "app.jar"] + main.sh + pom.xml + Java App バッチ処理の 実行 Web アプリ (Java) の実行
  4. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 先ほどのコンテナイメージと Amazon ECS を利⽤することで さまざまなコンテナワークロードの実現が可能 はじめに(2/3) 4 Amazon ECS ・・ ・ Application Load Balancer ECS Service ECS Task ECS Task ECS Task AWS Step Functions ECS Service ECS Task バッチ アプリケーション バックエンド アプリケーション フロントエンド アプリケーション ECS Service Connect
  5. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. • ガバメントクラウドでは(特に中央省庁では)ほとんどのシステムで Amazon ECS を⽤いてコンテナワークロードを実⾏しています。 • そんな Amazon ECS ですが、今年⼤きなアップデートがいくつかあり、 そのうちの⼀つとして今⽇お話しする Managed Instance があります。 • 何も考えずに、タイトルを決めたらAWS Containers Hero の新井さんの素晴らしいブログと タイトルを被せてしまっておりました・・・是⾮今⽇の発表と併せてご参照ください はじめに(3/3) 5
  6. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. ECS Managed Instance 概要・ Fargate との違い 6
  7. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. これまでの Amazon ECS データプレーン 7 ワークロードの要件を満たす インスタンスタイプを選択 キャパシティ予約、リザーブドインス タンス、スポットインスタンスを含む すべての EC2 料⾦モデルを活⽤ Amazon EC2 サーバー管理における 運⽤オーバーヘッドの削減 設計によるワークロードの分離 AWS Fargate ※厳密には ECS Anywhere なども
  8. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. Amazon ECS Managed Instance 8 AWS Fargate ECS Managed Instance Amazon EC2 • Fargate と EC2 のそれぞれのメリットを両⽅享受することが可能な選択肢 • 元々東京リージョンのみ利⽤できていたが、10/27に⼤阪リージョンも利⽤可能に︕ ワークロードの要件を満たす インスタンスタイプを⾃由に選択可能 インスタンス管理(パッチ適⽤等)は AWS側が実施 コンソリデーション等の インスタンスの最適化が可能
  9. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. ECS Managed Instance の 起動 9 • インスタンスの起動には Auto Scaling Groupを 利⽤せずに EC2 CreateFleet API を利⽤ • タスクのサイズに応じて 適切なインスタンスタイプをECS側で選定 • インスタンスタイプに優先度をつけ、 Fleet API を⽤いて 優先度順に起動可能か確認し、インスタンスを起動 "CreateFleetRequest": { "LaunchTemplateConfigs": { "Overrides": [ { "Priority": "0.0", "InstanceType": "m6g.medium", "AvailabilityZone": ”ap-northeast-1a", // ... その他のフィールド }, { "Priority": "1.0", "InstanceType": "m7g.medium", "AvailabilityZone": "ap-northeast-1a", // ... }, { "Priority": "2.0", "InstanceType": "m6gd.medium", "AvailabilityZone": "ap-northeast-1a", // ... },
  10. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. コンソリデーション等によるインスタンスの最適化 10 2xlarge 2xlarge 2xlarge 2xlarge 2xlarge xlarge 2xlarge リソースの利⽤効率が最⼤となるように⾃動でインスタンスを最適化 タスク数︓8 タスク数︓6 タスク数︓6 余剰リソースを検知 インスタンスの 再作成 インスタンス 削除
  11. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. インスタンス最適化の実行例 11 ① インスタンス上のタスクがスケールイン ② ECS側でインスタンスの余剰リソースを検知 2xlargeのインスタンスのリソース使⽤が50パーセントに ③ タスクのドレイン、インスタンスの⾒直し 2xlarge 1台から large 2台に変更
  12. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. ECS Managed Instance の料金 12 • EC2 インスタンスの基本料⾦に加えて、ECS マネージドインスタンス の料⾦が発⽣する • 基本料⾦の部分には、リザーブドインスタンスや Savings Plans を適⽤可能 ⾮ EC2 マネージドインスタンス ECS マネージドインスタンス (オンデマンドインスタンス) ECS マネージドインスタンス (Savings Plans) EC2 インスタンス料⾦ ECS マネージドインスタンス料⾦
  13. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 13 セキュリティパッチの自動適用 (1) • ECS マネージドインスタンスでは、起動後 14 ⽇後 にインスタンスのドレイニングが開始される Ø ECS タスクを退避して、AMI を最新化すること(セキュリティ)が⽬的 • その後、起動後 21⽇後 にインスタンスが削除される time インスタンスの起動 ドレイニング開始 インスタンス削除 14 days 7 days 0 day 14 days 21 days
  14. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 14 セキュリティパッチの自動適用 (2) • EC2 イベントウィンドウを設定している場合、14 ⽇よりも前にドレイニングが開始される • メンテナンスウィンドウなどを設けている場合、そのタイミングでインスタンスの⼊れ替えが可能 time インスタンスの起動 ドレイニング開始 インスタンス削除 13 days 8 days 0 day 14 days 21 days EC2 イベントウィンドウ
  15. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 15 セキュリティパッチの自動適用 (3) • ECS タスクスケールイン保護を組み合わせることが可能 Ø インスタンスのドレイニング時に即時の SIGTERM が発⾏されず、シグナルの発⾏タイミングを制御可能 Ø ただし、起動後 21 ⽇に到達すると強制削除になるため注意が必要 • StopTimeout(SIGTERM の発⾏から SIGKILL を発⾏するまでの猶予期間)は 最⼤ 24 時間 の点にも注意 time インスタンスの起動 ドレイニング開始 (SIGTERM は未発⾏) インスタンス削除 14 days 3 days 0 day 14 days 21 days 4 days スケールイン保護の解除 (SIGTERM を発⾏)
  16. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. ECS Managed Instance と Fargate の違い Fargate ECS Managed Instance タスク配置 インスタンス タイプ イメージ キャッシュ インスタンスの 管理・ メンテナンス • 1インスタンスにつき 1タスク ベストエフォートでマルチAZ分散配置 • CPU/メモリ組み合わせのみ GPUインスタンスは利⽤不可 • 都度インスタンス起動のため キャッシュなし • AWS側が管理、アクセス不可 ECS Exec によりタスクへのアクセスは可能 • 定期的に基盤のメンテナンスのため、 タスクの⼊れ替えが発⽣ • 1インスタンスに1〜複数タスク ベストエフォートでマルチAZ分散配置 • EC2インスタンスタイプを⾃由選択可能 GPUインスタンス利⽤可能 • インスタンス上で、有効なキャッシュが 存在する場合、キャッシュが利⽤される • AWS側が管理、アクセス不可 ECS Exec によりタスクへのアクセスは可能 • インスタンス起動後14-21⽇で インスタンスの⼊れ替え
  17. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. Fargate からは移⾏するべきか︖使い分けは︖ • ドキュメントには ECS Managed Instance の利⽤が推奨と記載されているものの、 Fargate から移⾏することを推奨するメッセージングは現状出ていない ※ EKS では Fargate から Auto Mode への移⾏が推奨とドキュメントに明記されている • Managed Instance は Fargate の運⽤負荷の低さと EC2 のワークロードのカバー範囲の広さのバランスをとった選択肢 • 運⽤負荷は Fargate の⽅が依然として低い • 先ほど記載した Managed Instance のメリットを享受したい場合は移⾏する
  18. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. ECS Managed Instanceの はじめかた 18
  19. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. ECS Managed Instance のはじめかた 19 ECS クラスターの作成(未作成の場合) キャパシティプロバイダーの作成 タスク定義の作成 or 更新 サービス作成・タスク実⾏ ・・・ IAMロールの作成やインスタンスタイプなどの選択 ・・・ Managed Instance を使う様にタスク定義を設定 ・・・ 作成したタスク定義を⽤いて サービスの作成やタスクの実⾏
  20. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 新規 ECS クラスター利⽤時 クラスター作成時に有効化 キャパシティプロバイダーの作成 20 既存 ECS クラスター利⽤時 キャパシティプロバイダーを新規作成
  21. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. • インスタンスプロファイル(EC2が必要なIAM権限)とインフラストラクチャロール(ECSが Managed Instanceの管理に必要なIAM権限)の指定を⾏う • 未作成の場合は必要最低限のロールの作成がコンソールから可能 キャパシティプロバイダーの作成 21
  22. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 必要に応じてインスタンスタイプやネットワーキング等の設定をデフォルトから変更 キャパシティプロバイダーの作成 22
  23. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 参考)そもそも Capacity Provider とは • ECS とコンテナ実⾏基盤 (Auto Scaling グループ / Fargate / Managed Instance) のインターフェイス § 定義した Capacity Provider を ECS クラスターに紐付けて利⽤ § Fargate の Capacity Provider (FARGATE / FARGATE_SPOT) は事前定義済み ECS Cluster EC2 Auto Scaling Group CapacityProvider - Auto Scaling Group ARN - Target Capacity ECS Cluster AWS Fargate AWS Fargate Spot CapacityProvider FARGATE CapacityProvider FARGATE_SPOT
  24. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 参考)そもそも Capacity Provider とは weight • 実⾏するタスクの総数に対する指定した Capacity Provider での相対的な割合 base • その Capacity Provider での最⼩実⾏タスク数 $ aws ecs run-task --cluster xxxxxxxxxx --task-definition xxxxxx:n --count 6 --capacity-provider-strategy capacityProvider=FARGATE,weight=5 capacityProvider=FARGATE_SPOT,weight=1 ECS Cluster CapacityProvider A CapacityProvider B ECS Tasks タスク数: 6 weight: 5 weight: 1 AWS Fargate AWS Fargate Spot
  25. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. タスク定義でマネージドインスタンスにチェックボックスを⼊れるか JSON の設定を修正する タスク定義の作成 25 "compatibilities": [ "EC2", "FARGATE", "MANAGED_INSTANCES" ], (中略) "requiresCompatibilities": [ "MANAGED_INSTANCES" ],
  26. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. コンピューティング設定であらかじめ作成していた、キャパシティプロバイダーを利⽤ サービス作成・タスク実行 26 デフォルトが Managed Instance の場合 特に設定変更は不要 デフォルトが Fargate などの場合は カスタムとして Managed Instance の キャパシティプロバイダーを利⽤
  27. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 注意事項)Fargate と Managed Instanceの 併⽤ 27 Fargate と Managed Instance の Capacity Provider を混在させることはできない ※ Capacity Providerの制約(Fargate + ASG、ASG+Managed Instance も同様に不可) CapacityProvider A CapacityProvider B ECS Tasks weight: 5 weight: 1 AWS Fargate Managed Instance CapacityProvider C CapacityProvider B ECS Tasks weight: 5 weight: 1 EC2 ASG Managed Instance CapacityProvider C CapacityProvider B ECS Tasks weight: 5 weight: 1 Managed Instance Managed Instance NG 設定例 OK 設定例
  28. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 考慮事項 28
  29. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. その他の考慮事項(2025.10.31 時点) 29 以下は現在サポートされていないので、現在ご利⽤中の⽅は注意 • Spot インスタンス • ECS Service Connect • Windows コンテナ • Custom AMI の利⽤
  30. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved 31 まとめ • Fargate の運⽤負荷の低さと EC2 のワークロードのカバー範囲の広さのバランスをとった データプレーンの新しい選択肢、ECS Managed Instances が登場 • 幅広いインスタンスタイプの利⽤やインスタンスの最適化などのメリットを享受可能 • Fargate からの移⾏を推奨するものではない、運⽤負荷だけで⾒た場合は Fargate が優位 • 東京リージョン、⼤阪リージョンで既に利⽤可能のため、是⾮お試しください︕︕ 参考︓公式ブログによる発表はこちら
  31. © 2025, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. Thank you! Kenichi Azuma Amazon Web Services Japan G.K. Solutions Architect 32