[openstack-dev] [nova][ironic] Rocky PTG summary - nova/ironic
melanie witt
melwittt at gmail.com
Mon Mar 19 20:31:32 UTC 2018
Hello everyone,
Here's the summary etherpad [0] for the nova/ironic session from the PTG
in the Croke Park Hotel breakfast area, also included as a plain text
export on this email. Please feel freed to edit or reply to this thread
to add/correct anything I've missed.
Cheers,
-melanie
[0] https://etherpad.openstack.org/p/nova-ptg-rocky-ironic-summary
*Nova/Ironic: Rocky PTG Summary
https://etherpad.openstack.org/p/nova-ptg-rocky L245
*Key topics
* Disk partitioning, want to be able to pass a hardware config for
the hypervisor
* Virt driver interaction issues
* nova-compute crashing on startup
* maintenance-state of Ironic nodes
* Ironic API version negotiation
* Currently, ironicclient does not have the ability to send a
specific microversion per request and the Ironic driver needs to be able
to behave differently depending on Ironic version
* Ironic + Traits update
* Where we are and what's coming next
* Flavor decomposition status (ability to specify desired traits of
the allowed traits for a given flavor)
*Agreements and decisions
*
* On disk partitioning and passing a hardware config, we could use an
artifact repository such as Glare to store configs and then on the Nova
side, we could enhance the existing disk_config parameter for server
create to also support a profile ((AUTO/MANUAL/PROFILE). Profile
templates would be operator-defined like flavors
* jroll to write a spec on this
* For the issue of nova-compute crashing on startup, we could add a
try-except around the call site at startup and ignore a "NotReadyYet" or
similar exception from the Ironic driver
* For the issue of maintenance-state Ironic nodes, the Ironic virt
driver shall set reserved=1 for the custom resource class inventory
record instead of returning no inventory records
* On Ironic API version negotiation, the ironicclient already has
some version negotiation built-in, so there are some options. 1) update
Ironic driver to handle return/error codes from ironicclient
version-negotiated calls, 2) add per-call microversion support to
ironicclient and use it in the Ironic driver, 3) convert all Ironic
driver calls to use raw REST
* Option 1) would be the most expedient, but it's up to the Ironic
team how they will want to proceed. Option 3 is the desired ideal
solution but will take a rewrite of the related Ironic driver unit tests
as they currently all mock ironicclient
* TheJulia will follow up on this
* On Ironic + Traits, the ability to specify traits for a given
flavor is available starting in Queens
*
https://specs.openstack.org/openstack/nova-specs/specs/queens/implemented/ironic-driver-traits.html
*
https://specs.openstack.org/openstack/nova-specs/specs/queens/implemented/request-traits-in-nova.html
* Ironic CI work is in progress:
https://review.openstack.org/#/c/545370
* Resource classes allows us to drop IronicHostManager and exact
filters and the deprecation landed on 20171205, so we can remove them now
More information about the OpenStack-dev
mailing list