[openstack-dev] [nova] ability to set metadata on instances (but config drive is not updated)
Joshua Harlow
harlowja at fastmail.com
Fri Jun 17 22:04:38 UTC 2016
Hi folks,
I was noticing that its possible to do something like:
$ nova meta josh-testr3 set "e=f"
Then inside the VM I can do the following to eventually see that this
changes shows up in the instance metadata exposed at the following:
$ curl -s http://169.254.169.254/openstack/latest/meta_data.json |
python -mjson.tool
{
...
"hostname": "josh-testr3.cloud.phx3.gdg",
"launch_index": 0,
"meta": {
...
"e": "f",
..
}
...
}
Now if I am using the configdrive instead of the metadata server at that
special/magic ip that same metadata never seems to change (I assume the
configdrive would have to be 'ejected' and then a new configdrive
created and then that configdrive 'reinserted'); was anyone aware of a
bug that would solve this (it does appear to be a feature difference
that could/should? be solved)?
Why this is something useful (from my view) is that we (at godaddy) have
a cron job that polls that metadata periodically and it generates a
bunch of polling traffic (especially when each VM does this) and that
traffic could be removed if such a 'eject' and 'reinsert' happens
instead (since then the cron job could become a small program that
listens for devices being inserted/removed and does the needed actions
then, which is better than polling endlessly for data that hasn't changed).
-Josh
More information about the OpenStack-dev
mailing list