[nova] providing a local disk to a Nova instance

Thomas Goirand zigo at debian.org
Tue Sep 1 14:35:45 UTC 2020


Hi Nova team!

tl;dr: we would like to contribute giving instances access to physical
block devices directly on the compute hosts. Would this be accepted?

Longer version:

About 3 or 4 years ago, someone wrote a spec, so we'd be able to provide
a local disk of a compute, directly to a VM to use. This was then
rejected, because at the time, Cinder had the blockdevice drive, which
was more or less achieving the same thing. Unfortunately, because nobody
was maintaining the blockdevice driver in Cinder, and because there was
no CI that could test it, the driver got removed.

We've investigated how we could otherwise implement it, and one solution
would be to use Cinder, but then we'd be going through an iSCSI export,
which would drastically reduce performances.

Another solution would be to manage KVM instances by hand, not touching
anything to libvirt and/or OpenVSwitch, but then we would loose the ease
of using the Nova API, so we would prefer to avoid this direction.

So we (ie: employees in my company) need to ask the Nova team: would you
consider a spec to do what was rejected before, since there's now no
other good enough alternative?

Our current goal is to be able to provide a disk directly to a VM, so
that we could build Ceph clusters with an hyper-converged model (ie:
storage hosted on the compute nodes). In this model, we wouldn't need
live-migration of a VM with an attached physical block device (though
the feature could be added on a later stage).

Before we start investigating how this can be done, I need to know if
this has at least some chances to be accepted or not. If there is, then
we'll probably start an experimental patch locally, then write a spec to
properly start this project. So please let us know.

Cheers,

Thomas Goirand (zigo)



More information about the openstack-discuss mailing list