← Back to team overview

openstack team mailing list archive

Anyone using instance metadata?

 

Hi,
I'm looking at nova, and the compute API has 3 methods:
   delete_instance_metadata
   update_instance_metadata
   get_instance_metadata

I know that
 * python nova client has
   * the ability to specify --meta=KEY=VALUE on instance creation
   * a top level subcommand 'meta' which allows set and delete of
     metadata keys (but no support for querying current value).
 * content specified on instance creation is injected into the
   instance's root filesystem at '/meta.js'.  Or, if config_drive
   is given the config drive will have /meta.js

What I'm missing is:
 * There is an 'update' for this content, implying that it is at least
   partially dynamic in intent, but the filesystem data passing mechanism
   is clearly *not* dynamic.
 * This data is not made available in the metadata server
   (http://169.254.169.254) where it *could* be dynamic.

So, I'm confused on the intent of this metadata.  I can't decide if it is
really just supposed to be "tags" or more of a user-data replacement.

In EC2, you can store arbitrary key/value pairs on an instance-id,
ami-id, or anything else, but those values are not readable without
credentials.  Here, they're readable inside the instance from the
filesystem.

Anyone able to comment on the original intent of 'metadata'?
It seems to me that if we expose this in the metadata server, then it will
be a very useful feature, but one that overlaps confusingly with
user-data.


Follow ups