[openstack-dev] Dynamically adding Extra Specs

Dhvanan Shah dhvanan at gmail.com
Wed Jan 27 07:29:50 UTC 2016

Hey Jay!

Thanks for the clarification. There was another thing that I wanted to
know, is there any provision to pass extra arguments or some extra
specifications along with the VM request to nova. To give you some context,
I wanted to pass a host:vm mapping to the nova scheduler for its host
selection process, and I'm providing this mapping from outside of the
openstack architecture. So I need to send this information along with the
request to the scheduler. One way of doing this was creating new flavors
with their extra specification as different hosts, but that would lead to
as you pointed out earlier a "flavor explosion" problem.

So is there a way to pass some extra arguments or some additional
information to nova.

On Fri, Jan 22, 2016 at 7:17 PM, Jay Pipes <jaypipes at gmail.com> wrote:

> Hi! Comments inline...
> On 01/22/2016 01:26 AM, Dhvanan Shah wrote:
>> Hi,
>> I had a few queries regarding adding extra specs for VM requests.
>> According to my understanding if I want to add extra specs to requests
>> then I need to change that in different flavors adding those
>> capabilities by setting them in the flavors. But if the requests that I
>> get have varying values for those extra capabilities then it seems to
>> create an issue as the values in the flavors are static. Please correct
>> me if I'm wrong.
> Right, flavors are static blobs of both resources (amounts of things
> requested by the user) and capabilities (free-form key/value pairs in
> extra_specs). For every variation you may want to offer your cloud users,
> you need to create a new flavor in the system, and your cloud users must
> select that flavor when booting a VM.
> Don Dugger from Intel has called this problem "flavor explosion", which I
> have comically re-labeled "the Skittles problem". We have a long-term plan
> to allow for the ability to list a set of capabilities present in the
> deployment and allow a cloud user to "mix and match" resource amounts and
> required capabilities in a more flexible way, but that work is likely 9-12
> months out in reality.
> So I wanted to know as to how I could dynamically add those extra specs
>> best suiting each request. Is there a way of mentioning the extra specs
>> everytime I spawn a VM through the nova cli? Setting and unsetting the
>> extra specs everytime I spawn VM's according to my need would be quite
>> inefficient as it makes changes to the database.
> Yes, it is a clunky and inflexible API right now, I agree. The genesis of
> the flavor concept comes from Rackspace Cloud Servers, which modeled its
> flavor concept on the Amazon EC2 instance types concept. This model works
> well for public clouds, because a) they use the flavor as a stock-keeping
> unit (SKU) so therefore this system makes billing easier, and b) it reduces
> the number of hardware configuration options that public cloud operators
> need to provide at scale to users.
> If you are interested in this area, follow conversations and blueprints
> with the terms "flavor decomposition", "host capabilities", and "resource
> representation".
> Best,
> -jay
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Dhvanan Shah
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160127/8c398e88/attachment.html>

More information about the OpenStack-dev mailing list