AWS Elastic Beanstalk(ベータ)

簡単に開始でき、不足を感じることなく利用

AWS Elastic Beanstalk は、AWS クラウドのアプリケーションを迅速にデプロイし管理できるより簡単な方法です。お客様は単にそのアプリケーションをアップロードするだけで、Elastic Beanstalk が自動的に容量のプロビジョニング、負荷分散、Auto Scaling 、およびアプリケーション状態モニタリングといったデプロイの詳細を処理します。同時に Elastic Beanstalk では、お客様のアプリケーションを稼動している AWS リソースの完全なコントロールを維持でき、いつでも基本的なリソースにアクセスすることができます。Elastic Beanstalk は、Amazon Elastic Cloud Compute(Amazon EC2)、Amazon Simple Storage Service(Amazon S3)、Amazon Simple Notification Service(Amazon SNS)、Elastic Load Balancing、Auto Scaling といった AWS のサービスを活用し、今日数十万というビジネスが依存しているのと同様の高い信頼性、拡張性、費用対効果のインフラストラクチャを提供します。AWS Elastic Beanstalk は簡単に開始でき、不足を感じることなく利用できます。

サービスソリューションとして現在存在するほとんどのアプリケーションコンテナやプラットフォームでは、必要なプログラミングの量を削減している一方で、開発者の柔軟性とコントロールが大幅に減少されています。開発者はベンダーによる事前判断の決定を強いられ、そのアプリケーションのインフラストラクチャの様々な部分のコントロールを維持する機会がほとんど、あるいはまったくありません。しかし、Elastic Beanstalk なら、お客様のアプリケーションを稼動している AWS リソースの完全なコントロールを維持することができます。インフラストラクチャ要素の一部(またはすべて)を引き受けたい場合は、Elastic Beanstalk の管理機能を使ってシームレスにそれを行うことができます。

Elastic Beanstalk は、アプリケーションの簡易な移植性を確保するために、Apache HTTP Server for PHP や Apache Tomcat for Java などの使い慣れたソフトウェアスタックを使用して構築されています。Elastic Beanstalk には追加料金はかかりません。アプリケーションを格納・実行するために必要な AWS のリソースに対してのみお支払いいただきます。

サインアップが簡単、
使用料金は従量課金制です
の利用を申し込む


このページには下記のカテゴリの情報が含まれています。下へジャンプしたい場合はクリックしてください。

AWS Elastic Beanstalk の機能性

.NET 開発者の場合

AWS Elastic Beanstalk で .NETアプリケーションをデプロイするには、以下を実行するだけです。

  • Microsoft Visual Studioを使って、いつもと同じようにアプリケーションを作成します。
  • AWS Toolkit for Visual Studioを使用して、AWS Elastic Beanstalkへアプリケーションを公開します。
  • 代替的に、展開可能なコードをMicrosoft Web Deployのzipパッケージに圧縮し、AWS Management Consoleを使用してAWS Elastic Beanstalkへアップロードすることも可能です。
  • Elastic Beanstalkはバックグラウンドでロードバランサのプロビジョニングや、Microsoft Web DeployパッケージをWindows Server 2008 R2とIIS7.5が稼働する1つまたは複数のAmazon EC2インスタンスへのデプロイを処理します。
  • 数分以内に、お客様が設定したURLでアプリケーションにアクセスできるようになります。(e.g.http://myapp.elasticbeanstalk.com/)。

PHP 開発者の場合

AWS Elastic Beanstalk で PHP アプリケーションをデプロイするには、以下を実行するだけです。

  • エディタまたは IDE を使用して普段と同じようにアプリケーションを作成します。
  • Elastic Beanstalk PHP 環境の作成には、AWS Management Console、コマンドラインインターフェース、またはウェブサービス API を使用します。Elastic Beanstalk はバックグラウンドでロードバランサと Amazon EC2 リソースの準備を処理します。
  • デプロイ用に Git をインストールし、設定します。
  • Git を使用して変更をコミットし、プッシュします。Elastic Beanstalk は、Apache HTTP Server を実行している1つまたは複数の Amazon EC2 インスタンスにファイルをデプロイします。
  • 数分内に、カスタマイズしたお客様の URL でアプリケーションにアクセスできるようになります(例: http://myapp.elasticbeanstalk.com/)。

Java 開発者の場合

AWS Elastic Beanstalk で Java アプリケーションをデプロイするには、以下を実行するだけです。

  • エディタまたは IDE(例えば、Eclipse)を使用して普段と同じようにアプリケーションを作成します。
  • デプロイ可能なコードを標準の Java Web Application Archive(WAR ファイル)にパッケージします。
  • AWS Management Console、Eclipse の AWS Toolkit、ウェブサービス API、またはコマンドラインインターフェースを使用して、WAR ファイルを Elastic Beanstalk にアップロードします。
  • アプリケーションをデプロイします。その陰で、Elastic Beanstalk が、Load Balancer のプロビジョニングと、Apache Tomcat アプリケーションサーバーを実行している1つまたは複数の Amazon EC2 インスタンスへの WAR ファイルのデプロイを処理します。
  • 数分内に、カスタマイズしたお客様の URL でアプリケーションにアクセスできるようになります(例: http://myapp.elasticbeanstalk.com/)。

AWS Elastic Beanstalk の機能

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

  • 簡単に新しいアプリケーションバージョンを実行している環境にデプロイできます(または以前のバージョンにロールバックすることができます)。
  • CPU 平均使用率、リクエスト数、平均待ち時間など、内蔵された CloudWatch モニタリングメトリックスにアクセスできます。
  • アプリケーションの状態が変化したり、アプリケーションサーバーが追加または削除されたりした際には、Amazon Simple Notification Service(Amazon SNS)を介して電子メール通知が送られます。
  • アプリケーションサーバーにログインせずに、サーバーのログファイルにアクセスできます。
  • コマンド1つで、すべての Amazon EC2 インスタンス上のアプリケーションサーバーを再起動できます。

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

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

サービス概要

簡単に開始 – Elastic Beanstalk は、AWS にアプリケーションをデプロイする迅速かつ簡単な方法です。AWS Management Console、Git のデプロイ、または Eclipse などの統合開発環境(IDE)を使用してアプリケーションをアップロードするだけで、Elastic Beanstalk が自動的に容量のプロビジョニング、負荷分散、Auto Scaling、およびアプリケーション状態モニタリングといったデプロイの詳細を処理します。インフラストラクチャやリソースの設定をすることなく、数分内にアプリケーションが使用できるようになります。

不足を感じることはありません – Elastic Beanstalk は、デフォルトの Auto Scaling 設定に基づき、自動的にアプリケーションの拡大・縮小を行います。特定のアプリケーションのニーズに基づいて、簡単に Auto Scaling の設定を調整することができます。例えば、Auto Scaling のアクションをトリガするために CPU を利用することができます。Elastic Beanstalk により、コストを最小限に抑えながら、アプリケーションはワークロードやトラフィックのピークを処理することができます。

完全なコントロール – Elastic Beanstalk ではドアが全開されていて、お客様のアプリケーションを稼動している AWS リソースの完全なコントロールを維持できます。インフラストラクチャ要素のいくつか(またはすべて)を引き受けたい場合は、 Elastic Beanstalk の管理機能を使ってシームレスにそれを行うことができます。例えば、Elastic Beanstalk コンソールを介して、ログファイルを見る、アプリケーションの状態を監視する、Auto Scaling ルールを設定する、Eメール通知を設定する、さらに環境変数をパスすることができます。

柔軟性 – CPU とメモリの要件に応じて、アプリケーションに最適な Amazon EC2 インスタンスのタイプを、いくつかの利用可能なデータベースのオプションから選択することができます。例えば、ウェブアプリケーションに容量の大きいメモリフットプリントがある場合は、ハイメモリ インスタンスで構成されるデプロイを指定することができます。

高い信頼性 – Elastic Beanstalk は、Amazon の実績のあるネットワークインフラストラクチャとデータセンター内で実行され、開発者が高い耐久性と可用性を必要とするアプリケーションを実行することができる環境を提供します。


価格

Elastic Beanstalk には追加料金はかかりません。お客様のアプリケーションが消費する基本的な AWS リソース(例、Amazon EC2、Amazon S3)に対してのみお支払いいただきます。

AWS 無料使用範囲の対象となる新しい AWS のお客様は、無料でアプリケーションを Elastic Beanstalk でデプロイすることができます。Elastic Beanstalk のデフォルト設定で、費用をかけずに無料使用範囲内で、低トラフィックのアプリケーションを実行することができます。それらのアプリケーションが、デフォルト環境が提供する以上のリソースを必要とする場合は、お客様にはアプリケーションが消費する追加分のリソースの通常の AWS レートが課金されます。

Elastic Beanstalk でのウェブサイト実行の費用は、ウェブサイトのトラフィックを処理するために必要な Amazon EC2 インスタンス数、アプリケーションによって消費される帯域幅、アプリケーションが使用するデータベースやストレージオプションなど、いくつかの要因に基づき異なります。ウェブアプリケーションの主なコストは、通常、Amazon EC2 インスタンス(複数可)と、アプリケーションを実行するインスタンス間のトラフィックを分散させる Elastic Load Balancing の費用となります。

以下の表には、例として、Elastic Beanstalk のデフォルト設定で低トラフィックのウェブサイトを実行する場合の月間コストを、無料使用範囲がある場合とない場合の両方で示しました。

サービスとリソース ユニット コスト詳細 コスト
Amazon EC2 t1. マイクロインスタンス1$0.02/時間 X 24時間 X 30日$14.40
Elastic Load Balancer 1 $0.025/時間 X 24時間 X 30日 $18.00
Elastic Load Balancer データプロセッシング 15 GB $0.008/GB X 15GB $0.12
Elastic Block Store 容量 8 GB $0.10/GB X 8GB $0.80
WAR ファイルの S3 ストレージとアクセス 1 GB0.125 USD/1GB + 0.01 USD(1,000 未満の PUT) + 0.01 USD(10,000 未満の GET) $0.15
データ送受信量 15 GB 着信は無料。15 GB 送信(アウト)X $0.12 $1.80
  無料使用範囲なしの場合の月間総コスト $35.27
  無料使用範囲ありの場合の月間総コスト $0

AWS サービスの価格詳細については、AWS サービスの関連詳細ページの価格セクションをご参照ください。

Amazon EC2 料金表(インスタンス、負荷分散、Elastic Block Storage、データ転送の価格を含む)

Amazon S3 料金表(ストレージとデータ転送の価格を含む)

Elastic Beanstalk で AWS データベースサービスを使用する場合の価格については、下記のリンクをご参照ください。

Amazon RDS 料金表(データベースインスタンス、バックアップストレージ、データ転送の価格を含む)

Amazon DynamoDB(データストレージ、スループット容量、データ転送を含む)

Amazon SimpleDB 料金表(ストレージ、データ処理、データ転送の価格を含む)

Elastic Beanstalk へのサインアップの際には、Elastic Beanstalk で使用可能なすべての AWS サービスに個別に登録しなくて済むよう、これらのサービスに自動的にサインアップされます。すべての AWS サービスにおいて、最低料金や事前契約はなく、使用した分のみにお支払いいただきます。


詳しい説明

Elastic Beanstalk の使用

Elastic Beanstalk では、基本的なインフラストラクチャのコントロールを好きなだけ維持しながら、迅速にアプリケーションをデプロイすることができます。お客様のアプリケーションのデプロイ可能なコードの単純なラベルの繰り返し(例、「バージョン1.5」)であるアプリケーションバージョンを作成することによって開始します。そしてこれは Amazon S3 に格納されます。例えば、アプリケーションバージョンは、PHP アプリケーションの特定の Git デプロイを示します。Elastic Beanstalk には、AWS Management ConsoleGit デプロイおよびコマンドラインインターフェースEclipse の AWS Toolkit など、アプリケーションバージョンの作成を容易にするいくつかのツールが用意されています。次に、デプロイしたいアプリケーションバージョンを指定し、それを環境で起動します。環境は、特にアプリケーションを実行するために作成された 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 Machine Image(AMI)から構築されます。Elastic Beanstalk は、デフォルトでは Amazon Linux AMI を使用します。すべてのソフトウェアが含まれているため、ウェブサーバーとしてもアプリケーションサーバーとしても機能します(Linux、Apache、PHP など)。10以上の環境を実行したい、500以上のアプリケーションバージョンをアップロードしたい、または20以上の Amazon EC2 インスタンスを起動したい場合は、AWS Elastic Beanstalk 上限リクエストフォームをご提出ください。当社で速やかにお客様のリクエストを検討いたします。

使用開始

AWS Elastic Beanstalk を始める最善の方法は、当社の技術文書の1つである入門ガイドを読んで作業していただくことです。数分で、デプロイでき、サンプルアプリケーションを使用したり、独自のアプリケーションをアップロードしたりできるでしょう。


使用目的と制約

このサービスの利用は、Amazon Web Services カスタマーアグリーメントによって規定されています。

©2011, Amazon Web Services LLC or its affiliates. All rights reserved.