关注过云计算的人应该都知道AWS是什么?因为工作原因,本人在半年前开始接触AWS,但仅限于接触而已,到现在为止也并没有去深入了解。所以一下所写的文字不一定完全准确,写本文的目的是为了与大家分享我个人的想法,有关与AWS一些服务的具体介绍还请移步去AWS官网。

      AWS CloudFormation作为亚马逊的一项服务肯定是有其存在的价值的!CloudFormation的中文的意思是“云编排”,在我看来“编排”就是整合亚马逊云资源或者服务的一种方式,是相对于AWS底层服务的一种抽象,其主要作用是方便开发者使用!注意,这里说的是开发者!“编排”服务的主要做的事情就是通过配置模版来整合云上的服务,在编排的配置模版中可以指定EC2实例要多少个/RDS实例要多少个/调用云监控/负载均衡等等。所有它的工作就是整合服务然后去做某件事情。

    AWS BeanStalk也是一种服务,也可以整合资源,但它是比编排更上一层的服务。BeanStalk是面向应用的一种服务,主要做的事情就是专门为一个应用配置环境,可以指定说这个应用需要什么样的实例,需要什么样的数据库,或者其他特定环境,用户指定好环境后,只需要把自己开发的应用放到AWS S3上或者直接放到镜像里面,就可以通过BeanStalk自动安装部署。还有一个明显的特征是BeanStalk有明显的版本管理。

    CloudFormation与BeanStalk都可以用来调用云资源和服务,也可以做相同的一件事情,他们的区别如下:

    1.CloudFormation面向的是开发者,BeanStalk面向的是应用程序

    2.CloudFormation是为做某件事情而整合资源,BeanStalk是为某个应用程序而整合资源。

    3.使用CloudFormation要比使用BeanStalk复杂得多,CloudFormation的配置模版是一份json数据,这个对于不懂编程的人来说很难应用!BeanStalk可以通过界面向导来配置。

联系:BeanStalk是CloudFormation的进一步抽象,BeanStalk是通过调用CloudFormation来实现的(不确定)。BeanStalk服务主要目的是方便应用的部署。