[openstack-dev] [Nova] [Neutron] How do we know a host is ready to have servers scheduled onto it?

Russell Bryant rbryant at redhat.com
Thu Dec 12 17:09:04 UTC 2013

On 12/12/2013 12:02 PM, Clint Byrum wrote:
> I've been chasing quite a few bugs in the TripleO automated bring-up
> lately that have to do with failures because either there are no valid
> hosts ready to have servers scheduled, or there are hosts listed and
> enabled, but they can't bind to the network because for whatever reason
> the L2 agent has not checked in with Neutron yet.
> This is only a problem in the first few minutes of a nova-compute host's
> life. But it is critical for scaling up rapidly, so it is important for
> me to understand how this is supposed to work.
> So I'm asking, is there a standard way to determine whether or not a
> nova-compute is definitely ready to have things scheduled on it? This
> can be via an API, or even by observing something on the nova-compute
> host itself. I just need a definitive signal that "the compute host is
> ready".

If a nova compute host has registered itself to start having instances
scheduled to it, it *should* be ready.  AFAIK, we're not doing any
network sanity checks on startup, though.

We already do some sanity checks on startup.  For example, nova-compute
requires that it can talk to nova-conductor.  nova-compute will block on
startup until nova-conductor is responding if they happened to be
brought up at the same time.

We could do something like this with a networking sanity check if
someone could define what that check should look like.

Russell Bryant

More information about the OpenStack-dev mailing list