Amazon EC2和AWS Elastic Beanstalk的区别

399

EC2和Beanstalk有什么区别?我想了解SaaS、PaaS和IaaS方面的区别。

为了部署WordPress Web应用程序,我需要一个可扩展的托管服务。如果有比我目前使用的更好的选择,请告诉我。

顺便说一下 - 我想托管和部署多个WordPress和Drupal站点。

我不想花更多时间在服务器上,而是专注于开发。但云托管需要具备自动可扩展性。


97
我认为这不是一个基于观点的问题。EC2和ELB之间有明显的区别。它们必须被设计用来填补不同的市场空缺,否则AWS为什么要同时提供它们呢?我认为在本网站上比较和对比这两种技术是有意义的。这个问题不应该被关闭。 - Jeff
35
"EC2和Elastic Beanstalk有什么区别"绝不是一个基于选项的问题或答案。 - Jason Swett
41
Stack Exchange运行的机器人需要升级。这不是可乐或百事可乐的观点问题。 - lonstar
10
@Ahmmad Ismail,我想更好的标题可能会有所帮助,比如“EC2和EB之间的区别”而不是“EC2 vs EB”。无论如何,询问两种解决方案之间的差异显然不是“偏见”。 - Balmipour
9
很好的建议。显然不是基于个人观点的。 - sargas
显示剩余2条评论
3个回答

430

首先,EC2和Elastic Compute Cloud是同一件事情。

接下来,AWS涵盖了一系列Web服务,包括EC2和Elastic Beanstalk。它还包括许多其他服务,如S3、RDS、DynamoDB和其他服务

EC2

EC2是亚马逊的服务,允许您在AWS云中创建一个服务器(AWS将此称为实例)。您按小时付费,并且只支付使用量。您可以对此实例进行任何操作,以及启动n个实例。

Elastic Beanstalk

Elastic Beanstalk比EC2层次高一层。Elastic Beanstalk会为您设置一个“环境”,其中可以包含多个EC2实例、一个可选数据库以及其他几个AWS组件,如弹性负载均衡器、自动缩放组和安全组。然后,每当您想要更新在AWS中运行的软件时,Elastic Beanstalk将为您管理这些项目。Elastic Beanstalk不会增加除其创建的这些资源之外的任何额外成本。如果您使用了10小时的EC2,则您只需支付10小时的计算时间。

运行WordPress

对于运行WordPress,选择您最熟悉的方式即可。您可以直接在单个EC2实例上运行它,也可以使用AWS Marketplace中的解决方案,或者使用Elastic Beanstalk。

如何选择?

如果您想减少系统操作并只关注网站,则Elastic Beanstalk是最好的选择。Elastic Beanstalk支持PHP堆栈(以及其他堆栈)。您可以将网站保存在版本控制中,并在进行更改时轻松部署到环境中。它还会设置一个自动缩放组,如果流量增长,可以生成更多的EC2实例。

以下是在Google搜索“elastic beanstalk wordpress”时的第一个结果:https://www.otreva.com/blog/deploying-wordpress-amazon-web-services-aws-ec2-rds-via-elasticbeanstalk/


8
您的意思是希望花更多时间在开发上,而不是配置服务器等内容,对吗? - Josh Davis
13
如今,公司通常会构建应用程序的Docker映像,并将其部署到运行在一组EC2实例上的容器管理工具(如Kubernetes、Mesos、Docker Swarm)中。EC2容器服务是亚马逊为替代自己运行的Mesos集群而提供的托管式解决方案。如果您正在运行多个应用程序,则它是一个很好的解决方案,可以简化管理和计费。但是,如果您只运行单个应用程序,除非您喜欢Docker模型,否则Beanstalk是更好的选择。 - Dathan
7
为了澄清您在“Elastic Beanstalk doesn't add any cost on top of these resources that it creates for you”一文中的观点,我想引用这句话:“事实上,你不需要为Beanstalk本身付费--你需要为你使用的AWS资源(如S3、SNS和EC2)付费。”,引自https://serverfault.com/a/401465/41015。 - Nam G VU
16
亚马逊自己无法清晰地解释他们的产品,这是很令人难过的事情。但是事实就是如此,他们确实做不到。 - Epirocks
4
@Ephra,他们离开 EC2 是因为不是每个人都想要预配置的服务器,一些企业更喜欢自行配置服务器,因为安全、自动化等原因。 - Sergio Gutiérrez
显示剩余7条评论

5

EC2


Elastic Beanstalk



EC2也可以进行扩容和缩容,您只需要配置自动伸缩组即可。 - Kyle Browning

3

对于高层次的概述,EC2是一种基础设施即服务(IaaS)计算服务;这意味着计算资源通常由提供它们的云工程师进行管理。

而Elastic Beanstalk是平台即服务(PaaS),您不必过多考虑资源管理。您只需指定您想要的内容,AWS通过自动化处理任务。例如,预配LAMP堆栈。


1
EC2不是基础设施即代码。它是“按需计算基础设施”,可以通过IaC(如Terraform)进行配置,但也可以手动创建(例如通过AWS Web界面)。 - Stephen Ostermiller
2
哦,应该是我的键盘改变了我的单词。我想说的是基础设施即服务(IaaS)。 - Osemenkhian Godstime

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接