← Back to team overview

openstack team mailing list archive

Re: Metadata and File Injection (code summit session?)

 

On 4/10/12 5:36 PM, Justin Santa Barbara wrote:

    The immediate use case I have in mind is to support this:
    http://wiki.openstack.org/PackageConfigForNova .  That design
    requires periodic checkins between an instance agent and a nova
    driver.  It certainly /could/ be implemented using ssh, but I
    originally wrote the design imagining there was a ready-made,
    standard communication service, and I still think it would be
    convenient.


My concern with that proposal is that it starts simple enough, but then when you want to know e.g. "was the package installed successfully? is the service healthy?" then you need more and more complexity i.e. you end up with PlatformLayer, RedDwarf, Heat, Puppet, Chef or Juju. So putting a small piece of the required functionality into nova doesn't address your actual use case, which is "I want configured machines, not just the stock images". It's probably easier to put that logic into your management system of choice, so nova shouldn't do it. Am I off base here?

You're not necessarily off base. WMF has some peculiar needs in this regard because in addition to managing instances with puppet we also want to use our cloud as a puppet development platform. I've scheduled a discussion about this:

http://summit.openstack.org/sessions/view/33

It would neither shock nor upset me if at the end of that session we conclude that I need to just write a private extension for our internal use. Even if that happens, I'll still need a way for Nova to chat with instances, though.

Come to think of it, the other session that I have planned (http://summit.openstack.org/sessions/view/3) is going to trail off at the end with me saying something like "Now that the volumes are created, we need to notify existing instances to mount them... somehow." So that's another use case for having a guest agent with runtime nova communication.

I continue to suspect that such a service would be widely useful, and better than leaving every feature to arrange its own communications. The metadata service is almost what I want, I 'just' need it to be read/write at runtime.


References