Monday, November 10, 2014

OpenStack Series: Part 10 – Heat – Orchestration Service

The Orchestration service provides a way to create and manage cloud resources such as storage, networking, computer instances, or applications with a template.

Some documentation defines Heat as:

"A service to orchestrate multiple composite cloud applications using the .. _AWS CloudFormation: template format, through both an OpenStack-native ReST API and a CloudFormation-compatible Query API."

One important concept for Heat is that it is a declarative specification of application model.   Puppet is a declarative language in which user specify the end state of the server or device that it manages. In the case of Heat it specifies the end state of the state and does not specify how to attend the end state.

Orchestration Service Components
  • heat - A CLI tool that communicates with the heat-api to execute AWS CloudFormation APIs
  • heat-api - An OpenStack-native ReST API that processes API request by sending them to the heat-engine over RPC
  • heat-api-cfn - Provides an AWS-Query API that is compatible with AWS CloudFormation and processes API request by sending them to the heat-engine over RPC
  • heat-engine - Orchestrates the launching of templates and provide events back to the API consumer.
  • api-heat-cloudwatch - Provides monitoring (metrics collection) for the Orchestration Service.
  • heat-cfntools - A package of helper scripts (e.g. cfn-hup which handles updates to metadata and execute custom hooks).

From the components we can see that the heat-engine is the heart of the Orchestration Service in the sense that it launches the templates to create stacks (a collection of resources).

Another thing is that Heat is heavy related to Amazon Web Services CloudFormation. On the above service components there are 3 that are related to AWS -
  • heat-api-cfn, 
  • api-heat-cloudwatch and 
  • heat-cfntools.  

Note: Cloudwatch is a AWS monitoring feature that is the counter part of OpenStack Ceilometer.

We need to look at templates and the 2 versions of APIs (OpenStack native and CloudFormation-compatible).

Heat Template
A template is how we want the OpenStack infrastructure should look like.  Initially the format is compatible to AWS CloudFormation and HOT (Heat Orchestration Template) is to replace the CFN format to be the native format of Heat.

Heat template can be integrate with Configuration Management Tools such as Chef or Puppet.
Heat Template has the following structures:
  • Description
  • Parameters
  • Mappings
  • Resources
  • Outputs

Heat Engine
The Heat API is the vehicle from user to the Heat engine to perform orchestration task.  There are 2 set of API - OpenStack native REST API and AWS Query API

When we think of orchestration, we think of the ability to provision a set of resources and in the case of OpenStack Heat - to provision a stack.

There is another notable feature in OpenStack Heat that is worth looking into. It is - AutoScaling

image source:

With the alarm provided by the OpenStack Ceilometer, Heat template can be specified to auto scale up or scale down resources.  Usually a load balancer is to be specified in the Heat template when autoscaling is configured.

Related Post:
OpenStack Series Part 1:  How do you look at OpenStack?
OpenStack Series Part 2:  What's new in the Juno Release?
OpenStack Series Part 3:  Keystone - Identity Service
OpenStack Series Part 4:  Nova - Compute Service
OpenStack Series Part 5:  Glance - Image Service
OpenStack Series Part 6:  Cinder - Block Storage Service
OpenStack Series Part 7:  Swift - Object Storage Service
OpenStack Series Part 8:  Neutron - Networking Service
OpenStack Series Part 9:  Horizon - a Web Based UI Service
OpenStack Series Part 11: Ceilometer - Monitoring and Metering Service
OpenStack Series Part 12: Trove - Database Service
OpenStack Series Part 13: Docker in OpenStack
OpenStack Series Part 14: Sahara - Data Processing Service
OpenStack Series part 15: Messaging and Queuing System in OpenStack
OpenStack Series Part 16: Ceph in OpenStack
OpenStack Series Part 17: Congress - Policy Service
OpenStack Series Part 18: Network Function Virtualization in OpenStack
OpenStack Series Part 19: Storage Polices for Object Storage
OpenStack Series Part 20: Group-based Policy for Neutron


"Deploying OpenStack: Learning Environments (Manual Setup)." Deploying OpenStack: Learning Environments (Manual Setup). N.p., n.d. Web. 26 Oct. 2014.
"OpenStack." Welcome to the Heat Developer Documentation! — Heat 2015.1.dev217.gd62e13d Documentation. N.p., n.d. Web. 26 Oct. 2014.


  1. following your blog was the best thing for me happened.. do write more about aws to know in full detaill please.. kind request..

    aws training in bangalore

  2. Thanks for providing your wonderful information for more updates on AWS Get touch with AWS Online Course Bangalore

  3. Nice post keep do posting The Info was too good, for more information regarding the technology Click

    aws training in chennai

    selenium training in chennai

  4. I really enjoyed reading your blog. I really appreciate your information which you shared with us. Click here: Best Python Online Training || Learn Python Course

  5. Thank you for providing such an awesome article and it is very useful blog for others to read.

    Oracle ICS Online Training

  6. Visit for AWS training in Bangalore:- AWS training in Bangalore

  7. Nice Article and Thanks for sharing the useful post looking really so great...
    AWS Course in Bangalore

  8. This comment has been removed by the author.

  9. Your blog has wonderful information regarding Cloud Services, I also have some valuable information regarding the Best Cloud Application Development Services in USA

  10. DevOps engineers that are passionate and competent are challenging to find. A dedicated individual is ideal for DevOps consulting services. It is vital for them to be well versed in cloud DevOps consulting. Use these DevOps engineer interview questions to find the most qualified applicants.

  11. Recruitment Platforms or recruitment agency software are platforms that help a business boost the recruitment process with the help of tools. The Recruitment agency software makes use of applicant tracking software (ATS) which is a great tool that helps in tracking candidates’ applications. The applicant tracking system (ATS) tracks the candidate’s applications and makes a list of candidates that would best fit the business.
    Please visit: Best recruitment software

  12. Hitachi Systems India is driving the digital change in the businesses through integrated IT solutions and services. Our multi-technology capabilities are backed by experience to serve large enterprises to mid-size and small businesses across various industries. Our endeavor is to help businesses become more agile and act in response to rapidly changing technology landscape due to digital transformation.
    Cloud services in India

  13. Fantastic as we are to engage a fintech consultant as part of our new project.

  14. The key for moving large scale commodities internationally is ship chartering as it creates a unique pricing advantage.

  15. Thank you, this is useful for when you are travelling for work and really want to book airport lounge.

  16. The platform is unique which would create a unique edge for commodity traders to trade commodities globally.

  17. We have experimented with this whilst building the best platform to book a boutique hotel.

  18. Its not everyday that you go away specially as you mentioned here, therefor its important to make wise decisions and go through halal booking.

  19. Thank you for this, one of the best structures really to handle investments is through family office structure.

  20. Thank you. There are alot of players in the market but you need to focus on a niche and thats why we are one of the best london luxury property developers around.

  21. Excellent article. The quality is very important when you are about to book a hotel when decision for a place to stay during your business trip.

  22. Brilliant article and thank you for taking the time to write about it, we came across it as we were looking for commodity suppliers.

  23. Part 10 of the OpenStack series, dedicated to Heat orchestration, is a pivotal resource. How Hack Mobile It unravels the power of automating cloud application deployment, a critical aspect of OpenStack's capabilities.