Amazon Elastic Container Service

コンテナを実行するための極めて安全で、信頼性と拡張性が高い方法

Amazon Elastic Container Service (Amazon ECS) は、完全マネージド型のコンテナオーケストレーションサービスです。Duolingo、Samsung、GE、Cook Pad などのお客様が ECS を使用して、セキュリティ、信頼性、スケーラビリティを獲得するために最も機密性が高くミッションクリティカルなアプリケーションを実行しています。

ECS がコンテナを実行するのに最適な選択肢である理由をいくつかご紹介しましょう。まず、コンテナ用サーバーレスコンピューティングである AWS Fargate を使用して、ECS クラスタを実行することを選択できます。Fargate ではサーバーのプロビジョンと管理が不要で、アプリケーションごとにリソースを指定してその分のみ料金を支払うことができるだけでなく、設計段階からのアプリケーション分離によりセキュリティを強化します。2 つ目に、ECS は Amazon 内で広く使用されており、また Amazon SageMaker、AWS Batch、Amazon Lex、Amazon.com の推奨エンジンなどのサービスを提供しているため、セキュリティ、信頼性、可用性に関して ECS を広範囲でテストしています。

加えて、ECS は主要な Amazon のサービスの基本的柱であるという理由から、Amazon Route 53、Secrets Manager、AWS Identity and Access Management (IAM)、Amazon CloudWatch などの他のサービスとネイティブに統合しており、このため使い慣れた環境でコンテナをデプロイかつスケーリングできます。ECS を他の AWS のサービスと迅速に統合させ、ECS に新しい機能を提供することも可能です。たとえば ECS を使用すると、アプリケーションで Amazon EC2 と AWS Fargate を組み合わせて、スポットやオンデマンドの料金設定オプションを柔軟に適用できます。さらに、ECS をサービスメッシュである AWS App Mesh と統合させることで、アプリケーションに豊富な視認性、トラフィックコントロール、セキュリティ機能も利用できるようになります。ECS は発売以来急速に成長しており、現在 EC2 がインスタンスを起動するよりも 5 倍多くのコンテナを 1 時間ごとに起動しています。

利点

サーバーレスのオプション

ECS は Fargate をサポートしているため、コンテナにサーバーレスコンピューティングを提供できます。Fargate ではサーバーのプロビジョンと管理が不要で、アプリケーションごとにリソースを指定してその分のみ料金を支払うことができるだけでなく、設計段階からのアプリケーション分離によりセキュリティを強化します。

Capacity Providers でアプリケーション第一に

ECS Capacity Providers で、インフラストラクチャではなくアプリケーションの構築と管理に集中できるようになります。Capacity Providers を使用すれば、アプリケーションの要求によって割り当てられるコンピューティング能力が決まるため、EC2 とFargate を組み合わせたスポットとオンデマンドの料金設定オプションをアプリケーションに柔軟に適用できます。

スケールに応じたパフォーマンス

Amazon のいくつかの主要サービスを強化してきた ECS は、長年にわたりスケーラビリティの高いサービスを運用してきた経験から培った技術で構築されています。ECS で、複雑になることなく、数千個のコンテナを迅速に起動できます。

安全性

ECS ではお客様独自の Amazon VPC でコンテナを起動するため、お客様の VPC セキュリティグループおよびネットワーク ACL が使用可能です。他のお客様とコンピューティングリソースを共有することはありません。IAM を使用して、各コンテナに対するアクセス権限をきめ細かく割り当て、各サービスへのアクセスや、コンテナがアクセスできるリソースを制限することもできます。この高い隔離性により、ECS を使用して極めて安全なアプリケーションを作成できます。

信頼性

ECS は 22 のリージョンで 69 のアベイラビリティーゾーン (AZ) を備えた最高のグローバルインフラストラクチャで実行されます。AWS は 2 番目に大きいクラウドプロバイダーよりも 2 倍以上のアベイラビリティーゾーンを提供しています (22 vs.8)。ECS は AWS Compute SLA がサポートしているため、ECS の月間稼働率が少なくとも 99.99% であることが保証されます。

コストのために最適化

ECS で Fargate スポットタスクまたは EC2 スポットインスタンスを使用すれば、ステートレスかつフォールトトレラントなアプリケーションを実行するためのオンデマンド料金と比較して、最大で 90% の割引を実現できます。Saving Plan を使用すると、永続的なワークロードに対して最大 50% の割引となります。スポットインスタンスをオンデマンドインスタンスやリザーブドインスタンスと組み合わせることで、ECS クラスターの大規模な実行を簡単に行うことが可能となります。

Amazon ECS のしくみ

product-page-diagram_ECS_1

ユースケース

ハイブリッドデプロイ

Outposts で ECS を使用すれば、オンプレミスシステムへの特別に低いレイテンシーを必要とするコンテナ化したアプリケーションを実行できます。AWS Outposts は、AWS のインフラストラクチャ、AWS のサービス、API、およびツールを、実質的にすべての接続サイトに拡張する完全マネージド型サービスです。Outposts で ECS を使用すれば、クラウドでコンテナを管理するように簡単にオンプレミスのコンテナを管理できます。

Machine Learning

AWS Deep Learning Containers を使って、TensorFlow、PyTorch、ECS 上の MXNet のモデルをトレーニングし提供できます。Amazon Elastic Inference (EI) で ECS の深層学習推論ワークロードを加速することもできます。

バッチ処理

AWS Batch を使って、ECS のシーケンシャルまたは並行バッチのワークロードを実行できます。AWS Batch では、送信したバッチジョブのボリュームと特定のリソース要件に基づいて、最適な量と種類のコンピューティングリソースを動的にプロビジョニングすることで、数十万単位のバッチコンピューティングジョブを簡単かつ効率的に実行できます。

ウェブアプリケーション

複数のアベイラビリティーゾーンにわたって可用性の高い設定で、自動的にスケールアップおよびダウンするウェブアプリケーションを構築できます。ECS 上で実行することにより、ウェブアプリケーションは AWS の高いパフォーマンス、規模、信頼性、可用性の利点を活用することができます。さらに、ウェブアプリケーションの負荷分散のための Application Load Balancer やネットワーク用の VPC など、AWS のネットワーキングとセキュリティサービスとすぐに統合できます。

最新情報

2019 年 12 月 3 日
Amazon ECS Capacity Providers が利用可能に

Amazon Elastic Container Service (ECS) Capacity Providers がご利用いただけるようになりました。Capacity Providers は、コンテナのコンピューティング能力を管理する新しい方法です。これで、容量の使用方法に関する要件をアプリケーションで定義できるようになります。

詳細はこちら »

2019 年 12 月 3 日
Amazon ECS Cluster Auto Scaling が利用可能に

Amazon Elastic Container Service (ECS) Cluster Auto Scaling がご利用いただけるようになりました。ECS Cluster Auto Scaling を使用すれば、EC2 上で実行中の ECS クラスターが必要に応じて自動的にスケーリングし、クラスター内のすべてのタスクとサービスのリソース需要 (ゼロとの間のスケーリングも含む) を満たします。

詳細はこちら »

2019 年 12 月 3 日
Amazon ECS、Amazon EKS、AWS App Mesh で AWS Outposts のサポートを開始

Amazon ECS、Amazon EKS、AWS App Mesh が AWS Outposts をサポートするようになりました。AWS Outposts は、AWS インフラストラクチャとツールを事実上すべてのデータセンター、コロケーションスペース、またはオンプレミス施設に拡張する完全マネージド型サービスで、安定したハイブリッドエクスペリエンスを実現します。

詳細はこちら »

2019 年 11 月 19 日
Amazon CloudWatch Container Insights で ECS コンテナインスタンスのモニタリングが利用可能に

Amazon Elastic Container Service (Amazon ECS) のコンテナインスタンスに影響するパフォーマンスをモニタリング、分離、診断できるようになりました。

詳細はこちら »

すべての発表を見る »

ブログ投稿と記事

AWS ECS Cluster Auto Scaling が一般でご利用可能に

本日、AWS ECS Cluster Auto Scaling を開始しました。この新しい機能により、クラスターのスケールアウトの速度と信頼性が向上し、クラスターで維持する予備容量を制御でき、さらにクラスターのスケールインでインスタンスの終了を自動的に管理できるようになりました。この結果、クラスターのスケーリングエクスペリエンスが向上しました。

続きを読む »

ECS でマイクロサービスをデプロイする

Amazon ECS を使用することにより、モノリスなアプリケーションを、コンテナを使ったマイクロサービスアーキテクチャに分割するのがいかに簡単になるか、確認してください。

続きを読む »

コンテナの CICD パイプラインをセットアップする

コンテナ化したサービスを手動で構築およびデプロイするのは、時間がかかるうえに、エラーが発生しやすいという問題があります。AWS CodePipline を使えば、Amazon ECS へのデプロイを自動化できます。

続きを読む »

構築を始めましょう。
Amazon ECS の開始方法
ご不明な点がおありですか?
お問い合わせ