14
14
Building JEOS images for use with Heat
15
15
======================================
17
There are several approaches to building images which will work with heat, but one approach, using Oz wrapped in a convenience script, is documented below
16
Heat's full functionality can only be used when launching cloud images that have
17
the heat-cfntools_ package installed.
18
This document describes some options for creating a heat-cfntools enabled image
21
.. _heat-cfntools: https://github.com/openstack/heat-cfntools
23
Building an image with diskimage-builder
24
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
25
diskimage-builder_ is a tool for customizing cloud images.
26
tripleo-image-elements_ is a collection of diskimage-builder elements related
27
to the TripleO_ project. It includes an element for heat-cfntools which can be
28
used to create heat-enabled images.
30
.. _diskimage-builder: https://github.com/openstack/diskimage-builder
31
.. _tripleo-image-elements: https://github.com/openstack/tripleo-image-elements
32
.. _TripleO: https://wiki.openstack.org/wiki/TripleO
34
Fetch the tool and elements::
36
git clone https://github.com/openstack/diskimage-builder.git
37
git clone https://github.com/openstack/tripleo-image-elements.git
39
To create a heat-cfntools enabled image with the current release of Fedora x86_64::
41
export ELEMENTS_PATH=tripleo-image-elements/elements
42
diskimage-builder/bin/disk-image-create vm fedora heat-cfntools -a amd64 -o fedora-heat-cfntools
44
The image may then be pushed to glance, e.g::
46
source ~/.openstack/keystonerc
47
glance image-create --name fedora-heat-cfntools --is-public true --disk-format qcow2 --container-format bare < fedora-heat-cfntools.qcow2
49
To create a heat-cfntools enabled image with the current release of Ubuntu i386::
51
export ELEMENTS_PATH=tripleo-image-elements/elements
52
diskimage-builder/bin/disk-image-create vm ubuntu heat-cfntools -a i386 -o ubuntu-heat-cfntools
54
If you are creating your own images you should consider creating golden images
55
which contain all the packages required for the stacks that you launch. You can do
56
this by writing your own diskimage-builder elements and invoking those elements
57
in the call to disk-image-create.
59
This means that the resulting heat templates only need to modify configuration
60
files. This will speed stack launch time and reduce the risk of a transient
61
package download failure causing the stack launch to fail.
63
Building an image with Oz
64
~~~~~~~~~~~~~~~~~~~~~~~~~
65
Another approach to building a heat-cfntools enabled image is to use Oz wrapped in a convenience script.
19
67
The example below demonstrates how to build an F17 image, but there are Oz tdl templates for several other distributions provided in heat-templates/jeos