Amazon ECS を使ってみたので、ここにメモします。
Amazon ECS とは
Amazon ECS は、コンテナ化されたアプリケーションのデプロイ、管理、スケーリングを容易にするフルマネージドコンテナオーケストレーションサービスです。
設定の流れ
- ECR 作成
- タスク定義作成
- タスク実行ロール作成 & 編集
- クラスター作成
ECR 作成
タスク定義作成
「Amazon Elastic Container Service」> 「タスク定義」に移動します。 「新しいタスク定義の作成」ボタンをクリックします。
設定例は以下のとおりです。
項目 | 設定(例) | 備考 |
タスク定義ファミリー | sample-ecs-dev | |
起動タイプ | AWS Fargate | サーバーレスで従量制料金のコンピューティングエンジン |
オペレーティングシステム | Linux/X86_64 | x86アーキテクチャを64bitに拡張 |
ネットワークモード | awsvpc | クラウド上で仮想ネットワークを構築 |
タスクサイズ(CPU) | 1vCPU | |
タスクサイズ(メモリ) | 3 GB | |
タスクロール | ecsTaskExecutionRole | |
タスク実行ロール | ecsTaskExecutionRole | |
ログ収集の使用 | Amazon CloudWatch | |
awslogs-group | /aws/ecs/sample-ecs-dev | CloudWatch 用 |
awslogs-region | ap-northeast-1 | |
ストレージ-オプション | 量(21 GiB) |
タスク実行ロール作成 & 編集
ecsTaskExecutionRole 作成
ecsTaskExecutionRole は、マネジメントコンソールで ECS のタスク定義を作成するときに、タスク実行ロールで「新しいロールの作成」を選択すると自動で作成されます。
IAMでポリシー編集
許可ポリシーを追加します。
ロール名 | ポリシー名 | 備考 |
ecsTaskExecutionRole | AmazonECSTaskExecutionRolePolicy | Amazon ECS タスクの実行に必要な他の AWS サービス リソースへのアクセス |
クラスター作成
「Amazon Elastic Container Service」> 「クラスター」に移動します。 「クラスターの作成」ボタンをクリックします。