OpenStack: Notes on enabling Glance multistore support using a Cinder backend
Applies to
- OpenStack
- DevStack
Description
Glance (the Image service for OpenStack) provides a catalog of images that are used to create VMs.
Glance can make use of multiple image backends such as (but not limited to):
- file (local storage)
- http
- rbd
- swift
- cinder
In this article, we'll cover using Cinder as a backend for Glance. There are a number of advantages to using Cinder as a backend for Glance:
- Leverage the logical separation that ONTAP Storage Virtual Machines (SVM) provide. This is useful if you want each project / tenant to manage and own their own images
- The potential to significantly improve provisioning times
- With a non-Cinder based image backend, during VM / volume provisioning, the glance image would need to be copied from the glance store to a mounted volume. This usually leverages Linux
ddto perform the copy, which could be time consuming - Using a Cinder based image backend, if the glance image (Image-Volume) is based on the same flexvol as the boot volume being created, Glance will instantly clone the image volume to create the boot volume. This can significantly decrease provisioning times.
- With a non-Cinder based image backend, during VM / volume provisioning, the glance image would need to be copied from the glance store to a mounted volume. This usually leverages Linux
In the following procedure, we will configure Glance to handle two possible use cases:
- Glance images are owned by a single project
- Glance images are owned by individual projects / tenants
Both configurations can leverage instant clones (if the image volume is present in the same flexvol as the cinder volume being created). The "each project / tenant owns their own images" meets the criteria of creating logical separation between tenants. Which could be useful for billing purposes (charging customers for the storage their images use).
