Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon...

Amazon ECS & AWS Fargate 運用アーキテクチャ2025 / Amazon ECS and AWS Fargate Ops Architecture 2025

Avatar for iselegant

iselegant

June 25, 2025
Tweet

More Decks by iselegant

Other Decks in Technology

Transcript

  1. Amazon ECS & AWS Fargate 運用アーキテクチャ 2025 Synspective Inc. 新井

    雅也 (@msy78) AWS Summit Japan 2025 Community Stage – Day 1
  2. 11 運用を「設計」として落とし込む u 日々求められるシステムの運用に対して、どれだけ事前に設計に落とせるかが重要 u 想定外を減らす努力 u 設計には通常複数の選択肢が存在する u 非機能の観点はトレードオフの世界

    u 主要な設計の利点・欠点を押さえておき、自分たちの要件と照らし合わせる u 日々のクラウドの進化に並走して、運用側面でもアップデートが必要 u クラウド上でシステムを運用する者としての責務
  3. 13 ロギング設計 メトリクス設計 トレース設計 デバッグ設計 普通にAmazon CloudWatch Logs使えば良くない? 昔Amazon CloudWatch

    Container Insights有効化したけど、他に考慮が必要? AWSでトレース取得するならAWS X-Rayのサイドカー構成でいいのでは? アプリ・NWそれぞれでトラブルが発生したらどうやってデバッグする? ※上記は運用側面で検討すべき項目の一例。CI/CD設計やその他の運用観点は時間の都合上、省略。 本発表で取り上げる運用設計観点と以前のプラクティスに関連した様々な疑問
  4. 18 ログ出力が増えると、Amazon CloudWatch Logsのログ取り込みコストが辛くなる ロギング設計 Amazon CloudWatch Logsのログ取り込み量削減は、クラウド破産防止の重要ポイント • データ取り込み料金:

    USD 0.76/GB (アジアパシフィック/東京) • 例) 一日のログ出力量が50GB → 1ヶ月で1140USD ※アプリのログ出力設定ミスやログバースト出力で高額請求されがち
  5. 20 ちょっとまって!FireLens用イメージ(aws-for-fluent-bit)の意外な盲点 u Fluent Bitの最新バージョンはv4.0.3 u aws-for-fluent-bit の最新イメージで内部利用されているFluent Bitはv1.9.10 u

    v1.9.10は2022-12-05にEOL済み、v2以降の以下恩恵は現状受けられない u Prometheusフォーマットのメトリクス提供 (v2) u OpenTelemetryプロトコルによるテレメトリの送受信 (v2) u メモリリーク等のバグ修正 (v2) u YAMLによるコンフィグ定義 (v3.2) u セキュリティ関連の改善(TLSバージョンの指定) (v4) ロギング設計
  6. 22 ごく最近(2025年6月)にfluent-bit v4.0対応がコンテナロードマップに追加 ※containers-roadmap: https://github.com/orgs/aws/projects/244/views/1 • 2025年中のv4.0.0アップグレード を目指しているとのこと (by AWS)

    • 喫緊で最新バージョンの利用 ニーズがなければ、待つのもあり • アップストリームは毎年バージョン アップされるが、継続追いつきがさ れていくのか現時点で不明 ※実は私もAWS HeroのSlackチャンネルで 直接コンテナチームに要望を伝達... ロギング設計
  7. 26 Amazon CloudWatch Container Insights with enhanced observability(o11y)の登場 u 2024-12-01にAmazon

    ECSのコンテナワークロードに対応 u 一部のメトリクスがコンテナレベルまで取得可能 メトリクス設計
  8. 28 メトリクス設計 Amazon CloudWatch Container Insights with enhanced o11yのメトリクス Amazon

    CloudWatch Container Insightsのタイプにおける具体的なメトリクスの違い
  9. 31 昔Amazon CloudWatch Container Insights有効化したけど、 他に考慮が必要? メトリクス設計まとめ ・2024年12月にAmazon CloudWatch Container

    Insights with enhanced o11yがECSに追加 ・Amazon ECSタスク・コンテナレベルでのメトリクスが強化 ・ Container Insights自体がコスト割高なので、環境間でバランスを考慮 メトリクス設計
  10. 35 AWS Distro for OpenTelemetry (ADOT)の登場と利用の推奨 u AWS Distro for

    OpenTelemetryにより、OpenTelemetry準拠で計装が可能 u サードパーティやX-Ray含む、複数にテレメトリを送信可能 u X-Ray SDKと比較して、ADOTはサポートしているランタイムが多い(Swift, Rust, PHP…) トレース設計
  11. 60 AIアプリ・LLM・MCPサーバーを活用したAWS環境デバッグの流れ 以下の環境を想定 u AWSはIaC (Infrastructure as Code) に従ってTerraformで構築・管理 u

    LLMはClaude 4 Sonnetを利用 u AIアプリ(コードエディタ)としてCursorを利用 (Claude CodeやAmazon Qでも動作) u MCPサーバーとして、以下を利用 u Amazon ECS MCP Server u Amazon Documentation MCP Server u Terraform MCP Server デバッグ設計 (生成AI編)
  12. 68 デバッグケースの結果 (問題の特定) デバッグ結果 u 調査の仮定で Amazon ECS MCPツールが利用 u

    セキュリティグループの許可設定で ポート番号の不一致があることを特定 実際のCursorにおける出力結果 発生した問題 Amazon ECS上のフロントエンドAppから バックエンドAppに接続できない Amazon ECS MCP Serverで用意されている トラブルシューティング用ツールを利用 デバッグ設計 (生成AI編)
  13. 70 デバッグケースの結果 (問題の修正) デバッグ結果 u バックエンドAppに適用されているセ キュリティグループのTerraform定義を 特定 u 修正用Commitを作成

    発生した問題 Amazon ECS上のフロントエンドAppから バックエンドAppに接続できない 実際のCursorにおける出力結果 問題特定から修正まで約90秒で完了 デバッグ設計 (生成AI編)
  14. 71 AWSデバッグ運用時におけるAmazon ECS MCP Server利用の注意点(1/2) u現時点では開発中段階であり、開発・テスト用途での利用を想定 u プロダクション環境での利用は非推奨 u機密情報の結果出力を拒否するフラグがある u

    有効にするとトラブルシューティング系のツール利用が大きく制限される u デバッグ運用活用のため、設定を有効にしつつ、開発用途の利用に限定 { "status": "error", "error": "Action fetch_network_configuration is not allowed without ALLOW_SENSITIVE_DATA=true in your environment due to potential exposure of sensitive information." } デバッグ設計 (生成AI編)
  15. 77 ロギング設計 メトリクス設計 トレース設計 デバッグ設計 普通にAmazon CloudWatch Logs使えば良くない? 昔Amazon CloudWatch

    Container Insights有効化したけど、他に考慮が必要? AWSでトレース取得するならAWS X-Rayのサイドカー構成でいいのでは? アプリ・NWそれぞれでトラブルが発生したらどうやってデバッグする? 運用設計観点における最新アーキテクチャと考慮ポイント (Before) まとめ