Heat is a service to orchestrate composite cloud applications using a declarative template format through an OpenStack-native REST API.
Chapter One
Heats purpose and vision
• Heat provides a template based orchestration for describing a cloud application by executing ap- propriate OpenStack API calls to generate running cloud applications.
• A Heat template describes the infrastructure for a cloud application in text files which are readable and writable by humans, and can be managed by version control tools.
• Templates specify the relationships between resources (e.g. this volume is connected to this server). This enables Heat to call out to the OpenStack APIs to create all of your infrastructure in the correct order to completely launch your application.
• The software integrates other components of OpenStack. The templates allow creation of most OpenStack resource types (such as instances, floating ips, volumes, security groups, users, etc), as well as some more advanced functionality such as instance high availability, instance autoscaling, and nested stacks.
• Heat primarily manages infrastructure, but the templates integrate well with software configuration management tools such as Puppet and Ansible.
• Operators can customise the capabilities of Heat by installing plugins. This documentation offers information aimed at end-users, operators and developers of Heat.
Chapter Two
Operating Heat
2.1 Installing Heat
2.1.1 Orchestration service overview
The Orchestration service provides a template-based orchestration for describing a cloud application by running OpenStack API calls to generate running cloud applications. The software integrates other core components of OpenStack into a one-file template system. The templates allow you to create most OpenStack resource types such as instances, floating IPs, volumes, security groups, and users. It also provides advanced functionality such as instance high availability, instance auto-scaling, and nested stacks. This enables OpenStack core projects to receive a larger user base.
The service allows deployers to integrate with the Orchestration service directly or through custom plug- ins.
The Orchestration service consists of the following components:
heat command-line client A CLI that communicates with the heat-api to run AWS CloudFormation APIs. End developers can directly use the Orchestration REST API.
heat-api component An OpenStack-native REST API that processes API requests by sending them to the heat-engine over Remote Procedure Call (RPC).
heat-api-cfn component An AWS Query API that is compatible with AWS CloudFormation. It processes API requests by sending them to the heat-engine over RPC.
heat-engine Orchestrates the launching of templates and provides events back to the API consumer.
2.1.2 Install and configure
This section describes how to install and configure the Orchestration service, code-named heat, on the controller node.
This section assumes that you already have a working OpenStack environment with at least the following components installed: Compute, Image Service, Identity.
Note that installation and configuration vary by distribution.
Install and configure for openSUSE and SUSE Linux Enterprise
This section describes how to install and configure the Orchestration service for openSUSE Leap 42.2 and SUSE Linux Enterprise Server 12 SP2.