« AWSクイックスタートリファレンス - AWSクラウドへのMicrodoft WebアプリケーションプロキシとAD FS 展開 | メイン | 【AWS発表】DynamoDB Storage Backend for Titanを用いたGraph Dataの格納と手順 »

AWS CodeDeployがアジア・パシフィック(東京)で利用可能になりました

AWS CodeDeployはAWSのアジア・パシフィック(東京)リージョンで利用可能となりました。

AWS CodeDeployはAmazon EC2のインスタンスとオンプレミスで起動中のインスタンスを含めた任意のインスタンスに対してコードをデプロイすることを自動化するサービスです。AWS CodeDeployによって新しい機能を素早くリリースすることがより簡単になり、デプロイ中のダウンタイムを回避し、アプリケーションの更新に伴う複雑な処理を扱うことができます。AWS CodeDeployを使うことで、エラーを起こしがちなマニュアルのオペレーションを取り除くことができ、また1台のインスタンスから数千のインスタンスまでインフラがスケールしても簡単に対応することができます。

AWS CodeDeployは他にもUS East (N. Virginia)、US West (Oregon), EU (Ireland)、そしてアジア・パシフィック (Sydney)のAWSリージョンでも利用可能です。詳細な情報については我々のプロダクトページをご覧下さい。

原文: AWS CodeDeploy Available in Asia Pacific (Tokyo) (翻訳: SA岩永)


さて、いよいよAWS CodeDeployが東京リージョンでも利用可能になりましたので、改めてAWS CodeDeployの機能おさらい、およびいくつかの参考情報をご紹介したいと思います。

AWS CodeDeployの基本処理

AWS CodeDeployは非常にシンプルで強力です。基本的な処理はたった2つです。

ファイルを配布する

デプロイとはすなわち、新しいファイルを各インスタンスに配布することです。AWS CodeDeployを使えば、スケールする柔軟な仕組みを使って、簡単にインスタンス群にファイルを配布することができます。ファイルは例えばスクリプト言語のコードや実行ファイルであったり、テンプレートや画像の様な静的ファイルや各種設定ファイルなど、あらゆるファイルが対象となります。配布元として現在指定できるのは、Amazon S3のオブジェクトかGitHub上のレポジトリとなります。

デプロイ時に任意の処理を挟み込む

AWS CodeDeployではライフサイクルイベントでフックして任意のスクリプトをインスタンス上で実行させることができます。これを利用することで安全な方法でアプリケーションを停止してからファイルを配布したり、正しくアプリケーションが起動したかを検証することができます。

この2つの処理をappspec.ymlという設定ファイルに記述し、配布する対象(ファイル、およびフックスクリプト)とセットにして1つのリビジョンを構成します。そして、配布すべきリビジョンと配布先となるインスタンス群(Deployment Group)を指定するだけで、上の処理が自動で実行されます。

AWS CodeDeployの便利な特徴

上記の様なシンプルな基本処理だけでなく、周囲をささえる様々な便利な特徴がAWS CodeDeployにはあります。いくつかの特徴をご紹介します。

Auto Scalingとの組み合わせが強力

Auto Scalingを使う際に、インスタンスが増えたら、最新のアプリケーションを正しく反映してからElastic Load Balancingに組み込むという処理が必要になります。cloud-initで最新のコードを取ってこさせたり、Auto Scaling Lifecycleを使うことが多いですが、どちらも意外と面倒です(特に今デプロイすべきリビジョンがどれなのかを管理するのが大変です)。

AWS CodeDeployでは、ただ単にDeployment GroupとしてAuto Scaling Groupを指定するだけで、Auto Scaling Lifecycleを設定してくれます。そのため、インスタンスが増えた時には、増えた分にだけ最新のリビジョンがAWS CodeDeployによってデプロイされ、それが完了してからElastic Load Balancingへの組み込みへ進むことが可能です。

対応OSが豊富

AWS CodeDeployのAgentがサポートしているのはAmazon Linuxだけではありません。Red Hat Enterprise Linux, Ubuntu Server、そしてMicrosoft Windows Serverがサポートされています。また、これら以外のOSで利用したい場合でもAgentはオープンソースで公開されています。

デプロイのペースを設定可能

1台ずつ反映していく設定から、1度に全台同時反映する設定まで、自由なペースをデプロイ毎に設定できます。例えば通常のデプロイでは1台ずつ反映しておきながら、緊急でデプロイするときには全台同時に反映するということが簡単に実現できます。

参考資料

もしまだAWS CodeDeployを触ってみたことがなければ、チュートリアルに従って手を動かしてみることをオススメします。こちらに英語ですがチュートリアルを実施している動画があります。

また、こちらのチュートリアルはセルフペースラボというAWSのオンライン学習で無料で実施することができます。セルフペースラボでは専用のAWSアカウントとIAMユーザが割り当てられるので、AWSアカウントをお持ちでなくても体験することが可能です。

最後に

ついに東京リージョンでリリースされました。今後は多くの東京リージョンをお使いのお客様から、AWS CodeDeployを使っているという声を聞けることを楽しみにしています。また、お客様からのフィードバックは我々にとって非常に重要なものなので、ぜひお気軽にお伝え頂ければありがたいです。(SA岩永)

コメント

Featured Event

2016年3 月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31