← Back to team overview

openstack team mailing list archive

Re: RFC: Plugin framework draft

 

On 5/21/12 10:59 AM, Mark McLoughlin wrote:
Hi Andrew,

On Thu, 2012-05-17 at 15:32 -0500, Andrew Bogott wrote:
I would appreciate comments on the nascent Nova plugin framework
that I'm working on.  My Nova code is in a fairly modern forked branch here:

https://github.com/andrewbogott/nova/tree/plugin

      I've also written two example plugins, which live here:

https://github.com/andrewbogott/novawikiplugins

      The two plugins in that repo implement actual features that we need
here at Wikimedia Labs -- One of them is an implementation of shared
volumes similar to the one I presented at the design summit.
This isn't so much of a comment on your plugin work, but do those two
plugins make sense as plugins?

   - I'd love to see a "Filesystems as a Service" service in OpenStack
     similar to Cinder. Wouldn't it make more sense as a new service?
It might. I gave a presentation at the design summit about shared filesystems, and in large part the response was that the feature is useful but may be outside the scope of OpenStack.

The part of this feature that interests me the most is the automatic scope management (e.g. automatically attaching filesystems to new instances within a project.) That part certainly requires close contact with Nova, which might not make as much sense in a separate service.

I certainly wouldn't object to this being implemented as a full-blown service, as long as someone else volunteers to coordinate the project ;)


   - The wikistatus plugin uses notifications; why can't it be external
     to nova and pull notifications from the message bus?
It almost could be. It's handy to have it run within nova because I do some querying which is much simpler to handle via local calls; the notifier also makes use of request context in a couple of places, and I'm not positive that that context would still be meaningful once it passed over rpc.

I'm sure that this feature could be redesigned to exist only as an rpc listener; It happens to be easier for me to implement as written, and I think it has value as a demonstration project in any case.

-Andrew


References