Send volume-changed notifications to nova

Registered by wanghao

Neutron now has mechanism to send network-changed notifications to nova supporting the nova-event-callback. Cinder should have this kind of mechanism to solve this issue : http://lists.openstack.org/pipermail/openstack-dev/2014-April/032213.html

Blueprint information

Status:
Complete
Approver:
John Griffith
Priority:
Medium
Drafter:
wanghao
Direction:
Approved
Assignee:
wanghao
Definition:
Obsolete
Series goal:
Accepted for future
Implementation:
Needs Code Review
Milestone target:
None
Started by
wanghao
Completed by
Sean McGinnis

Related branches

Sprints

Whiteboard

(smcginnis): Marking obsolete as this has been sitting out there for a long time. If this is still needed, please submit a new bp.

Can we get more details of how the neutron mechanism works? (Or a like to the relevant patch(s)). 'Neutron did it like this' is not necessarily enough of a reason for cinder to copy.

Though we would prefer to avoid introducing an entirely new mechanism if it is not necessary, currently, cinder communicates with nova only via a nice, clean RESTful interface. Introducing other channels defeats some of the design goals of cinder
-- Duncan Thomas

This mechanism I mentioned is neutron support this nova bp "Admin event callback API" https://blueprints.launchpad.net/nova/+spec/admin-event-callback-api
The relevant patch of neutron is : https://review.openstack.org/#/c/78041/.

In this bp,cinder will still communicates with nova via restful interface.What I want to say is cinder also need to send defined events to nova for synchronization.
-- wang hao

Duncan, it was my understanding that this would provide a push model instead of polling from the API. I think this is a direction we would eventually be moving towards.
-- Mike Perez

I'm taking a look at the other patches, and I'm very happy to discuss it further, eitehr by IRC or at the summit. The design looks better than I thought. Thanks for the details
-- Duncan

I have pushed the detailed nova-spec for review here: https://review.openstack.org/#/c/87546/ Please take a look and add comments here regarding what I refer to there as the "heartbeat" event. In short - in order to avoid the global one-size-(does not)-fit-all timeout, we may want to consider a "heartbeat" event where Cinder lets Nova know that it's still doing the task.
--Nikola Dipanov

Please note updates on https://review.openstack.org/#/c/87546/ and the addition of a config option that will allow deployers to update Cinder and nova independently after this change is merged.
-- Nikola Dipanov (23rd April 2014)

Please note further updates on https://review.openstack.org/#/c/87546/ and the addition of the requirement to have an instance_uuid param for the create volume API call, as this is required for Nova to be able to route the event to the proper compute node.
This will also allow for an independent Cinder upgrade without additional config options.
-- Nikola Dipanov (24th April 2014)

Gerrit topic: https://review.openstack.org/#q,topic:bp/send-volume-changed-notifications-to-nova,n,z

Addressed by: https://review.openstack.org/89764
    send volume-changed notification to nova

<jdg>
Change set has been abandoned, removing from Juno targetting

<wanghao>
Hi,john. I'm really sorry that I don't have much time to advance this bp because other work in most recent,so I assign the code work to my colleague that he knew about this bp too.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.