OpenStack & Nimble Storage ITO feature

Nimble Storage’s Cinder Driver includes a new feature called ITO – Image Transfer Optimization.

With most cinder backends, every time you deploy a new instance from an image, a volume/LUN gets created on the backend storage.
This means you might potentially use up a lot of space for data which is redundant.
In order to avoid unnecessary duplication of data, Nimble Storage introduced ITO – Image Transfer Optimization.

ITO will be helpful in cases where you might want to create 20 instances at a time from the same ISO.
With ITO, only one volume with the ISO will be created and then zero-copy clones will be utilized in order to boot the other 19 instances.
This seems to be the most space efficient way for deploying instances.

The benefits are simple:

  • Instant Copy
  • No duplicated data
  • Shared Cache

Below, you can see the workflow for deploying instances without ITO enabled:
no_ito

And here with ITO enabled:

ito_enabled

 

Thanks to @wensteryu for the images.

Change The OpenStack Glance Image Store

Today I ran into an issue where I ran out of space on my root partition due to multiple ISOs which I have stored in OpenStack Glance. After some tests, I decided to change the Glance image store to an iSCSI volume attached to my controller.

Let’s get started with the basic iSCSI setup (no MPIO), I assume you’ve already created a volume on your storage and set the ACL accordingly :