1. ホーム
  2. ruby-on-rails

[解決済み] AWS OpsWorksとAWS BeanstalkとAWS CloudFormationの違いとは?

2023-03-05 09:08:24

質問

AWS OpsWorksとAWS Beanstalk、AWS CloudFormationを比較した場合のメリット、デメリットを教えてほしい。

私は、自動拡張可能なデータベース層を含む、任意の数の同時Webリクエスト(毎分1000リクエストから毎秒1000万まで)を処理するために自動拡張可能なシステムに興味があります。

各アプリケーションに個別のインスタンスを持つ代わりに、理想的には、いくつかのハードウェア リソースを効率的に共有したいと思います。過去に私は主にEC2インスタンス + RDS + Cloudfront + S3 を使用していました。

スタックシステムは、Heroku から移行する高トラフィックの ruby on rails アプリ、いくつかの python/django アプリ、およびいくつかの PHP アプリもホストする予定です。

事前にありがとうございます。

どのように解決するのですか?

<ブロッククオート

AWS OpsWorksとAWS Beanstalk、AWS CLoudFormationを比較した場合のメリット、デメリットを知りたいのですが?

答えは、「依存」です。

AWS OpsWorksとAWS Beanstalkは、(私が聞いたところでは)あなたがどう考えるかによって、単にあなたのインフラを管理する異なる方法である。CloudFormationは、単にインフラをテンプレート化する方法です。

個人的にはElastic Beanstalkの方が馴染みがありますが、人それぞれです。個人的にはGitでデプロイできるので好きです。Elastic Beanstalkが環境を起動するためにCloudFormationを使用していることは公表されています。

私のプロジェクトでは、両方を並行して使っています。CloudFormationを使って、カスタム設定したVPC環境、S3バケット、DynamoDBテーブルを構築し、アプリに使用するのです。それから、S3/DynamoDBリソースと話す方法を知っているカスタムVPC内のElastic Beanstalk環境を起動します。

<ブロッククオート

私は、自動拡張可能なデータベース層を含む、任意の数の同時 Web リクエスト (1 分あたり 1000 リクエストから 1000 万 rpm まで) を処理するために自動拡張可能なシステムに興味があります。

ボンネットの下では、OpsWorksとElastic BeanstalkはEC2 + CloudWatch + Auto Scalingを使用しており、あなたが話しているような負荷を処理することが可能です。RDSは、スケーラブルなSQLベースのデータベースのサポートを提供します。

各アプリケーションに個別のインスタンスを持つ代わりに、理想的にはいくつかのハードウェア リソースを効率的に共有したいと思います。過去に私は主に EC2 インスタンス + RDS + Cloudfront + S3 を使用しました。

あなたが"で何を意味するかによります。 いくつかの ハードウェア・リソース"の意味にもよりますが、OpsWorksまたはElastic Beanstalk環境と一緒にスタンドアロンEC2インスタンスを常に起動することができます。現在、Elastic Beanstalkは1つの環境につき1つのWebアプリをサポートしています。OpsWorksが何をサポートしているかは覚えていません。

<ブロッククオート

スタックシステムは、Heroku から移行する高トラフィックの ruby on rails アプリ、いくつかの python/django アプリ、およびいくつかの PHP アプリもホストします。

これらすべては、AWSによって完全にサポートされています。OpsWorks と Elastic Beanstalk には 最適化された は、さまざまな開発環境(Ruby、Python、PHPはすべてリストに入っています)に最適化されており、EC2は、あなたが望むものをインストールできる生のサーバーを提供します。