Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 

Xen 3.0 Virtualization Interface Guide
Prev Home Next

7.2 Store layout

There are three main paths in XenStore:

/vm
stores configuration information about domain
/local/domain
stores information about the domain on the local node (domid, etc.)
/tool
stores information for the various tools

The /vm path stores configuration information for a domain. This information doesn't change and is indexed by the domain's UUID. A /vm entry contains the following information:

ssidref
ssid reference for domain
uuid
uuid of the domain (somewhat redundant)
on_reboot
the action to take on a domain reboot request (destroy or restart)
on_poweroff
the action to take on a domain halt request (destroy or restart)
on_crash
the action to take on a domain crash (destroy or restart)
vcpus
the number of allocated vcpus for the domain
memory
the amount of memory (in megabytes) for the domain Note: appears to sometimes be empty for domain-0
vcpu_avail
the number of active vcpus for the domain (vcpus - number of disabled vcpus)
name
the name of the domain

/vm/<uuid>/image/

The image path is only available for Domain-Us and contains:

ostype
identifies the builder type (linux or vmx)
kernel
path to kernel on domain-0
cmdline
command line to pass to domain-U kernel
ramdisk
path to ramdisk on domain-0

/local

The /local path currently only contains one directory, /local/domain that is indexed by domain id. It contains the running domain information. The reason to have two storage areas is that during migration, the uuid doesn't change but the domain id does. The /local/domain directory can be created and populated before finalizing the migration enabling localhost to localhost migration.

/local/domain/<domid>

This path contains:

cpu_time
xend start time (this is only around for domain-0)
handle
private handle for xend
name
see /vm
on_reboot
see /vm
on_poweroff
see /vm
on_crash
see /vm
vm
the path to the VM directory for the domain
domid
the domain id (somewhat redundant)
running
indicates that the domain is currently running
memory
the current memory in megabytes for the domain (empty for domain-0?)
maxmem_KiB
the maximum memory for the domain (in kilobytes)
memory_KiB
the memory allocated to the domain (in kilobytes)
cpu
the current CPU the domain is pinned to (empty for domain-0?)
cpu_weight
the weight assigned to the domain
vcpu_avail
a bitmap telling the domain whether it may use a given VCPU
online_vcpus
how many vcpus are currently online
vcpus
the total number of vcpus allocated to the domain
console/
a directory for console information
ring-ref
the grant table reference of the console ring queue
port
the event channel being used for the console ring queue (local port)
tty
the current tty the console data is being exposed of
limit
the limit (in bytes) of console data to buffer
backend/
a directory containing all backends the domain hosts
vbd/
a directory containing vbd backends
<domid>/
a directory containing vbd's for domid
<virtual-device>/
a directory for a particular virtual-device on domid
frontend-id
domain id of frontend
frontend
the path to the frontend domain
physical-device
backend device number
sector-size
backend sector size
info
0 read/write, 1 read-only (is this right?)
domain
name of frontend domain
params
parameters for device
type
the type of the device
dev
the virtual device (as given by the user)
node
output from block creation script

vif/
a directory containing vif backends
<domid>/
a directory containing vif's for domid
<vif number>/
a directory for each vif
frontend-id
the domain id of the frontend
frontend
the path to the frontend
mac
the mac address of the vif
bridge
the bridge the vif is connected to
handle
the handle of the vif
script
the script used to create/stop the vif
domain
the name of the frontend

device/
a directory containing the frontend devices for the domain
vbd/
a directory containing vbd frontend devices for the domain
<virtual-device>/
a directory containing the vbd frontend for virtual-device
virtual-device
the device number of the frontend device
backend-id
the domain id of the backend
backend
the path of the backend in the store (/local/domain path)
ring-ref
the grant table reference for the block request ring queue
event-channel
the event channel used for the block request ring queue

vif/
a directory containing vif frontend devices for the domain
<id>/
a directory for vif id frontend device for the domain
backend-id
the backend domain id
mac
the mac address of the vif
handle
the internal vif handle
backend
a path to the backend's store entry
tx-ring-ref
the grant table reference for the transmission ring queue
rx-ring-ref
the grant table reference for the receiving ring queue
event-channel
the event channel used for the two ring queues

device-misc/
miscellanous information for devices
vif/
miscellanous information for vif devices
nextDeviceID
the next device id to use

store/
per-domain information for the store
port
the event channel used for the store ring queue
ring-ref
- the grant table reference used for the store's communication channel

image
- private xend information

Xen 3.0 Virtualization Interface Guide
Prev Home Next

 
 
  Published under the terms of the GNU General Public License Design by Interspire