ipe*_*sus 82 ruby-on-rails amazon-web-services aws-cloudformation aws-opsworks amazon-elastic-beanstalk
我想知道使用AWS OpsWorks与AWS Beanstalk和AWS CloudFormation有什么优缺点?
我感兴趣的是一个可以自动调整以处理任何大量同时Web请求的系统(从每分钟1000个请求到1000万个rpm),包括一个可以自动扩展的数据库层.
而不是每个应用程序都有一个单独的实例,理想情况下我想有效地共享一些硬件资源.在过去,我主要使用EC2实例+ RDS + Cloudfront + S3
堆栈系统将在我们从Heroku迁移的rails应用程序上托管一些高流量ruby,还有一些python/django应用程序和一些PHP应用程序.
提前致谢.
Rya*_*man 66
我想知道使用AWS OpsWorks与AWS Beanstalk和AWS CLoudFormation有什么优缺点?
答案是:这取决于.
AWS OpsWorks和AWS Beanstalk(我被告知)只是管理基础架构的不同方式,具体取决于您的想法.CloudFormation只是一种模板化基础架构的方式.
就个人而言,我对Elastic Beanstalk更熟悉,但对每个人都比较熟悉.我更喜欢它,因为它可以通过Git进行部署.Elastic Beanstalk使用CloudFormation来启动其环境是公共信息.
对于我的项目,我同时使用它们.我使用CloudFormation来构建我用于我的应用程序的自定义配置的VPC环境,S3存储桶和DynamoDB表.然后,我在自定义VPC内部启动Elastic Beanstalk环境,该环境知道如何与S3/DynamoDB资源通信.
我感兴趣的是一个可以自动调整以处理任何大量同时Web请求的系统(从每分钟1000个请求到1000万个rpm),包括一个可以自动扩展的数据库层.
在引擎盖下,OpsWorks和Elastic Beanstalk使用EC2 + CloudWatch + Auto Scaling,它能够处理您正在谈论的负载.RDS为可扩展的基于SQL的数据库提供支持.
而不是每个应用程序都有一个单独的实例,理想情况下我想有效地共享一些硬件资源.在过去,我主要使用EC2实例+ RDS + Cloudfront + S3
根据" 某些硬件资源"的含义,您始终可以在OpsWorks或Elastic Beanstalk环境中启动独立的EC2实例.目前,Elastic Beanstalk支持每个环境一个webapp.我不记得OpsWorks支持的内容.
堆栈系统将在我们从Heroku迁移的rails应用程序上托管一些高流量ruby,还有一些python/django应用程序和一些PHP应用程序.
AWS完全支持所有这些.OpsWorks和Elastic Beanstalk已针对一系列开发环境进行了优化(Ruby,Python和PHP都在列表中),而EC2提供了原始服务器,您可以在其中安装任何您喜欢的内容.
Vie*_*van 21
OpsWorks是一个像Chef这样的编排工具 - 事实上,它来自Chef-Puppet,Ansible或Saltstalk.您可以使用Opsworks通过指定希望每个资源(服务器实例,应用程序,存储)所在的状态来指定您希望网络所处的状态.并指定希望每个资源所在的状态.为该状态的每个属性指定所需的值.例如,您可能希望Apache服务始终启动并运行,并在启动时启动,Apache作为用户,Apache作为Linux组.
CloudFormation是一个json模板(**),它指定您要部署的资源的状态,即您希望在us-east-1中部署AWS EC2微型t2实例,作为VPC 192.168.1.0/24的一部分.对于EC2实例,您可以通过EC2资源的用户数据部分中的自定义bash脚本指定应在该资源上运行的内容.CloudFormation只是一个模板.只有当您通过适用于CloudFormation的AWS管理控制台运行模板或运行用于Cloudformation的aws cli命令(即aws cloudformation)时,模板才会成为运行资源.
ElasticBeanstalk是一个PAAS-您可以上传特定的Ruby/Rails,node.js或Python/django或Python/Flask应用程序.如果你正在运行Scala,Haskell或其他任何东西,请为它创建一个Docker镜像,并将该Docker镜像上传到Elastic Beanstalk(*).
您可以通过运行适用于CloudFormation的aws cli或者为Opsworks创建配方,将应用程序上传到Elastic Beanstalk,从而将应用程序上传到Elastic Beanstalk.您还可以通过Opsworks运行用于Cloudformation的aws cli.
(*)事实上,AWS关于其Ruby应用程序示例的文档非常糟糕,以至于我失去了耐心并将示例应用程序嵌入到Docker镜像中并将Docker镜像上传到Elastic Beanstalk中.
(**)截至2016年9月,Cloudformation还支持YAML模板.
Adi*_*iii 16
CloudFormation: AWS CloudFormation是一项服务,可帮助您建模和设置Amazon Web Services资源,以便您可以花更少的时间管理这些资源,并将更多时间专注于在AWS.it使用模板中运行的应用程序.模板描述资源你想要的和他们的设置.

Elastic Beanstalk
借助Elastic Beanstalk,您可以在AWS云中快速部署和管理应用程序,而无需担心运行这些应用程序的基础架构.在这方面,它类似于CloudFormation.事实上,它实际上使用CloudFormation模板和脚本来...
OpsWorks
OpsWorks使您能够自动执行管理操作,以便自动可靠地执行这些操作.您可以受益于自动故障转移,包管理,EBS卷RAID设置以及基于规则或基于时间的自动扩展.
现在有些大局
在Opsworks中,您可以跨堆栈共享层的"角色",以通过组合底层实例可能执行的特定作业来使用更少的资源.
层兼容性列表(只要正确设置了安全组):
HA Proxy : custom, db-master, and memcached.
MySQL : custom, lb, memcached, monitoring-master, nodejs-app, php-app, rails-app, and web.
Java : custom, db-master, and memcached.
Node.js : custom, db-master, memcached, and monitoring-master
PHP : custom, db-master, memcached, monitoring-master, and rails-app.
Rails : custom, db-master, memcached, monitoring-master, php-app.
Static : custom, db-master, memcached.
Custom : custom, db-master, lb, memcached, monitoring-master, nodejs-app, php-app, rails-app, and web
Ganglia : custom, db-master, memcached, php-app, rails-app.
Memcached : custom, db-master, lb, monitoring-master, nodejs-app, php-app, rails-app, and web.
Run Code Online (Sandbox Code Playgroud)
参考:http://docs.aws.amazon.com/opsworks/latest/userguide/layers.html
小智 7
AWS Beanstalk: 它是在AWS云中部署和管理应用程序,而不必担心使用Elastic Beanstalk运行Web应用程序的基础架构.无需担心EC2或其他安装.
AWS OpsWorks AWS OpsWorks只是一种应用程序管理服务,可让新DevOps用户轻松建模和管理整个应用程序
| 归档时间: |
|
| 查看次数: |
30281 次 |
| 最近记录: |