[openstack-dev] [nova] Follow up on BCN review cadence discussions
Chris Friesen
chris.friesen at windriver.com
Tue Nov 8 19:58:32 UTC 2016
On 11/08/2016 12:13 PM, Matt Riedemann wrote:
> I'd also like to say that I dislike the constant comparisons to the kernel. If
> people are going to make that comparison, then let's say the kernel overall is
> all of OpenStack, and there are subsystems, like nova/cinder/glance/etc, with
> their own subsystem maintainers, e.g. nova-core.
While there is some merit to that argument, it's not entirely accurate. Nova is
roughly 1/45th the size of the whole kernel source, but the kernel has roughly
1600 separately-maintained subsystems. The "arch/x86" subdirectory in the
kernel source is almost half as big as nova, but there are also
separately-maintained drivers with only a few hundred lines of code.
Something that was mentioned in the summit discussion (but I think it bears
repeating) is that the thing that enables this sort of fine-grained
maintainership in the kernel is that the contracts are better-defined between
the various subsystems. Generally a driver has a limited set of things that it
needs to worry about getting right to interface with the rest of the system, and
other than that it's got free rein in its own sandbox.
That said, I don't know that there's an easy solution to this in nova due to the
fact that it's a distributed system with a central shared data store. Enhancing
a sched filter might require new data, which means modifying the DB model and
the DB migrations, and updating the InstanceNUMATopology object and tweaking
nova-api to request additional attrs, and it might have implications for
upgrade, etc.
Chris
More information about the OpenStack-dev
mailing list