Heat主要是基于模板文件对应用进行管理,在模板文件中可以定义应用需要的资源,资源可以包括多种类型(CFN以及HOT支持的资源类型可能会存在一定的差别)例如IP,网络,镜像,用户,实例等。定义资源的同时也可以指定资源之间的依赖关系,例如使用云硬盘创建创建一个实例时,可以指定在创建实例时必须要创建云硬盘。
编辑完模板文件后,可以使用该模板文件创建Stack,创建的过程中Heat引擎会根据模板文件中定义的资源,调用对应的资源插件创建资源。创建完Stack之后,Heat可以管理Stack中所有资源的生命周期,例如可以删除资源,也可以通过更新模板的方式来更新Stack中资源的定义。
Heat的简单原理如下:
Heat引擎的执行逻辑大概如下:
Heat相对于OpenStack的其他项目(例如 Nova)而言还很年轻,受到重视应该是从H版本开始,所以它可能还存在很多的不足。下面简单的列一下在I版本中支持的特性
HOT中的资源类型在Icehouse版本中有了较大的扩充,完整列表请参考 http://docs.openstack.org/developer/heat/template_guide/openstack.html
OpenStack 入门学习之四:icehouse版本中Heat的简单介绍,布布扣,bubuko.com
OpenStack 入门学习之四:icehouse版本中Heat的简单介绍
原文:http://blog.csdn.net/eric_sunah/article/details/38333601