6.1 Heat概述
Heat是OpenStack项目中实现资源编排的子项目,它的目的是帮助用户实现在OpenStack云环境下手工资源创建、配置、应用部署、弹性伸缩等过程的自动化,从而提高OpenStack应用的效率。
Heat子项目总体上可以看作由Heat模板文件和Heat执行引擎两部分。其中Heat模板定义了资源部署流程(资源可以是虚拟机实例,也可以是网络、IP、镜像、用户),而Heat执行引擎通过OpenStack标准的API与其他组件交互协作,不仅实现了云环境中资源依赖关系处理、资源的初始化、资源自动部署等针对资源的基本操作,还能实现弹性伸缩、负载均衡等服务配置操作。
此外,Heat实现了一套对象建模映射机制,使开发者实现自定义资源的自动化部署,通过插件扩展,Heat甚至可以支持其他虚拟化平台的自动化部署。