keeps the clouds up ;)
Agenda
•   Overview
•   Architecture
•   Bootstrap Methods
•   Heat JEOS
•   Oz
•   CloudFormation Scripts
•   Template Dissection
•   Advanced Services
•   Status & Roadmap
•   Next Steps                                   Copyright © PicGifs.com - 2008 / 2011 - All rights reserved




13-10-2012              keeps the clouds up ;)                                                         2
Overview
•   REST API to orchestrate multiple composite cloud applications
•   AWS CloudFormation implementation for OpenStack API
•   Orchestrates apps, called as stack, by executing a CloudFormation template
•   Allows creation of resource types - instances, floating IPs, volumes, security
    groups, users, etc.
•   Some advanced services - HA, auto-scaling and nested stacks
•   Compatible with AWS CloudFormation legacy (CLI based on boto and compatible
    API)
•   Integrates well with Puppet and Chef
•   OpenStack style project
      –      Tight integration with other OpenStack projects
      –      Python 2, matching OpenStack design principals
      –      ASL V2 License and hosted on Github
      –      Integrated with Stackforce (OpenStack workflow gerrit/jenkins)
•   Started in March, 2012
•   Active community of 9 developers (All from Red Hat)

                                                                              @sdake

13-10-2012                                    keeps the clouds up ;)                   3
Architecture




                                         Source: http://heat-api.org



13-10-2012      keeps the clouds up ;)                                 4
User Interface




                                          Source: http://heat-api.org



13-10-2012       keeps the clouds up ;)                                 5
Heat Engine




                                        Source: http://heat-api.org
13-10-2012     keeps the clouds up ;)                                 6
Bootstrap Methods
•   Golden Image – everything some scratch
•   CloudFormation + cloud-init as startup script
•   CloudFormation metadata + helper scripts
•   Use Chef or Puppet




13-10-2012            keeps the clouds up ;)        7
Heat JEOS
• Build Just Enough Operating System images
• Will be setup with cloud-init and cfn-tools
• Optionally, register with glance




13-10-2012          keeps the clouds up ;)      8
Oz… (The wizard!)
• Automated installation of guest OS
• Create TDL files to feed as input into the
  building process
                    SAMPLE TDL file:
                    <template>
                      <name>NAME</name>
                        <os>
                          <name>DISTRO</name>
                          <version>VERSION</version>
                          <arch>ARCH</arch>
                          <install type='iso'>
                             <iso>PATH TO ISO</iso>
                          </install>
                        </os>
                      <description>DESCRIPTION</description>
                    </template>




13-10-2012            keeps the clouds up ;)                   9
CloudFormation helper scripts
• cfn-init - Reads instance resource, installs packages,
  and starts services
• cfn-signal - Waits for an application to be ready before
  continuing with stack creation
• cfn-hup - Handle updates to metadata and execute
  custom hooks
• cfn-get-metadata - Retrieve all metadata defined for a
  resource or a specific key or subtree of the resource's
  metadata
• cfn-update-stack - Updates metadata content
• Stack synchronization and rollback through
  WaitCondition
13-10-2012              keeps the clouds up ;)               10
Template Dissection
•   Templates - JSON files which define your stack
•   Stacks - Collection of resources to manage together
•   Parameters - Values defined in the template
•   Mappings - Conditional parameter values
•   Pseudo Parameters – Pre declared values
•   Resources – Features which declare a stack
•   Resource Properties – Values for resources
•   References – Any named item
•   Intrinsic Functions – Accomplish complex operations
•   Outputs – Return values back to the template user
                            Source: AWS CloudFormation Documentation
13-10-2012               keeps the clouds up ;)                        11
Advanced Services
• Not just a resource brokering service

• Autoscaling
• CloudWatch




13-10-2012          keeps the clouds up ;)   12
Current Status
• Integration with Common, Glance, Keystone,
  Swift, and Nova
• Implementation of the AWS CloudFormation API
• Usable implementation of AWS CloudWatch API
• Complete implementation for all non-VPC related
  resource types in CloudFormation
• Instance and application high availability
• Autoscaling
• Nested Stacks

13-10-2012          keeps the clouds up ;)      13
13-10-2012   keeps the clouds up ;)   14
Roadmap

             G Release                                          F Release

 •   Project Incubation                                   • Hardening of source tree
 •   Optimizing project governance to match               • Improving source tree to
     OpenStack standards                                    meet OpenStack design
 •   Complete implementation of AWS
                                                            principles
 •   CloudWatch API, contributing
     appropriate technology into Ceilometer
                                                          • Promotion to OpenStack
 •   Complete integration with Quantum,                     core
     providing complete VPC feature
     coverage

      TOSCA - Topology and Orchestration Specification for Cloud Applications


13-10-2012                             keeps the clouds up ;)                          15
Where to go
• http://wiki.openstack.org/Heat
• http://heat-api.org
• https://github.com/heat-api/heat
      – Code, Wiki, Tracker
• References
      – http://docs.amazonwebservices.com/AWSCloudFormation/lates
        t/APIReference/API_CreateStack.html
      – http://docs.amazonwebservices.com/AWSCloudFormation/lates
        t/UserGuide/create-stack.html
      – http://docs.amazonwebservices.com/AWSCloudFormation/lates
        t/UserGuide/aws-template-resource-type-ref.html
      – http://www.oasis-
        open.org/committees/tc_home.php?wg_abbrev=tosca

13-10-2012                    keeps the clouds up ;)            16
Related Projects
• http://wiki.openstack.org/Donabe
      – multi-tier Application Container Service
• http://wiki.openstack.org/DatabaseAsAService
   – could be used to provide AWS::RDS::DBInstance
• http://wiki.openstack.org/QueueService
   – could be used to provide AWS::SQS::Queue




13-10-2012                   keeps the clouds up ;)   17
OpenStack Summit 2012
• October 15th – 18th in San Diego

• http://www.openstack.org/summit/san-diego-
  2012/openstack-summit-sessions/

• https://www.openstack.org/blog/2012/10/pa
  rticipating-remotely-to-openstack-summit-
  2012/
13-10-2012          keeps the clouds up ;)   18
Thank You

                     @kiranmurari
             linkedin.com/in/kiranmurari
              slideshare.net/kiranmurari

13-10-2012            keeps the clouds up ;)   19

Introduction to OpenStack Heat

  • 1.
  • 2.
    Agenda • Overview • Architecture • Bootstrap Methods • Heat JEOS • Oz • CloudFormation Scripts • Template Dissection • Advanced Services • Status & Roadmap • Next Steps Copyright © PicGifs.com - 2008 / 2011 - All rights reserved 13-10-2012 keeps the clouds up ;) 2
  • 3.
    Overview • REST API to orchestrate multiple composite cloud applications • AWS CloudFormation implementation for OpenStack API • Orchestrates apps, called as stack, by executing a CloudFormation template • Allows creation of resource types - instances, floating IPs, volumes, security groups, users, etc. • Some advanced services - HA, auto-scaling and nested stacks • Compatible with AWS CloudFormation legacy (CLI based on boto and compatible API) • Integrates well with Puppet and Chef • OpenStack style project – Tight integration with other OpenStack projects – Python 2, matching OpenStack design principals – ASL V2 License and hosted on Github – Integrated with Stackforce (OpenStack workflow gerrit/jenkins) • Started in March, 2012 • Active community of 9 developers (All from Red Hat) @sdake 13-10-2012 keeps the clouds up ;) 3
  • 4.
    Architecture Source: http://heat-api.org 13-10-2012 keeps the clouds up ;) 4
  • 5.
    User Interface Source: http://heat-api.org 13-10-2012 keeps the clouds up ;) 5
  • 6.
    Heat Engine Source: http://heat-api.org 13-10-2012 keeps the clouds up ;) 6
  • 7.
    Bootstrap Methods • Golden Image – everything some scratch • CloudFormation + cloud-init as startup script • CloudFormation metadata + helper scripts • Use Chef or Puppet 13-10-2012 keeps the clouds up ;) 7
  • 8.
    Heat JEOS • BuildJust Enough Operating System images • Will be setup with cloud-init and cfn-tools • Optionally, register with glance 13-10-2012 keeps the clouds up ;) 8
  • 9.
    Oz… (The wizard!) •Automated installation of guest OS • Create TDL files to feed as input into the building process SAMPLE TDL file: <template> <name>NAME</name> <os> <name>DISTRO</name> <version>VERSION</version> <arch>ARCH</arch> <install type='iso'> <iso>PATH TO ISO</iso> </install> </os> <description>DESCRIPTION</description> </template> 13-10-2012 keeps the clouds up ;) 9
  • 10.
    CloudFormation helper scripts •cfn-init - Reads instance resource, installs packages, and starts services • cfn-signal - Waits for an application to be ready before continuing with stack creation • cfn-hup - Handle updates to metadata and execute custom hooks • cfn-get-metadata - Retrieve all metadata defined for a resource or a specific key or subtree of the resource's metadata • cfn-update-stack - Updates metadata content • Stack synchronization and rollback through WaitCondition 13-10-2012 keeps the clouds up ;) 10
  • 11.
    Template Dissection • Templates - JSON files which define your stack • Stacks - Collection of resources to manage together • Parameters - Values defined in the template • Mappings - Conditional parameter values • Pseudo Parameters – Pre declared values • Resources – Features which declare a stack • Resource Properties – Values for resources • References – Any named item • Intrinsic Functions – Accomplish complex operations • Outputs – Return values back to the template user Source: AWS CloudFormation Documentation 13-10-2012 keeps the clouds up ;) 11
  • 12.
    Advanced Services • Notjust a resource brokering service • Autoscaling • CloudWatch 13-10-2012 keeps the clouds up ;) 12
  • 13.
    Current Status • Integrationwith Common, Glance, Keystone, Swift, and Nova • Implementation of the AWS CloudFormation API • Usable implementation of AWS CloudWatch API • Complete implementation for all non-VPC related resource types in CloudFormation • Instance and application high availability • Autoscaling • Nested Stacks 13-10-2012 keeps the clouds up ;) 13
  • 14.
    13-10-2012 keeps the clouds up ;) 14
  • 15.
    Roadmap G Release F Release • Project Incubation • Hardening of source tree • Optimizing project governance to match • Improving source tree to OpenStack standards meet OpenStack design • Complete implementation of AWS principles • CloudWatch API, contributing appropriate technology into Ceilometer • Promotion to OpenStack • Complete integration with Quantum, core providing complete VPC feature coverage TOSCA - Topology and Orchestration Specification for Cloud Applications 13-10-2012 keeps the clouds up ;) 15
  • 16.
    Where to go •http://wiki.openstack.org/Heat • http://heat-api.org • https://github.com/heat-api/heat – Code, Wiki, Tracker • References – http://docs.amazonwebservices.com/AWSCloudFormation/lates t/APIReference/API_CreateStack.html – http://docs.amazonwebservices.com/AWSCloudFormation/lates t/UserGuide/create-stack.html – http://docs.amazonwebservices.com/AWSCloudFormation/lates t/UserGuide/aws-template-resource-type-ref.html – http://www.oasis- open.org/committees/tc_home.php?wg_abbrev=tosca 13-10-2012 keeps the clouds up ;) 16
  • 17.
    Related Projects • http://wiki.openstack.org/Donabe – multi-tier Application Container Service • http://wiki.openstack.org/DatabaseAsAService – could be used to provide AWS::RDS::DBInstance • http://wiki.openstack.org/QueueService – could be used to provide AWS::SQS::Queue 13-10-2012 keeps the clouds up ;) 17
  • 18.
    OpenStack Summit 2012 •October 15th – 18th in San Diego • http://www.openstack.org/summit/san-diego- 2012/openstack-summit-sessions/ • https://www.openstack.org/blog/2012/10/pa rticipating-remotely-to-openstack-summit- 2012/ 13-10-2012 keeps the clouds up ;) 18
  • 19.
    Thank You @kiranmurari linkedin.com/in/kiranmurari slideshare.net/kiranmurari 13-10-2012 keeps the clouds up ;) 19