AWS Elastic Beanstalkを使ってデザインパターンの1つを構築する
前述のAWS-CloudDesignPatternのクラウドアーキテクティング原則には、「机上実験よりも実証実験」という項目があります。必要なときに安く、すぐに調達できるというクラウドの利点を活かし、サーバーを構築する際などに必要なリソース量を事前に詳細に見積もるのではなく、実際に試して結果をもとに改善を加えていくという原則です。
AWSでは数多くのサービスが提供されており、用途も多岐にわたるため、各サービスを使う前に詳細を理解するのは簡単なことではありません。そのためまずは実際に使ってみて、わからないところを調べていくというスタンスは、サービスを利用する上でも試験の学習をする上でも重要です。
そこで、デザインパターンのうちの1つであるMulti-Serverパターンを、AWS Elastic Beanstalkを使って構築していきます。
AWS Elastic Beanstalkとは
各種プログラミング言語(Java、.NET、PHP、Node.js、Python、Ruby)や、Dockerを使用して開発されたウェブアプリケーションやサービスを、簡単・すぐにデプロイできる環境を作成できるサービスです。
単一のサーバーだけでなく、Elastic Load Balncingを利用した複数サーバーにも対応しています。PaaSライクなサービスですが、内部的には「Amazon EC2」「Amazon S3」「AWS AutoScaling」「Amazon SNS」などが使われています。
AWS Elastic Beanstalkを使った環境構築
AWSマネジメントコンソールの[Deployment & Management]カテゴリより、[AWS Elastic Beanstalk]を選択します。
[Create New Application]を選択します。
Application Information
[Application Name]に任意のアプリケーション名を入力し、[Next]ボタンを押します。
Environment Type
環境のタイプを設定します。それぞれ以下の値を選択し、[Next]ボタンを押します。
| 項目名 | 値 |
|---|---|
| Environment tier | Web Server |
| Predefined configuration | PHP |
| Environment type | Load balancing, autoscaling |




