首页 » OpenStack系统架构设计实战 » OpenStack系统架构设计实战全文在线阅读

《OpenStack系统架构设计实战》6.9 与AWS CloudFormation的对比

关灯直达底部

Amazon的AWSCloudFormation(云编排)向开发人员和系统管理员提供了一种简便地创建和管理一批相关的AWS资源的方法,并通过有序且可预测的方式对其进行资源配置和更新。

Heat(Orchestration)可以说是AWS的一个开源版本,在它身上可以看到大量的AWS的影子,它最初是为了支持AWS模板在OpenStack中的执行而创建的,很多实现在AWS中都能找到对应的模块,后来才逐渐发展出自己的模板格式和资源类型。

到目前为止,Heat还支持很多AWS风格的资源接口,如图6-4所示。

图6-4 AWS风格的资源接口

当然,随着Heat的成熟和发展,AWS风格的资源接口也基本都可以被OpenStack风格的接口取代,比如对于虚拟机的创建,可以通过资源AWS::EC2::Instance进行创建,也可以通过资源OS::Nova::Server进行创建。两个资源接口的属性只在描述名称上有一定的差异,实现的功能基本相同。

而且,随着Heat的不断发展壮大,越来越多的功能被加入到实现当中,越来越多的功能也根据当前形势的发展做了改进。比如,对于弹性伸缩的实现,原来也是采用类似AWS(CloudWatch)的形式,通过安装cfn-tools的方式,采用CloudWatch来完成的。

从I版本开始已经完全可以采用Heat+Ceilometer模块的方式来完成弹性伸缩的实现,其实现过程可以参考图6-5中所描述的过程。

图6-5 弹性伸缩流程的实现过程

虽然只要熟悉原来的AWS基本上就知道怎么使用Heat,但是随着广大开源爱好者和支持者的倾情投入,Heat也开发出了自己的模板类型HOT来支持更加丰富的功能,HOT的目标是在不远的将来可以完全替代CFN(AWS模板)。