To use the configuration drive, you must follow the following requirements for the compute host and image.
Compute host requirements
The following hypervisors support the configuration drive: libvirt, XenServer, Hyper-V, and VMWare.
To use configuration drive with libvirt, XenServer, or VMWare, you must first install the genisoimage package on each compute host. Otherwise, instances do not boot properly.
Use the
mkisofs_cmd
flag to set the path where you install the genisoimage program. If genisoimage is in same path as thenova-compute
service, you do not need to set this flag.To use configuration drive with Hyper-V, you must set the
mkisofs_cmd
value to the full path to anmkisofs.exe
installation. Additionally, you must set theqemu_img_cmd
value in thehyperv
configuration section to the full path to anqemu-img
command installation.
Image requirements
An image built with a recent version of the cloud-init package can automatically access metadata passed through the configuration drive. The cloud-init package version 0.7.1 works with Ubuntu and Fedora based images, such as Red Hat Enterprise Linux.
If an image does not have the cloud-init package installed, you must customize the image to run a script that mounts the configuration drive on boot, reads the data from the drive, and takes appropriate action such as adding the public key to an account. See the section called “Configuration drive contents” for details about how data is organized on the configuration drive.
If you use Xen with a configuration drive, use the
xenapi_disable_agent
configuration parameter to disable the agent.
Guidelines
Do not rely on the presence of the EC2 metadata in the configuration drive, because this content might be removed in a future release. For example, do not rely on files in the
ec2
directory.When you create images that access configuration drive data and multiple directories are under the
openstack
directory, always select the highest API version by date that your consumer supports. For example, if your guest image supports the 2012-03-05, 2012-08-05, and 2013-04-13 versions, try 2013-04-13 first and fall back to a previous version if 2013-04-13 is not present.