Amazon ECS 覚え書き

Amazon ECSとは

Amazon Elastic Container Service (Amazon ECS)

Docker コンテナをサポートする拡張性とパフォーマンスに優れたコンテナオーケストレーションサービスです

  • (最近乱立しがちでK8Sに統合が向かうのかどうなのかわからない)コンテナオーケストレーションサービスの一つ。
  • API/web画面から、EC2クラスタ上にDockerコンテナを起動/管理できる
  • AWS Fargate を使えば、インフラ(EC2)のことを考えずにコンテナを管理できる

用語

Task

1つ以上の協調して動作するコンテナ群

  • Dockerでは、1コンテナ1サービスを推奨しているので、何かを実現しようとすると大体複数のコンテナが必要になってくる

Task Definition

Taskの設定

  • docker-composeとかと近い概念

Service

  • タスクで必要なコンテナを指定した数だけ起動/維持してくれる
  • なんらかの理由でタスクが死んでも、サービスは必要数のタスクを維持する
  • あとELBとの連携とか

Cluster

Taskを実行するEC2の集合

  • 各EC2インスタンスには、ecs-agent なるサービスが起動していて、ECSとやり取りしている

参考

Amazon EC2 Container Service(ECS)のデータモデルについて整理した | Developers.IO