AWS Elastic Beanstalk は、AWS でアプリケーションを立ち上げて稼働させるのに最も速くてシンプルな方法です。開発者はアプリケーションのコードをアップロードするだけで、リソースのプロビジョニング、ロードバランシング、自動スケーリング、モニタリングなどの細かい作業はサービスが自動的に処理します。アプリサーバー上でデータベースを使用して実行できる標準の PHP、Java、Python、Ruby、Node.js、.NET、または Docker のアプリケーションを使用する場合には、Elastic Beanstalk が最適です。Elastic Beanstalk では、Auto Scaling と Elastic Load Balancing を使用することにより、変動の激しいトラフィックに容易に対応できます。小さく始めて、後からスケールアップすることが可能です。

AWS を無料でお試しください

まずは無料で始める »
またはコンソールにサインイン

12 か月間の AWS 無料利用枠と、24 時間年中無休のカスタマーサービスやサポートフォーラムなどの AWS の基本的なサポート機能を利用できます。

AWS アカウント作成の流れはこちら »

ElasticBeanstalk_ProductPage_Banner

一度アプリケーションが実行された後は、Elastic Beanstalk で以下のようないくつかの管理機能を利用することができます。

  • さまざまなデプロイオプションを使用して、簡単に新しいアプリケーションバージョンを実行している環境にデプロイできます (または以前のバージョンにロールバックすることができます)。
  • CPU 平均使用率、リクエスト数、平均レイテンシーなど、内蔵された CloudWatch モニタリングメトリックスにアクセスできます。
  • アプリケーションの状態が変化したり、アプリケーションサーバーが追加または削除されたりした際には、Amazon Simple Notification Service(Amazon SNS)を介して電子メール通知が送られます。
  • アプリケーションサーバーにログインせずに、サーバーのログファイルにアクセスできます。
  • コマンド1つで、すべての Amazon EC2 インスタンス上のアプリケーションサーバーを再起動できます。
  • AMI、オペレーティングシステム、言語やフレームワーク、およびアプリケーションサーバーまたはプロキシサーバーなどアプリケーションを実行する基盤となるプラットフォームに対する定期的な自動更新を有効にします。 

Elastic Beanstalk では、開発者は自分のアプリケーションを稼動している AWS リソースの完全なコントロールを維持でき、Elastic Beanstalk 管理コンソールでデフォルト設定を調整することにより、以下のような様々な機能を実行することができます。

  • そのアプリケーションの CPU とメモリ要件と一致する最も適切な Amazon EC2 インスタンスのタイプを選択できます。
  • Amazon RDS、Amazon DynamoDB、Microsoft SQL Server、Oracle、IBM DB2、または Informix など、いくつかの利用可能なデータベースとストレージのオプションから選択できます。
  • 即時かつ直接的トラブルシューティングのために Amazon EC2 インスタンスにログインすることができます。
  • 複数の利用可能ゾーンで実行することで、迅速にアプリケーションの信頼性を向上させることができます。
  • Load Balancer に HTTPS プロトコルを有効化することによって、アプリケーションのセキュリティを強化できます。
  • アプリケーションサーバー設定(JVM 設定など)を調整して環境変数を渡します。
  • メモリキャッシングサービスなどの、他のアプリケーションのコンポーネントを、Amazon EC2 と同時に実行できます。
  • Auto Scaling の設定を調整し、環境からのインスタンスの追加/削除時を決定するメトリックとしきい値をコントロールします。

Elastic Beanstalk では、基本的なインフラストラクチャのコントロールを好きなだけ維持しながら、迅速にアプリケーションをデプロイすることができます。お客様のアプリケーションのデプロイ可能なコードの単純なラベルの繰り返し(例、「バージョン 1.5」)であるアプリケーションバージョンを作成することによって開始します。そしてこれは Amazon S3 に格納されます。例えば、アプリケーションバージョンは、PHP アプリケーションの特定の Git デプロイを示します。Elastic Beanstalk では、さまざまなツールでアプリケーションバージョンを容易に作成できます。主なものとしては、AWS Management ConsoleGit デプロイメントおよびコマンドラインインターフェイスAWS Toolkit for Visual StudioAWS Toolkit for Eclipse などがあります。次に、デプロイしたいアプリケーションバージョンを指定し、それを環境で起動します。環境は、特にアプリケーションを実行するために作成された AWS リソース(ロードバランサー、Auto Scaling グループ、EC2 インスタンスなど)に相当します。環境を起動する時は、Elastic Beanstalk が自動的に容量のプロビジョニング、負荷分散、Auto-Scaling、およびアプリケーション状態モニタリングといったデプロイの詳細を処理するため、これらのリソースのサイズや種類については何も指定する必要がなく、一旦環境が起動するとそれが通知されます。例えば、デプロイしたいコードの新しいバージョンがある場合や以前のバージョンにロールバックさせたい場合など、実行している環境とは異なるバージョンのアプリケーションをデプロイすることもできます。

デフォルト設定の環境では、単一の Amazon EC2 マイクロインスタンス(アプリケーションサーバー)と Elastic Load Balancer を実行できます。EC2 インスタンスは、Auto Scaling に設定されています。つまり、ワークロードやトラフィックのすべてのピークを処理するためにインスタンスが自動的に追加されるということです(また、トラフィックが減ると追加されたインスタンスは取り除かれます)。Elastic Beanstalk は URL(例えば http://myapp.elasticbeanstalk.com/)を使用してアプリケーションを提供しているため、ウェブブラウザに入力して実行中のアプリケーションを表示することができます。また、アプリケーションのスケールが上下するのに合わせ、Load Balancer も複数の Amazon EC2 インスタンス間で着信トラフィックを分散し、それを健全なインスタンスのみに自動的にルーティングして、アプリケーションに信頼性の高い環境を提供します。各 Amazon EC2 インスタンスは、サーバーの新しいインスタンスを作成するために必要なすべての情報が含まれている Amazon マシンイメージ(AMI)から構築されます。Elastic Beanstalk では、Amazon Linux AMI または Windows Server 2012 R2 AMI がデフォルトで使用されます。すべてのソフトウェアが含まれているため、ウェブサーバーとしてもアプリケーションサーバーとしても機能します(例: Linux、Apache、PHP)。実行する環境の数が10を超える、アップロードするアプリケーションバージョンの数が500を超える、あるいは起動する Amazon EC2 インスタンスの数が20を超えるという場合は、AWS Elastic Beanstalk 上限リクエストフォームをお送りください。すみやかにリクエストを確認いたします。

このサービスのご利用にはアマゾン ウェブ サービスカスタマーアグリーメントが適用されます。