#はじめに
ECSの動きがドキュメントで読んだだけではわかりにくかったので、動かしながら試して行こうと思います。
ECSってなんだかコンテナだし難しそう!って思ってたのですが、サンプルは「次へ」押していくだけで完成します。
動かしたほうが理解しやすいので、まだ触ったことない方はお薦めいたします。
htpd
コンテナが実際に動いてブラウザで画面が見えるところまで確認していきます。
所要時間:15~20分です。
手順
- まずは、「今すぐ始める」を選びました。
コンテナとタスク
コンテナの定義
- まずは「コンテナの定義」です。図の一番内側です。
- 使用する
docker image
を決めます。 - ようく見ると、
httpd:2.4
のイメージを利用し、0.5GBのメモリ予約、0.25のvCPU(1/4コア)予約されていることがわかります。 - そのまま「sample-app」を使うことにします。
タスク定義
- 次は「タスク定義」です。図ではコンテナの1つ外を囲っています。
-
first-run-task-definition
という定義名はVPC内で動作し、ECSの実行ロールが付与され、fargate
の実行タイプのが選択されています。 - タスクサイズは1つのタスクレベルの設定値で割り当てられているタスクメモリとCPUが請求対象になってきます。
- Lambdaと違い、メモリとCPUのパワーは別に設定できるようになっています。
- 今回はそのまま設定値を利用することにします。
サービス
サービスを定義する
- タスク定義されたものにサービスを関連づけましょう
- 同時実行する必要数のインスタンスを維持できます。
- ALBとの連動ができます。APIのコンテナなんかはALBと連動させるのでしょうか?
クラスター
クラスターを定義する
- いよいよ最後に近づいてきました。
- クラスターを設定します。
- 今回は、クラスター名を設定するだけです。
作成
- 10分ほど待てば完成します。実際にはそんなに待ちません。
動かしてみる
- クラスター
default
ができていると思います。
- タスクから実行中であることが確認できたでしょうか?
- ENIが設定されていることが確認できました。
- 割り当てられているIPアドレスを確認し、アクセスしてみましょう。
-
httpd
イメージのコンテナにアクセスすることができました。Congratulations!
さいごに
- サンプルだったため、本来考えなければならない箇所を大幅に省略しています。
- ここから、実際に作るとしたら何が足りないのか1つずつ埋めていけば理解が深まっていくと思います。