[nova][ptg] Flavor explosion

Brin Zhang(张百林) zhangbailin at inspur.com
Sun Nov 10 16:09:06 UTC 2019

Hi all,
 Based on the discussion on the Train PTG, and reference to the records on the etherpad and ML, I was updated that SPEC, and I think there are some details need to be discussed, and I have listed some details,
 if there are any other things that I have not considered, or if some place that I thoughtless, please post a discussion.

 List some details as follows, and you can review that spec in https://review.opendev.org/#/c/663563.

 Listed details:
   - Don't change the model of the flavor in nova code and in the db.

  - No change for operators who choose not to request the flavor extra specs group.

  - Requested more than one flavor extra specs groups, if there are different values for the same spec will be raised a 409.

  - Flavor in request body of server create that has the same spec in the request ``flavor_extra_specs_group``, it will be raised a 409.

  - When resize an instance, you need to compare the ``flavor_extra_specs_group`` with the spec request spec, otherwise raise a 400.

Items: [lists.openstack.org代发][nova][ptg] Flavor explosion

original spec: https://review.opendev.org/#/c/663563 with -2s

The first round of discussion was resulted in no agreement. Then on Friday we revisited the issue based on mdbooth's proposal about composability.

Agreement in the room:
* Do not try to change the model of the flavor in nova code and in the db.
* Define a "ComposableFlavorBit" (bikeshed on the name please) REST API entity
  that can hold any kind of flavor bits (extra specs, normal flavor fields),
  propose some format in the spec for it. This entity can only be created by
  the admin by default
* Extend the server create REST API to allow the end user to specify what
  "ComposableFlavorBit"s she wants to add to the "base" flavor she used in the
  create request.
* The nova api then merges the "ComposableFalvorBit"s with the base flavor and
  embed the resulted flavor object into the instance.
* Do a similar thing for resize

* brinzhang (with possible help from yawang) to re-write the spec


More information about the openstack-discuss mailing list