Custom Search

Monday, March 24, 2014

OpenStack Heat Getting Started


1)
Install heat with Devstack
===================

Heat Installation docs
------------------------------

https://wiki.openstack.org/wiki/Heat
https://wiki.openstack.org/wiki/Heat/GettingStartedUsingDevstack
https://wiki.openstack.org/wiki/Heat/TroubleShooting

Heat Devstack Script
----------------------------

http://git.openstack.org/cgit/openstack-dev/devstack/tree/lib/heat

a)
Adding the following line to your `localrc` file will enable the heat services

ENABLED_SERVICES+=,heat,h-api,h-api-cfn,h-api-cw,h-eng
## It would also be useful to automatically download and register VM images that Heat can launch.
# 64bit image (~660MB)
IMAGE_URLS+=",http://fedorapeople.org/groups/heat/prebuilt-jeos-images/F17-x86_64-cfntools.qcow2"
# 32bit image (~640MB)
IMAGE_URLS+=",http://fedorapeople.org/groups/heat/prebuilt-jeos-images/F17-i386-cfntools.qcow2"

b)
launchpad

https://launchpad.net/heat

2)
Heat Developer docs
================

https://wiki.openstack.org/wiki/Heat/TroubleShooting

* Heat is a service to orchestrate (Arrange or direct the elements of a situation to produce a desired effect) multiple composite cloud applications using the AWS CloudFormation template format, through both an OpenStack-native ReST API and a CloudFormation-compatible Query API.

* Heat provides a template based orchestration for describing a cloud application by executing appropriate 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 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. By providing very tight integration with other OpenStack core projects, all OpenStack core projects could receive a larger user base.

* Allow deployers to integrate with Heat directly or by adding custom plugins.
a)
Getting Started Guides

http://docs.openstack.org/developer/heat/getting_started/index.html

b)
Example Templates

http://docs.openstack.org/developer/heat/getting_started/on_ubuntu.html#example-templates

c)
Templates

http://docs.openstack.org/developer/heat/templates/index.html

d)
#Template guid

http://docs.openstack.org/developer/heat/template_guide/index.html

#Heat Orchestration Template (HOT)
http://docs.openstack.org/developer/heat/template_guide/hot_guide.html <==IMP
http://docs.openstack.org/developer/heat/template_guide/hot_spec.html <==IMP
http://docs.openstack.org/developer/heat/templates/hot/hello_world.html
https://github.com/openstack/heat-templates/blob/master/cfn/WordPress_Single_Instance.template <==Example

#CloudFormation Template (CFN)
http://docs.openstack.org/developer/heat/template_guide/cfn.html
http://docs.openstack.org/developer/heat/templates/cfn/WordPress_Single_Instance.html
https://github.com/openstack/heat-templates/blob/master/cfn/F17/WordPress_Single_Instance_deb.template <==Example

#Example of HOT template with AutoScaling and Load balancing
https://gist.github.com/sajuptpm/9738831

e)
Glossary

http://docs.openstack.org/developer/heat/glossary.html

f)
AWS CloudFormation

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-init.html

g)
Environments

http://docs.openstack.org/developer/heat/template_guide/environment.html#environments
https://wiki.openstack.org/wiki/Heat/Environments <====

h)
Heat/Providers

https://wiki.openstack.org/wiki/Heat/Providers
http://lists.openstack.org/pipermail/openstack-dev/2013-April/007989.html
Example of provider: rackspace.com, openstack.org

i)
Heat/Plugins

Resource Plugin modules
https://wiki.openstack.org/wiki/Heat/Plugins <===IMP

j)
Heat/AutoScaling

https://wiki.openstack.org/wiki/Heat/AutoScaling

k)
Heat/AWSAutoScaling

https://wiki.openstack.org/wiki/Heat/AWSAutoScaling

3)
services and utilities
=================

http://docs.openstack.org/developer/heat/man/index.html

a)
Heat services
-------------------

http://docs.openstack.org/developer/heat/man/index.html
https://wiki.openstack.org/wiki/Heat

a1)
heat:

The heat tool is a CLI which communicates with the heat-api to execute AWS CloudFormation APIs. Of course this is not required—developers could also use the Heat APIs directly.

a2)
heat-api:

http://docs.openstack.org/developer/heat/man/heat-api.html <====
The heat-api component provides an OpenStack-native ReST API that processes API requests by sending them to the heat-engine over RPC.

a3)
heat-api-cfn:

http://docs.openstack.org/developer/heat/man/heat-api-cfn.html
The heat-api-cfn component provides an AWS-style Query API that is compatible with AWS CloudFormation and processes API requests by sending them to the heat-engine over RPC.

a4)
heat-engine:

http://docs.openstack.org/developer/heat/man/heat-engine.html
The heat engine does the main work of orchestrating the launch of templates and providing events back to the API consumer.

a5)
heat-api-cloudwatch:

http://docs.openstack.org/developer/heat/man/heat-api-cloudwatch.html

b)
Heat utilities
-------------------

http://docs.openstack.org/developer/heat/man/index.html
https://wiki.openstack.org/wiki/Heat

b1)
heat-manage:

http://docs.openstack.org/developer/heat/man/heat-manage.html

b2)
heat-db-setup:

http://docs.openstack.org/developer/heat/man/heat-db-setup.html

b3)
heat-keystone-setup:

http://docs.openstack.org/developer/heat/man/heat-keystone-setup.html

4)
API Documentation
===============

http://api.openstack.org/api-ref-orchestration.html

5)
Scaling a Deployment
================

http://docs.openstack.org/developer/heat/scale_deployment.html

6)
Also Read
=========

a)
Metabata Service:

The metadata service is implemented by either the nova-api service or the nova-api-metadata service.
http://docs.openstack.org/admin-guide-cloud/content/section_metadata-service.html

b)
HAProxy:

The Reliable, High Performance TCP/HTTP Load Balancer
http://haproxy.1wt.eu/


1 comment:

  1. http://docs.openstack.org/developer/heat/getting_started/on_devstack.html

    http://sayalilunkad.github.io/posts/Devstack/

    http://devstack.org/lib/heat.html

    ReplyDelete