XenStore
From Christoph's Personal Wiki
This article will cover xenstore-related topics and CLI examples.
- View all domain information for a given DOMID:
$ xenstore-ls /local/domain/123
- View the domain data for a given DOMID (note that the "host" is empty and the "guest" is not. That is what we want to see):
$ xenstore-ls /local/domain/123/data host = "" meminfo_total = "1022884" meminfo_free = "181088" os_name = "Debian GNU/Linux 7.1 (wheezy)" os_majorver = "7" os_minorver = "1" os_uname = "3.2.0-4-amd64" os_distro = "debian" updated = "Wed Oct 9 05:41:29 UTC 2013" guest = "" 127a8ec3-ffff-4d0b-cccc-6f6c03faedf3 = "{"message": "0.0.1.37", "returncode": "0"}" a1262b0a-ffff-4b39-cccc-7c9c5a341bd4 = "{"message": "120060756033138162104944855769740", "returncode": "D0"}" 5a6df0d1-ffff-4666-cccc-94bae5798776 = "{"message": "", "returncode": "0"}" dba8667d-ffff-469c-cccc-b46b25fadb8e = "{"message": "", "returncode": "0"}"
- This is what the above output should _not_ look like (note that does not have the "guest" entries):
$ xenstore-ls /local/domain/399/data host = "" cacbdbd9-ffff-4fd7-cccc-906f15e0f9fd = "{"name":"version","value":"agent"}" meminfo_total = "1022880" meminfo_free = "460328" os_name = "Debian GNU/Linux 7.1 (wheezy)" os_majorver = "7" os_minorver = "1" os_uname = "3.2.0-4-amd64" os_distro = "debian" updated = "Wed Oct 9 05:13:43 UTC 2013"
- Check nova-agent version (useful for making sure nova-agent is running on the VM):
label=instance-XXXXXXX; uuid=`uuidgen`; domid=$(xe vm-list name-label=$label params=dom-id --minimal); \ xenstore-write /local/domain/$domid/data/host/$uuid '{"name":"version","value":"agent"}'; sleep 10 ; \ xenstore-read /local/domain/$domid/data/guest/$uuid ; unset label; unset uuid; unset domid; #~OR~ echo -n 'Enter Name Label : ';read LABEL;DOMID=$(xe vm-list name-label=$LABEL params=dom-id --minimal);\ UUID=$(uuidgen);xenstore-write /local/domain/$DOMID/data/host/$UUID '{"name":"version","value":"agent"}';sleep 5;\ echo -ne "\nxapi reply : "; xenstore-read /local/domain/$DOMID/data/guest/$UUID ; \ xenstore-rm /local/domain/$DOM/data/host/$UUID ; unset LABEL; unset UUID; unset DOMID;
- Re-configure/reset network of VM from host:
label=instance-XXXXXXX; uuid=$(uuidgen); domid=$(xe vm-list name-label=$label params=dom-id --minimal); \ xenstore-write /local/domain/$domid/data/host/$uuid '{"name":"resetnetwork","value":""}'; sleep 10 ; \ xenstore-read /local/domain/$domid/data/guest/$uuid ; unset label; unset uuid; unset domid;