Amazon ECSのチュートリアルが新しくなりました
SAの岩永です。この記事はContainer with AWS Advent Calendar 2015の1日目の記事になります。Seattle出張中のためPSTではまだ12月1日ということで。。。
さて、つい先日Amazon ECSのチュートリアル(Getting started)が新しくなりました。これまでよりシンプルになり、より何が起こっているかを手にとって分かる様になったかなと思います。今日はひとまずスクリーンショットを並べてみましたので雰囲気を感じとって頂ければと思います。非常に簡単なので、まだAmazon ECSを触ったことの無い方は、ぜひご自身の手でも動かしてみて下さい!
Getting startedのリンクでお使いのリージョンのイントロページが表示されますので、Get startedのボタンをクリックします。
以下の様な画面になり、Step1-4を進めていきます。Step 1はTask Definitionの設定ですが、デフォルトで入っているhttpdのコンテナのみのまま進めますのでNext stepをクリックします。
Step 2ではServiceを設定します。
Elastic Load Balancingも設定してみたいので、Container name:host portのセレクトボックスでsimple-app:80を選択します。すると、ELB用の追加の設定項目が出てきます。特に変更はないので、そのままNext stepをクリックします。
Step 3ではクラスタの設定をします。既存と被らないクラスタ名、任意のインスタンスタイプ、インスタンス数、(必要であれば)鍵ペアを指定します。その他は特に変更しないので、Next stepをクリックします。
最後のStep 4は今までの設定内容の確認です。問題なければ、Launch instance & run serviceをクリックすると実際の作成が始まります。
作成自体は、AWS CloudFormationで行われます。以下の様なページに遷移するのでその場で進捗が確認できますし、通常のAWS CloudFormationのページでも確認できます。全て完了したら、View serviceをクリックします。
作成されたAmazon ECSクラスタのServiceの画面に遷移します。作成直後だとまだTaskの起動が完了していないので、Running tasksが0のままです。
しばらく時間が経つと、無事Running tasksがDesired tasksと同じになりました。次に、このServiceにアクセスするためにService Nameのリンク(ここではsample-webapp)をクリックします。
Serviceの詳細ページが表示されます。ここに先ほど設定したELBが表示されているので、Load Balancer Nameのリンクをクリックします。
ELBのページに遷移するので、下部のDNS NameでELBのエンドポイントとなるDNS名をメモして、ブラウザでアクセスしてみます。
以下の様に無事Welcomeページが表示されました。Task Definitionはhttpdコンテナだけだったのに何故こんなページが表示されるのでしょう?先ほどのService詳細ページから紐付いているTask Definitionのリンク(ここではconsole-sample-app-static:1)をクリックします。
Task Definitionの詳細ページに遷移します。ここでsimple-appという名前のContainer Definitionを展開してみると、以下のようにCommandで先ほどのHTMLの内容をindex.htmlに出力していることが分かります。
ちなみに、前述のとおりチュートリアルで設定したリソースはAWS CloudFormationで作成されているので、こちらも最近リリースされたCloudFormation Designerで構成を可視化することができます。今回はこの様な構成になっていました。
以上になります。新しいチュートリアルで、Amazon ECSをとりあえず動かしてみるという障壁が少しでも下がって、Amazon ECSのユーザが1人でも増えてくれると嬉しいです。
Container with AWS Advent Calendar 2015はまだまだ日程に空きがありますので、ぜひみなさんも投稿してみてください!
-- SA岩永
コメント