Amazon CodeDeploy編~5分でわかるCodeDeploy~

Pocket

こんにちは、TKです。

今回はAWSで最近発表された機能の一つCodeDeployについて改めて使い方を説明します。

CodeDeployとは

CodeDeployとはAWSが最近発表した新機能です。
ユーザが作成したプログラムをCodeDeploy用のタグ付けした複数のインスタンスに対して、同時にプログラムをデプロイすることが可能なサービスです。

今まで複数のインスタンスにデータを入れる場合、まず一つのインスタンスにデータを入れた後AMI化して複製したり、
Gitでリポジトリを作成して個別にプログラムをデプロイする必要がありました。

CodeDeployを使用すれば作成したプログラムを一回で指定したインスタンス全てに
プログラムをデプロイすることができます。

CodeDeployを開始する

それでは試しにCodeDeployを実行してみましょう。
今回はサンプルプログラムのWebサーバのインストールとデフォルトページの変更を試してみます。

コンソールサービス一覧からCodeDeployを選択します。
現在東京リージョンではサービスが提供開始されていないため、バージニア北部リージョンを使用します。

次にサンプルを試すか、カスタムで使用するかの選択になりますが、今回は「Sample Deployment」を選択します。
デプロイ1

デプロイするインスタンスの作成

次の項目ではデプロイ対象のインスタンスを作成することができます。
今回はサンプルなのでサンプル用インスタンスを立てる過程をはさみます。

鍵とタグを設定することで、設定を適用されたインスタンスが3台作成されます。
なお、インスタンスの台数は固定で変更する事はできません。
3台も作成されるのを防ぎたい場合この項目をスキップすることが可能です。

また、インスタンスタイプが固定なので他のインスタンスで行いたい場合、
デプロイ用のタグをデプロイしたいインスタンスに紐付けましょう。
デプロイ2

デプロイするアプリケーションの設定

次の項目ではデプロイするアプリケーションに名前をつけます。
デプロイ3
次のページではデプロイするアプリケーションの選択画面ですが
今回はサンプルのため、内容は固定になっています。

デプロイ4

デプロイするインスタンスの設定

次の項目ではデプロイするインスタンスの設定を行います。
タグ名を入力することで対象タグがついているインスタンスに対してデプロイを実行します。
タグを入力するとそのタグがついているインスタンスの数も表示されます。
タグは追加するたび枠が増えるので個別のタグをつけている場合でも複数のタグを指定できます。
デプロイ5

次のページではCodeDeploy用のロールを作成します。
サンプルではここで作成ができます。
既存ロールがある場合、選択することができます。
デプロイ6
次のページではデプロイの方法を選択します。
選べる方法は
・ 一つずつデプロイして、全て入力できた場合、成功
・ 半分ずつデプロイして、半分成功した場合成功
・ 一斉デプロイして、どれか一つでも成功すれば成功
になります。
異なる環境のインスタンスを用意してデプロイできるか検証するといった使い方も可能です。
デプロイ7
デプロイ8

デプロイ実行

内容確認まで終わったらデプロイを実行します。
デプロイ9
デプロイが終わったら確認を行ってみましょう。
立てたインスタンスのIPをブラウザに打ち込んで画像と同じ画面が表示されれば成功です。
デプロイした全てのインスタンスを確認してみましょう。
デプロイ10
デプロイ11

いかがでしたでしょうか。

今回は新サービスCodeDeployを説明しました。
今までスクリプトを書いた後インスタンスにデプロイする設定をユーザが作成しなければなりませんでしたが
CodeDeployがあればスクリプトを作成するだけで簡単にデプロイすることができるようになりました。

次回をお楽しみに!