← Back to team overview

openstack team mailing list archive

Re: Metadata and File Injection

 

> -----Original Message-----
> From: openstack-bounces+ewan.mellor=citrix.com@xxxxxxxxxxxxxxxxxxx
> [mailto:openstack-bounces+ewan.mellor=citrix.com@xxxxxxxxxxxxxxxxxxx]
> On Behalf Of Richard W.M. Jones
> Sent: 21 December 2011 10:56
> To: Scott Moser
> Cc: openstack@xxxxxxxxxxxxxxxxxxx
> Subject: Re: [Openstack] Metadata and File Injection
> 
> On Thu, Dec 15, 2011 at 11:43:13AM -0500, Scott Moser wrote:
> >  c.) No way to modify contents of the service after instance launch.
> >      OK, I said 2 features, and really this one is wishlist.  If we
> had an
> >      arbitrary key-value store that was available, the user could
> interact
> >      with the guest using this service.  It'd have to be poll-based,
> but a
> >      in-guest hypervisor could watch for creation and deletion of
> keys.
> >      Potentially, the MD might be RW from inside guest, meaning it
> could
> >      even convey information back.
> 
> Sounds like xenstore ...

Yes, that's exactly what XenStore is.  Even better, you don't even have to poll -- it has an event system where you can block on a file descriptor until a subtree changes.  Oh, and it's a tree, not just a flat keyspace.

Do you know, Rich, of any plans to implement something like XenStore for KVM?  OpenStack would have no problem abstracting the differences between two similar services, if there was something there to abstract over, but up until now people have pushed back hard on any feature that needed XenStore-like functionality, because it is completely missing from KVM.  I think that that's a shame, because there are lots of interesting things that you can do when you have a bidirectional, live channel into the guest.

I wonder, even, if you could use XenStore on KVM.  There's not a great deal there that's Xen-specific.  Any mechanism that let you pass messages between the host OS and the guest would be sufficient to build a XenStore driver on top.  (In Xen's case it's a shared memory page plus an event channel, but I'm sure it could be anything.)  That would be fun for someone ;-)

Cheers,

Ewan.



Follow ups

References