1. Catalog Based Deployment
Using
HOT & Murano
Udayendu Kar {udayendu.kar@gmail.com}
Sr. Technical Architect
Avaya India Pvt Ltd
Indian OpenStack
User Group
S u m m e r
2 0 17
PuneLet'sOpenStack2017Meetup
2. Agenda:
AutomationinCloudInfrastructure
What's inOpenstack for Automation
Heat Orchestration Template {HOT}
o Introduction to HOTFormat
o OpenStack Heat architecture
o HOT deployment (Demo)
Application Catalog&HOT template
o Introduction to Murano
o Murano architecture
o Murano packaging
o App Catalog&deployment (Demo)
Questions& Answers
3. TABLE OF
CONTENTS
Automation in Cloud Infrastructure:
Why ??......
Benefits:
o Quick deployment of instances & application
o Multiple deployment of instances at a time
o Flexibility to integrate/configure at the time of deployment
o For developers no need to understand the admin work flow
o Developers can focus on development
o Automation can save time, money & manpower
o Easy to build & decommission the infra as per the requirement
o Easy management of complete infrastructure
o Forecasting is easy to scale the infra as per requirement
4. TABLE OF
CONTENTS
What's in Openstack for Automation:
o Heat Orchestration Template (HOT)
o Application Catalogs using HOT & Murano
Heat Orchestration Template {HOT}
o Heat is an orchestration tool that used to establish the
relationships between OpenStack resources of all kinds and
make that available in human readable format as well as
machine readable format. It provides the flexibility to use the
cloud infrastructure as codes through which scale-in and scale-
out and lifecycle management becomes really easy.
o By default this tool is integrated with OpenStack and
HOT templates are written as structured YAML text files.
6. TABLE OF
CONTENTS
HOT Structure/Format:
o parameters
o resources
o outputs
Every HOT template should start with "heat_template_version".
Based on "heat_template_version" specific functionalities used to
work.
HOT Parameters:
User defined parameters passed into template either from CLI or from GUI.
Parameters include type, description, default value, hidden, and
constraints.
7. TABLE OF
CONTENTS
Example:
HOT Resources:
Resources for Heat to Orchestrate Openstack instances
This Consists of Type, Properties, DependsOn
Resources produce global attributes
8. TABLE OF
CONTENTS
Example:
NOTE:In the above example “instance_type” will call all the value
as defined in “instance_type” under parameters. Similarly need to
define “Keyname”, “Image_ID” under parameters.
HOT Output:
o This section displayed via CLI/GUI to identify important
information of template
o Includes a description and value field.
9. TABLE OF
CONTENTS
Example:
After preparing the template with all these information, we need to pass
them to the Heat Engine either though CLI or though GUI. If CLI, then best
option is to save these content into a file with (.yaml) extension so that
heat engine can hear it. If GUI, then there are three options available file,
directinput, url.
Heat engine is having a very simple and straight forward architecture as
demonstrated in next slide.
10. TABLE OF
CONTENTS
Issues with HOT template:
o HOT template directly cant be stored in the OpenStack GUI for
multiple users.
o Usually its not a good practice to allow all the users to have the
CLI access to deploy the HOT templates as security and control
will be the biggest issues for the whole cloud infrastructure.
o Also its not possible to expect all end users to be highly
technical in this product as it may not be their primary domain.
Solutions with Application Catalog:
o By making a common platform to store all the HOT templates
with some log and description can help to overcome from the
above issues.
o That platform can be provided by a tool called Murano.
12. TABLE OF
CONTENTS
Introduction to Murano:
Murano isan application catalogfromwhich youcan publish cloud-ready
applications that are defined in different formats, such as the Heat templates.It
provides a user interface and APIsto construct and deploycomposite
environments on the application abstraction level, then manages their lifecycle.
Heat interacts with Murano asan OpenStack orchestration program that
launches composite cloud environmentsusingeither an OpenStack-native
RESTful API.Itsupportstwo languages:
o YAML{Yet another markup language}
o YAQL{Yet Another Query Language}
HOT packagesprovide the blueprints to orchestrate Heat-based application
deployment and include:
o Heat template
o Manifest
o Logo
Once the above three components are ready, have to use the ‘zip’ command
to make a zip file including all the above.