Fargateを利用したECSの使用方法を確認

Fargateを利用したECSの使用方法を確認します。初回実行ウィザードを通じて、大まかな利用イメージをつかみます。

作成

「コンテナイメージの選択」と「タスク定義」

https://console.aws.amazon.com/ecs/home#/firstRun にアクセスします。

644-aws-fargate-ecs-basic_make_01.png

コンテナの定義では、利用するDockerイメージを設定します。ここでは、sample-appを選択しています。

タスク定義では、 コンテナのCPU、メモリサイズなどを設定します。

サービスを定義

644-aws-fargate-ecs-basic_make_02.png

起動するタスク数などを設定します。Amazon ECSサービスでは、タスクの異常終了が発生すると自動で再起動してくれます。

クラスターの設定

644-aws-fargate-ecs-basic_make_03.png

クラスター名を設定します。

確認画面

644-aws-fargate-ecs-basic_make_04.png

確認画面が表示されます。問題なければ、作成をクリックします。

完了

644-aws-fargate-ecs-basic_make_05.png

各種AWSリソースが作成されました。

作成リソースの確認

CloudFormation

644-aws-fargate-ecs-basic_done_02.png

ネットワーク周りのリソースを生成しています。

CloudWatch

644-aws-fargate-ecs-basic_done_03.png

コンテナのログはここに書き込まれます。

IAM

644-aws-fargate-ecs-basic_done_07.png

作成されたIAMロールです。

ECS

644-aws-fargate-ecs-basic_done_01.png

起動タイプがFARGATEになっています。

ブラウザからアクセス

644-aws-fargate-ecs-basic_done_04.png

タスクをクリックします。

644-aws-fargate-ecs-basic_done_05.png

Public IPを確認します。

644-aws-fargate-ecs-basic_done_06.png

確認したPublic IPでブラウザ上からアクセスできることを確認します。

作成リソースをクリーンアップ

AWS CLI経由で今回作成したリソースをクリーンアップします。
(管理コンソールからもできます。)

サービス停止

aws ecs update-service \
--cluster default \
--service sample-app-service \
--desired-count 0 \
--region ap-northeast-1

--desired-count 0 に更新することで、コンテナが死んだとしても新しいタスクが開始されないようにできます。

サービスを削除

aws ecs delete-service \
--cluster default \
--service sample-app-service \
--region ap-northeast-1

クラスターを削除

aws ecs delete-cluster \
--cluster default \
--region ap-northeast-1

タスク定義の削除

aws ecs deregister-task-definition \
--task-definition first-run-task-definition:1

CloudFormationスタックを削除

aws cloudformation delete-stack --stack-name EC2ContainerService-default

CloudWatchのロググループを削除

aws logs delete-log-group \
--log-group-name /ecs/first-run-task-definition

参考