Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flavor specs: Add extra_specs standardization #74

Open
Tracked by #285
garloff opened this issue Jun 21, 2022 · 6 comments
Open
Tracked by #285

Flavor specs: Add extra_specs standardization #74

garloff opened this issue Jun 21, 2022 · 6 comments

Comments

@garloff
Copy link
Contributor

garloff commented Jun 21, 2022

While we have the capability to encode lots of details in the flavor names (also see discussion at #73), we often will have cloud providers without such a huge variety in hardware and thus flavors. So no need to use all the optional suffixes; instead the provider would be well advised to stick to the generic shorter (and memorable) flavor names.
Nevertheless, there should be a way to communicate more details than are generally available in the flavor API (which is ram, vcpus, disk). There is a field extra_specs that could be used for this. This will need to be standardized.

@garloff
Copy link
Contributor Author

garloff commented Jun 21, 2022

@garloff
Copy link
Contributor Author

garloff commented Jun 21, 2022

@garloff
Copy link
Contributor Author

garloff commented Mar 9, 2023

@artificial-intelligence
Copy link
Contributor

artificial-intelligence commented May 5, 2023

so, what exactly is the list of extra specs we want to standardize?

I feel this is handwaved away too much:

is ram, vcpu, disk sufficient?

there are many more extra_specs defined upstream, like numa stuff, even IPv4 addresses.

what is the benefit of standardizing this, if we only copy verbatim a strict subset of upstreams possible values?

I'd argue that the construct of extra_specs is already highly implementation specific, that is, it is afaik only available in openstack and will continue to be only available there.

So while I think it is worthwhile to point to extra_specs, when customers want to specify images in more details, I don't see immediate benefit in copying a random subset of upstreams possible values for extra_specs and call that a standard :edit: until we can present an argument why these blessed extra_specs are extremly important and the others are not.

@mbuechse
Copy link
Contributor

mbuechse commented May 9, 2023

I find the OpenStack documentation rather confusing. At one point it states

The key-value pairs used must correspond to well-known options

At another point it states

While there are standard extra specs, deployments can define their own extra specs to be used with host aggregates and custom scheduler filters as necessary

The list of well-known options is long, and some of the public cloud people seem to advise using them, but there are qualifications attached to many of these options, such as "only supported by the libvirt virt driver", and I don't know whether that is a problem for us.

Addendum: It doesn't help the confusion that the CLI tool seems to refer to these extra specs as "properties". The CLI tool itself seems to be rather poorly documented as well. :(

@mbuechse mbuechse mentioned this issue May 10, 2023
60 tasks
@fkr
Copy link
Member

fkr commented Nov 14, 2023

I'll add a longer commentary based on the outcomes of the nova operator hour of the Caracal vPTG here later and elaborate on why a different way of pursuing this is what upstream suggested.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants