<div dir="ltr"><div>Hi everyone,</div><div><br></div><div>for some time I have been working on an implementation of a filter that</div><div>would allow to force instances to hosts which contain specific volumes.</div><div>
A blueprint can be found here:</div><div><a href="https://blueprints.launchpad.net/nova/+spec/volume-affinity-filter">https://blueprints.launchpad.net/nova/+spec/volume-affinity-filter</a><br></div><div>and an implementation here:<br>
</div><div><a href="https://review.openstack.org/#/c/29343/">https://review.openstack.org/#/c/29343/</a><br></div><div><br></div><div>The filter works for LVM driver and now it picks either a host containing specified volume</div>
<div>or nothing (thus effectively failing instance scheduling). Now it fails</div><div>primarily when it can't find the volume. It has been</div><div>pointed to me that sometimes it may be desirable not to fail instance</div>
<div>scheduling but to run it anyway. However this softer behaviour fits better</div><div>for weighter function. Thus I have registered a blueprint for the</div><div>weighter function:</div><div><a href="https://blueprints.launchpad.net/nova/+spec/volume-affinity-weighter-function">https://blueprints.launchpad.net/nova/+spec/volume-affinity-weighter-function</a></div>
<div><br></div><div>I was thinking about both the filter and the weighter working together. The former</div><div>could be used in cases when we strongly need storage space associated with an </div><div>instance and need them placed on the same host. The latter could be used when </div>
<div>storage space is nice to have and preferably on the same host</div><div>with an instance, but not so crucial as to have the instance running.</div><div><br></div><div>During reviewing a question appeared whether we need the filter and wouldn't things be better</div>
<div>if we removed it and had only the weighter function instead. I am not yet convinced</div><div>that the filter is useless and needs to be replaced with the weighter,</div><div>so I am asking for your opinion on this matter. Do you see usecases for the filter,</div>
<div>or the weighter will answer all needs?</div><div><br></div><div>With kind regards,</div><div>Alexey.</div></div>