On 04/22/15 at 10:56am, Russell Bryant wrote: > Cool stuff. It looks like it will help. To be clear though, what I > think we need is an HTTP callback. Neutron needs to be able to notify > an arbitrary system instead of specifically Nova that a port is ready. > > Another way to go about this would be to use Ceilometer. I think > Ceilometer could collect port state change notifications off of the > message bus and an arbitrary system could create alarms on port state > changes. However, I think we'd rather avoid that dependency. > > There's actually a thread on openstack-dev discussing the more general > problem here: > > http://lists.openstack.org/pipermail/openstack-dev/2015-April/060748.html > > There are many use cases where we need to be able to communicate > information back to the API user (which would be the container manager > in this case). We don't have a great common solution for it, really. > > Going back to the issue at hand, another option would be to just > implement the same API call that Nova does for receiving the updates. > You could then configure Neutron to point at that instead of a Nova install. > > http://git.openstack.org/cgit/openstack/neutron/tree/neutron/notifiers/nova.py
An alternative approach is to insert an adapter in front of the container runtime which performs a connectivity test with a timeout and delays spawning the application until that succeed. For Docker this would be a simple pre-hook. The connectivity test could include reaching a link local address on the host bridge or even a remote endpoint. In theory this sounds more scalable and allows to bring up containers while the host is temporarily isolated (unless remote endpoints are used for the connectivity check). _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev