Greetings, Nova team!
As you may be aware, I've been working with other folks in the community
on documenting a vision for OpenStack clouds (formerly known as the
'Technical Vision') - essentially to interpret the mission statement in
long-form, in a way that we can use to actually help guide decisions.
You can read the latest draft here: https://review.openstack.org/592205
We're trying to get feedback from as many people as possible - in many
ways the value is in the process of coming together to figure out what
we're trying to achieve as a community with OpenStack and how we can
work together to build it. The document is there to help us remember
what we decided so we don't have to do it all again over and over.
The vision is structured with two sections that apply broadly to every
project in OpenStack - describing the principles that we believe are
essential to every cloud, and the ones that make OpenStack different
from some other clouds. The third section is a list of design goals that
we want OpenStack as a whole to be able to meet - ideally each project
would be contributing toward one or more of these design goals.
The 'Basic Physical Data Center Management' goal was written to
acknowledge Nova's central role in OpenStack, and emphasize that
OpenStack differs from projects like Kubernetes in that we don't expect
something else to manage the physical data center for us; we expect
OpenStack to be the thing that does that for other projects. Obviously
Nova is also covered by the 'Hardware Virtualisation' design goal.
The last paragraph of the 'Plays Well With Others' design goal was
prompted by discussions in Cinder. I don't think the topic of other
systems using parts of Nova standalone has ever really come up, but if
it did this might be somewhere to look for guidance. (Note that it's
phrased as completely optional.)
A couple of the other sections are also (I think) worthy of close
attention. The principles in the 'Application Control' section of the
cloud pillars remain important. Nova is a bit unusual in that there are
a number of auxiliary services that provide functionality here (I'm
thinking of e.g. Masakari) - which is good, but it means more things to
think about. Not only whether any given functionality is needed, but
whether it is best provided by Nova or some other project, and if the
latter how Nova can provide affordances for that project to integrate
The Partitioning section was suggested by Jay. It highlights the known
mismatch between the concept of Availability Zones as borrowed from
other clouds and the way operators use OpenStack, and offers a long-term
design direction without being prescriptive.
If you would like me or another TC member to join one of your team IRC
meetings to discuss further what the vision means for your team, please
reply to this thread to set it up. You are also welcome to bring up any
questions in the TC IRC channel, #openstack-tc - there's more of us
around during Office Hours
(https://governance.openstack.org/tc/#office-hours), but you can talk to
us at any time.
Feedback can also happen either in this thread or on the review
If the team is generally happy with the vision as it is and doesn't have
any specific feedback, that's cool but I'd like to request that at least
the PTL leave a vote on the review. It's important to know whether we
are actually developing a consensus in the community or just talking to
OpenStack Development Mailing List (not for usage questions)