4. TripleO
OpenStack On OpenStack
Goal:
Deploy a fully functional OpenStack from a
minimal OpenStack
5. TripleO tool collection
TripleO uses or reuse various OpenStack tools:
● Heat
● Ironic and Nova Bare-metal
● DiskImage Builder (aka DIB) and some
image elements
● os-{apply,collect,refresh}-config
● probably some more
6. Heat
An API on rule them all
Describe an infrastructure and inject it in your
OpenStack tenant (VM, disk, autoscaling, etc)
7. DiskImage Builder
The gold image generator
A tool to generate image:
● Very modular
● Easy to extend using “elements”
8. DiskImage Builder
An DIB element is a set of files:
● Adjust the image content
● Install packages in the image
● Configuration file templates
● Configuration scripts.
Element can depend on another element (e.g:
fedora depends on yum)
9. DiskImage Builder
● fedora: the root element
● vm: will ensure we generate a VM image
● myapplication: will install the application itself
and the configuration template
10. os-{apply,collect,refresh}-config
Super light configuration management tool
1)Retrieve values from the meta servers
2)Pass them through configuration template
3)Apply the configuration
13. common Paradigm
● Boot your machine with a very standard
Operating System
– Cloud image
– Distro installed with a Kickstart or a preseed
● Run a configuration management tools
– pull packages and resources from the network
– apply configuration
– Keep the OS up to date
14. Tripleo (and eDeploy) Paradigm
● Prepare some specialized images
● Use them to boot the machines (VM or bare-metal)
● Apply the configuration, without external
network access
15. The big changes
● The CM tool should not install package by itself
● The CM tool should only adjust the
configuration
23. Pros
Way easier to redeploy the application
● grab the images
● call heat, it will
– Deploy the infrastructure
– Export the meta-data for os-collect-config
24. Pros
Reduce the risk of failure
● Images + the meta data from heat should be
enough to get the application running
25. Pros
Super fast
● Start the machines from the images
● Pass the meta data through the templates
● Write the configuration
26. Pros
Consum less resources
● I/O: no package installation
● CPU: configuration only do the bare minimum
28. The elements
● No repository with shared DIB “elements” yet
● OpenStack Heat and os-*-config evolve quickly,
the use of an up to date OpenStack release is a
must (for the moment)
29. Data
You need a strategy for your data storage
● TripleO use NFS here
● eNovance eDeploy use another upgrade
mechanism