[openstack-dev] [nova][cinder] Schedule Instances according to Local disk based Volume?
mriedemos at gmail.com
Sat Feb 25 14:53:12 UTC 2017
On 2/23/2017 9:27 PM, Zhenyu Zheng wrote:
> BTW, I think this can be done using new placement service, using the
> custom resource provider? correct?
This came up briefly on Friday at the PTG but unfortunately jaypipes and
cdent had already left. You should talk to them about this for more
details. It's my understanding that at some point you'd have a resource
provider for the compute node and a resource provider for the cinder
volume node (same host in this case), and you'd define a type of
"distance" attribute between them, which would be 0. Then when
requesting the instance create, you provide the distance qualifier of 0
meaning you want the server and volume on the same resource provider (if
possible). The distance attribute would be generic, but for the local
block device scenario you want it to work with 0 distance.
I'm not exactly sure how this is modeled, but I think it would be via an
aggregate such that both the compute and volume resource providers are
in the same aggregate association and the distance=0 is defined on the
aggregate. If that's the case, I don't see how it makes the setup for
the operator much less complicated than it is today where there has to
be a matching AZ for each compute and volume node (which gets unwieldy
when you start to have several thousand nodes). It would make the user
experience simpler though because instead of needing to select one out
of several thousand available AZs, I just create a server with a block
device and specify distance=0 as a required constraint.
I'm personally not sure how close we are to functionality like that, it
seems like that would be a ways out to me, i.e. we have a lot of other
work to do before we get to that point.
More information about the OpenStack-dev