[Openstack] RFC: Plugin framework draft

Andrew Bogott abogott at wikimedia.org
Mon May 21 16:24:17 UTC 2012


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




More information about the Openstack mailing list