質問: 御世話になります。 AWSでサーバーを借りて、サービスを提供しようと考えています。 その中で、amazon が提供している「EC2」と「Elastic Beanstalk」について勉強しましたが、自分の解釈が正しいのか不安になり、皆様のご意見を伺いたいと質問させて頂きます。 質問内容としては、「EC2」と「Elastic Beanstalk」の違いについてです。 「EC2」サービスは、仮想サーバーを提供するものだと理解しています。 サーバーを立てるメンテナンスを、amazon 請け負うものだと考えています。 こちらはあくまで開発の場を提供している意味合いが強いと考えています。 「Elastic Beanstalk」は、運用の意味合いが強く、自分で作ったサービスを処理スペックを気にすることなく快適に運用する手助けをしてくれるサービスだと考えています。 しかし、「EC2」にも、スポットインスタンスと呼ばれるサービスがあり、負荷処理が高い場合は、高いインスタンス(処理能力)を分けもらえる設定があり、「Elastic Beanstalk」と似た内容な気がします。 そこで私が「EC2」と「Elastic Beanstalk」の違いについて考えたのが、一からサービスを開発し利用する場合は、「EC2」。スポットインスタンスは、あくまでサービスが動く時の調整だと考えています。 その後、運用する手間を考えた場合(ユーザーがアクセスする場合)に、「Elastic Beanstalk」にお任せするという感じになります。 こちらの解釈で正しいのでしょうか? それに加え、金額面でどのような違いあるのか、皆様はどのように運用されていいるのか教えて頂けると助かります。 追記: いろいろな方にアドバイス頂きありがとうございます。 現在、EC2で開発を進め、ユーザアクセスによる対策をスポットインスタンスではなく、ロードバランサという手法で進めたいと考えています。 進め方にアドバイスを頂けたら幸いです。
回答: EC2とEBは比べるものではありません、全く異なります。 > > 「EC2」サービスは、仮想サーバーを提供するものだと理解しています。 > > > これはあってます。 > > サーバーを立てるメンテナンスを、amazon 請け負うものだと考えています。 > > こちらはあくまで開発の場を提供している意味合いが強いと考えています。 > > > これは違います。 利用者が自身でインスタンスを起動し、不要になったら破棄します。 そのインスタンスを開発に使うか商用サービスに使うかはAWSには関係ありません。 > > 「Elastic Beanstalk」は、運用の意味合いが強く、自分で作ったサービスを処理スペックを気にすることなく快適に運用する手助けをしてくれるサービスだと考えています。 > > > EBは、一般的なウェブアプリケーションの提供に必要なAWS機能をある程度自動で構成してくれます。 ELB, EC2, RDS, SNS, CloudWatch等。 アプリは開発できるけど、ネットワークやインフラの知識がなくてサービスが立ち上げられない、という人にはいいのではないでしょうか。 メリットはネットワークやインフラの知識がなくてもサービス提供できること、 デメリットはすべて自分でサービスを構築するよりもランニングコストが高くなることでしょうか。 > > しかし、「EC2」にも、スポットインスタンスと呼ばれるサービスがあり、負荷処理が高い場合は、高いインスタンス(処理能力)を分けもらえる設定があり、「Elastic Beanstalk」と似た内容な気がします。 > > > スポットインスタンスは余剰リソースを安く使うための仕組みで、入札額より低い間はインスタンスを利用できます。 入札額を超えた場合はインスタンスが終了します。 スポットインスタンスはいつ終了するかわからないので、継続的にサービスレベルを維持する必要があるものとは相性がよくないと思います。 ビッグデータ分析をしたいとか、そういうのには向いてるんじゃないですかね。 > > そこで私が「EC2」と「Elastic Beanstalk」の違いについて考えたのが、一からサービスを開発し利用する場合は、「EC2」。スポットインスタンスは、あくまでサービスが動く時の調整だと考えています。 > > その後、運用する手間を考えた場合(ユーザーがアクセスする場合)に、「Elastic Beanstalk」にお任せするという感じになります。 > > こちらの解釈で正しいのでしょうか? > > > EC2とEBは全く異なるものなので違いとかそういうものではありません、比較できません。 > > それに加え、金額面でどのような違いあるのか、皆様はどのように運用されていいるのか教えて頂けると助かります。 > > > 例えばウェブアプリケーションサーバーとデータベースでスモールスタートする場合、 自身で構築するケース: EC2インスタンス1つにアプリケーション・サーバーとデータベースを同居 EBで構築するケース: EC2インスタンス1つ RDSインスタンス1つ となり、RDS分の料金が丸っとかかります。簡単に言うとインスタンス2つなので自身でやるよりもコストは倍になります。 1インスタンス2万/月とした場合、年間で24万なのか48万なのかって事です。