This is a list of development priorities the Ironic team is prioritizing for Newton development, in order of priority. The primary contact listed is responsible for tracking the status of that work and herding cats to help get that work done.
|Upgrade testing||jlvillal, mgould|
|Network isolation||jroll, TheJulia, devananda|
|Gate improvements||jlvillal, lucasagomes, dtantsur|
|Node search API||jroll, lintan, rloo|
|Node claims API||jroll, lintan|
|Multiple compute hosts||jroll|
|Generic boot-from-volume||TheJulia, dtantsur, lucasagomes|
We claim to support upgrading Ironic from release to release (and cycle to cycle), however we don’t have testing to prove that. This item is specifically to get cold upgrade testing working, which is necessary for some of the heavier changes, like network isolation and multi-compute. As a note, we’ve agreed that this is important enough to block other work.
This feature was designed in Liberty, and much of the code was written. The code was not ready in time to land in Mitaka. We need to complete this work in Newton, along with the Nova side of the work. This is one of our biggest feature asks from users. To be clear, the priority is to land the parts that were already designed in Liberty/Mitaka, not the future work like vlan-aware-instances.
There exist other gaps in our gate testing, as well as some refactoring we wish to do. This includes:
This lays the groundwork for the work being done in Nova to allow the Ironic driver to utilize multiple compute hosts. The search API also helps users query nodes much more intelligently.
This lays the groundwork for the work being done in Nova to allow the Ironic driver to utilize multiple compute hosts. The claims endpoint will help clients other than Nova schedule to nodes more easily.
This is an effort to allow the Ironic virt driver in Nova scale across many compute hosts. Currently only one compute host is supported. This shrinks the failure domain of the nova-compute service in an Ironic deployment, and also helps schedule Ironic resources more efficiently. Note that this work is in the Nova codebase, but is an Ironic effort. This will likely depend on work happening in Nova, specifically the generic resource pools work in the scheduler.
This work allows generic hardware to boot from NFS or cinder volumes, allowing diskless nodes to be managed by ironic. This also lays down the framework for hardware-specific implementations to be built.
This work refactors the way that drivers are composed internally, as well as allowing operators to mix and match drivers for each interface rather than guessing at which driver is which combination. This allows us to stop exploding our driver matrix with every interface addition.