Hi All,

As we skipped a few meetings and we also reached the N-3 milestone this week I 
would like to summarise where we are currently with our plans.

At the beginning of the Newton cycle we decided to refactor the Cinder API 
around attach and detach to make Cinder more a standalone module and also to 
simplify the interaction between Nova and Cinder. The changes in high level are 
the following:

* Have one ‘create_attachment' call that will contain the functionality of the 
current ‘initialize_connection’ and ‘attach’ calls
* Have one ‘remove_attachment’ call for detach
* There are further plans to extend the Cinder API to check whether it is safe 
to remove a connection to prepare for the multi-attach use case.

The code is already on its way [1][2][3], we plan to merge the Cinder side of 
changes as an experimental API as soon as possible. We can then continue to 
test the changes on the Nova side. When the Cinder API changes are stable we 
will add proper API microversioning to enable Nova to pick it up the right way 
and use the new API with support for backward compatibility.

This work should provide the benefit of removing workarounds from the Nova code 
and make those parts more readable and easier to maintain. We will also get 
very close to support multi-attach in both modules when we progress with the 
above listed changes.

We started some work to reduce race conditions and remove a few workarounds 
from mostly the Nova code base as well during this cycle.

We had an attempt to remove ‘check_attach’ from the Nova code, as this check 
should be purely Cinder’s responsibility. The call is partially removed [4] and 
there’s one patch up for review to finish that work item [5]. The difficulty 
with this one is that we have one flow that missed the ‘reserve_volume’ call 
and therefore also the required checks on Cinder side. This is corrected in the 
patch up for review [5], it needs some more eyes on it to ensure we have the 
proper fix.

We also started to look into how to remove the unnecessary 
‘initialize_connection’ calls [6] from the Nova code. We need more review 
attention on this one also as when we will have the new calls in the Cinder API 
we need to rethink some of the current workarounds to make things like live 
migration work with the new setup.

We still have the etherpad for this work up [7], I will add the links in this 
mail to the top for better readability.

We will have the next meeting at the regular slot we use next Monday to check 
on the status and decide on what we can make happen before the Summit and also 
start to plan a little bit for the event itself as well. The meeting is on 
#openstack-meeting-cp, on Monday (Sept. 5) 1700UTC.

If you have any questions or comments please respond to this thread or join the 
meeting next Monday.


Thanks and Best Regards,
Ildikó

[1] https://review.openstack.org/#/c/327408/
[2] https://review.openstack.org/#/c/327409/
[3] https://review.openstack.org/#/c/330285/
[4] https://review.openstack.org/#/c/315789/
[5] https://review.openstack.org/#/c/335358/
[6] https://review.openstack.org/#/c/312773/
[7] https://etherpad.openstack.org/p/cinder-nova-api-changes



__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: [email protected]?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to