[openstack-dev] [nova][neutron] VIF event callbacks implementation

Aaron Rosen aaronorosen at gmail.com
Tue Apr 29 19:09:54 UTC 2014


Hi Mike,

Comments inline:


On Mon, Apr 28, 2014 at 1:57 AM, Mike Kolesnik <mkolesni at redhat.com> wrote:

> Hi,
>
> I came across the implementation of
> https://blueprints.launchpad.net/neutron/+spec/nova-event-callback
> and have a question about the way it was implemented.
>
> I notice that now Neutron has a dependency on Nova and needs to be
> configured
> to have nova details (API endpoint, user, password, tenant, etc).
> Aside from creating a sort of cyclic dependency between the two, it is my
> understanding that Neutron is meant to be a "stand alone" service capable
> of
> being consumed by other compute managers (i.e. oVirt).
> This breaks that paradigm.
>

We had this in mind when this was implemented. You can disable the
notifications by setting (if you're using neutron without nova):

# Send notification to nova when port status is active.
notify_nova_on_port_status_changes = False

# Send notifications to nova when port data (fixed_ips/floatingips) change
# so nova can update it's cache.
notify_nova_on_port_data_changes = False



>
> So my question is: Why use API and not RPC?
>
> I saw that there is already a notification system in Neutron that notifies
> on
> each port update (among other things) which are currently consumed by
> Ceilometer.
> Why not have Nova use those notifications to decide that a VIF got plugged
> correctly,
> floating IPs changed, and so on?
>
> I am willing to make the necessary changes to decouple Neutron from Nova,
> but
> want to understand the rationale behind the original decision of using API
> and not RPC notifications.
>

I believe the rationale here was that nova's API interface is only
currently exposed via a rest API over http so leveraging this existing
framework seemed like a good place to do it. In addition, there didn't seem
to be an obvious advantage to using RPC rather than the rest interface.
Lastly, this new interface that nova exposes is generic and not neutron
specific as it can be used for other type of notifications that things want
to send nova. I added Dan Smith to CC to keep me honest here as I believe
this was the rationale.


>
> Regards,
> Mike
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20140429/45a529de/attachment.html>


More information about the OpenStack-dev mailing list