ECS

ECS(Elastic Container Service)は、AWSが提供するマネージド型のコンテナオーケストレーションサービスです。

シンプルなタスク/サービスモデルで構成されており、ALB(Application Load Balancer)、Service Auto Scaling(サービスオートスケーリング)、および Code 系サービス(CodePipeline/CodeBuild/CodeDeploy/CodeCommit) と統合して動作します。

ECSの起動タイプには EC2 と Fargate があり、用途に応じて柔軟に選択できます。コントロールプレーンはAWSがマネージドし、タスクのスケジューリングやサービス管理を自動化します。一方、データプレーンとしては、ユーザーが EC2 インスタンスまたはサーバーレスな Fargate を選択してコンテナを実行します。

ECSの構成は階層的になっており、最上位に サービスがあり、その中で複数の タスクが実行されます。各タスクは タスク定義に基づいて構成され、使用するコンテナイメージ、CPU/メモリ、環境変数、ボリューム設定などが定義されています。サービスはタスクの数や実行状態を管理し、負荷分散やスケーリングを自動的に制御します。

Service Discovery(サービスディスカバリ) を利用することで、マイクロサービス間の名前解決や通信を自動化できます。

Capacity Providers(キャパシティープロバイダー)によって、EC2およびFargateの両方を組み合わせた柔軟なリソース運用が可能です。

Circuit Breaker(サーキットブレーカー)機能を活用すれば、デプロイ時に異常が発生した場合でも自動的にロールバックされ、安全に更新を行うことができます。

App Mesh と連携することで、サービス間通信の可視化やトラフィック制御も容易になります。

重要用語

ユースケース

  • リスト1
  • リスト2
  • リスト3

ベストプラクティス

  • リスト1
  • リスト2
  • リスト3

高可用性・冗長化

  • リスト1
  • リスト2
  • リスト3

セキュリティ

  • リスト1
  • リスト2
  • リスト3

運用・監視

  • リスト1
  • リスト2
  • リスト3

デフォルトのリミット値

リミット事項 上限数
項目1上限1
項目2上限2
項目3上限3
項目4上限4
項目5上限5

AWS CLIのサンプルコード

vpc を作成
vpc を作成
aaaaaaaaaaaaa
bbbbbbbbbbbbb
ccccccccccccc

Terraformのサンプルコード

vpc を作成
bbbbbbbbbbbbbbbbbbbbbbb
ddddddddddddddddddddddd
vpc を作成
xxxxxxxxxxxxxxxxxxxxxxx
yyyyyyyyyyyyyyyyyyyyyy

課金モデル

項目 内容
項目1内容1
項目2内容2
項目3内容3
項目4内容4
項目5内容5

公式ページ

AWSドキュメント