ECS - moriwakihikari/SAA GitHub Wiki
クラスター
- コンテナが動作するVPCやサブネットなどを設定します。
タスク
- ECSで管理するコンテナの実行単位
- タスク内のコンテナは、実行するコンテナイメージ、CPUやメモリのスペック、タスクロールなどを定義した「タスク定義」に基づいて起動されます
- タスクロールとはコンテナが他のAWSサービスを利用する際に設定するアクセス権限(IAMロール)のことです。 😄
サービス
- クラスター内で必要なタスク数を維持する機能です。
- あるタスクが異常終了して必要なタスク数を下回った場合、サービスが新しいタスクを起動して自動復旧します。
- サービスでは、起動するタスクのタスク定義、必要なタスク数、ELBとの連携などを設定します。
コンテナ起動タイプ
AWS Fargate
- AWS Fargateはコンテナ向けのサーバーレスコンピューティングエンジンです。
- コンテナ実行環境のCPUやメモリのスペック、アクセス権限(IAM)などを設定するだけで、サーバーの環境構築や管理をすることなくコンテナを実行できます。
- Fargateの利用料金は、タスクで指定したCPU/メモリに応じて課金されます。
- 実行したタスクのリソース使用量に対して料金が発生するので、不定期にタスクが実行されるシステムや、常にタスクが実行可能な状態でなければならないシステムなどに向いています。
EC2起動タイプ
- EC2起動タイプはユーザーが管理するEC2インスタンス上でコンテナを実行します。
- コンテナを実行するEC2インスタンス、ネットワーク、IAMなどを設定すると、ECSがAWS CloudFormationのスタックを作成および実行して、構築したコンテナ実行環境をECSに登録します。EC2起動タイプでは通常のインスタンスと同様に、OSやミドルウェアのアップデート、スケーリングなどのサーバー管理をユーザーで実施する必要があります。
- EC2起動タイプの利用料金は、指定したEC2インスタンスタイプに応じて課金されます。インスタンスの起動時間に対して料金が発生するので、インスタンス起動中に多数のタスクが実行されるシステムなどに向いています。
