xe command reference
This section provides a reference to the xe commands. They are grouped by objects that the commands address, and listed alphabetically.
Commands for working with network bonds, for resilience with physical interface failover. See
the section called “Creating NIC bonds” for details.
The bond object is a reference object which glues together master and member PIFs. The master PIF is the bonding interface which must be used as the overall PIF to refer to the bond. The member PIFs are a set of 2 or more physical interfaces which have been combined into the high-level bonded interface.
Bond parameters
Bonds have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | unique identifier/object reference for the bond | read only |
master | UUID for the master bond PIF | read only |
members | set of UUIDs for the underlying bonded PIFs | read only set parameter |
bond-create
network-uuid=network UUID
pif-uuids=PIF UUID 1,PIF UUID 2,...
Create a bonded network interface on the network specified from a list of existing PIF objects. The command will fail if PIFs are in another bond already, if any member has a VLAN tag set, if the referenced PIFs are not on the same XenServer Host, or if fewer than 2 PIFs are supplied.
host-bond-destroy
uuid=bond UUID
Delete a bonded interface specified by its UUID from the XenServer Host.
Commands for working with physical CD/DVD drives on XenServer Hosts.
CD parameters
CDs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | unique identifier/object reference for the CD | read only |
name-label | Name for the CD | read/write |
name-description | Description text for the CD | read/write |
allowed-operations | A list of the operations that can be performed on this CD | read only set parameter |
current-operations | A list of the operations that are currently in progress on this CD | read only set parameter |
sr-uuid | The unique identifier/object reference for the SR this CD is part of | read only |
sr-name-label | The name for the SR this CD is part of | read only |
vbd-uuids | A list of the unique identifiers for the VBDs on VMs that connect to this CD | read only set parameter |
crashdump-uuids | Not used on CDs since crashdumps cannot be written to them | read only set parameter |
virtual-size | Size of the CD as it appears to VMs (in bytes) | read only |
physical-utilisation | amount of physical space that the CD image is currently taking up on the SR (in bytes) | read only |
type | Set to User for CDs | read only |
sharable | Whether or not the storage is sharable. Always true for CDs. | read only |
read-only | Whether the CD is read-only, if false, the device is writeable. Always true for CDs. | read only |
storage-lock | true if this disk is locked at the storage level | read only |
parent | Reference to the parent disk, if this CD is part of a chain | read only |
missing | true if SR scan operation reported this CD as not present on disk | read only |
other-config | A list of key/value pairs that specify additional configuration parameters for the CD | read/write map parameter |
location | The path on which the device is mounted | read only |
managed | true if the device is managed | read only |
xenstore-data | Data to be inserted into the xenstore tree | read only map parameter |
sm-config | names and descriptions of storage manager device config keys | read only map parameter |
cd-list
[params=param1,param2,...
] [parameter=parameter value
…]
List the CDs and ISOs (CD image files) on the XenServer Host or pool, filtering on the optional argument params
.
If the optional argument params
is used, the value of params is a string containing a list of parameters of this object that you want to display. Alternatively, you can use the keyword all
to show all parameters. If params
is not used, the returned list shows a default subset of all available parameters.
Optional arguments can be any number of the
CD parameters listed at the beginning of this section.
Commands for working with consoles.
The console objects can be listed with the standard object listing command (xe console-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
Console parameters
Consoles have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the console | read only |
vm-uuid | The unique identifier/object reference of the VM this console is open on | read only |
vm-name-label | The name of the VM this console is open on | read only |
protocol | Protocol this console uses. Possible values are vt100 : VT100 terminal, rfb : Remote FrameBuffer protocol (as used in VNC), or rdp : Remote Desktop Protocol |
read only |
location | URI for the console service | read only |
other-config | A list of key/value pairs that specify additional configuration parameters for the console. | read/write map parameter |
Commands for working with events.
Event classes
Event classes are listed in the following table:
Class name | Description |
---|---|
pool | A pool of physical hosts |
vm | A Virtual Machine |
host | A physical host |
network | A virtual network |
vif | A virtual network interface |
pif | A physical network interface (note separate VLANs are represented as several PIFs) |
sr | A storage repository |
vdi | A virtual disk image |
vbd | A virtual block device |
pbd | The physical block devices through which hosts access SRs |
event-wait
class=class name
[ param-name
=param-value
] [ param-name
=/=param-value
]
Block other commands from executing until an object exists that satisfies the conditions given on the command line. [x=y] means “wait for field x to take value y”, and [x=/=y] means “wait for field x to take any value other than y”.
Example: wait for a specific VM to be running
xe event-wait name-label=myvm power-state=running
blocks until a VM called myvm is in the power-state
“running.”
Example: wait for a specific VM to reboot:
xe event-wait uuid=$VM start-time=/=$(xe vm-list uuid=$VM params=start-time –minimal)
blocks until a VM with UUID $VM reboots (i.e. has a different [start-time] value).
The class name can be any of the
Event classes listed at the beginning of this section, and the parameters can be any of those listed in the CLI command class-param-list.
Commands for interacting with XenServer Hosts.
XenServer Hosts are the physical servers running XenServer software. They have VMs running on them under the control of a special privileged Virtual Machine, known as the control domain or domain 0.
The XenServer Host objects can be listed with the standard object listing command ( xe host-list, xe host-cpu-list, and xe host-crashdump-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
Host selectors
Several of the commands listed here have a common mechanism for selecting one or more XenServer Hosts on which to perform the operation. The simplest is by supplying the argument host=<UUID or name-label>
. XenServer Hosts can also be specified by filtering the full list of hosts on the values of fields. For example, specifying enabled=true
will select all XenServer Hosts whose enabled
field is equal to true
. Where multiple XenServer Hosts are matching, and the operation can be performed on multiple XenServer Hosts, the option --multiple
must be specified to perform the operation. The full list of parameters that can be matched is described at the beginning of this section, and can be obtained by the command xe host-list params=all. If no parameters to select XenServer Hosts are given, the operation will be performed on all XenServer Hosts.
Host parameters
XenServer Hosts have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the XenServer Host | read only |
name-label | The name of the XenServer Host | read/write |
name-description | The description string of the XenServer Host | read only |
enabled | false if disabled which prevents any new VMs from starting on them, which prepares the XenServer Hosts to be shut down or rebooted; true if the host is currently enabled | read only |
API-version-major | major version number | read only |
API-version-minor | minor version number | read only |
API-version-vendor | read only | |
API-version-vendor-implementation | details of vendor implementation | read only map parameter |
logging | logging configuration | read/write map parameter |
suspend-image-sr-uuid | the unique identifier/object reference for the SR where suspended images are put | read/write |
crash-dump-sr-uuid | the unique identifier/object reference for the SR where crash dumps are put | read/write |
software-version | list of versioning parameters and their values | read only map parameter |
capabilities | list of Xen versions that the XenServer Host can run | read only set parameter |
other-config | A list of key/value pairs that specify additional configuration parameters for the XenServer Host | read/write map parameter |
hostname | XenServer Host hostname | read only |
address | XenServer Host IP address | read only |
supported-bootloaders | list of bootloaders that the XenServer Host supports, for example, pygrub, eliloader | read only set parameter |
memory-total | total amount of physical RAM on the XenServer Host, in bytes | read only |
memory-free | total amount of physical RAM remaining that can be allocated to VMs, in bytes | read only |
host-metrics-last-updated | Timestamp of the date and time that the metrics for a XenServer Host were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
host-metrics-live | true if the host is operational | read only |
logging | The syslog_destination key can be set to the hostname of a remote listening syslog service. |
read/write map parameter |
allowed-operations | list of the operations allowed in this state. This list is advisory only and the server state may have changed by the time this field is read by a client. | read only set parameter |
current-operations | links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task. | read only set parameter |
patches | Set of host patches | read only set parameter |
XenServer Hosts contain some other objects that also have parameter lists.
CPUs on XenServer Hosts have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the CPU | read only |
number | the number of the physical CPU core within the XenServer Host | read only |
vendor | the vendor string for the CPU name, for example, “GenuineIntel” | read only |
speed | The CPU clock speed, in Hz | read only |
modelname | the vendor string for the CPU model, for example, “Intel(R) Xeon(TM) CPU 3.00GHz” | read only |
stepping | the CPU revision number | read only |
flags | the flags of the physical CPU (a decoded version of the features field) | read only |
utilisation | the current CPU utilization | read only |
host-uuid | the UUID if the host the CPU is in | read only |
model | the model number of the physical CPU | read only |
family | the family (number) of the physical CPU | read only |
Crash dumps on XenServer Hosts have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the crashdump | read only |
host | XenServer Host the crashdump corresponds to | read only |
timestamp | Timestamp of the date and time that the crashdump occurred, in the form yyyymmdd–hhmmss–ABC, where ABC is the timezone indicator, for example, GMT | read only |
size | size of the crashdump, in bytes | read only |
host-backup
file-name=backup filename
[ host-selector
=host-selector value
…]
Download a backup of the control domain of the specified XenServer Host to the machine that the command is invoked from, and saving it there as a file with the name file-name
.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
Caution
While the xe host-backup command will work if executed on the local host (that is, without a specific hostname specified), do not use it this way. Doing so would fill up the control domain partition with the backup file, which would be a bad thing. The command should only be used from a remote off-host machine where you have space to hold the backup file.
host-bugreport-upload
[ host-selector
=host-selector value
…] [url=destination_url
] [http-proxy=http-proxy-name
]
Generate a fresh bug report (via xen-bugtool, with all optional files included) and upload to Citrix Support ftp site or other location.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
Optional parameters are http-proxy
: use specified http proxy, and url
: upload to this destination url. If optional parameters are not used, no proxy server is identified and the destination will be the default Citrix Support ftp site.
host-crashdump-destroy
uuid=crashdump UUID
Delete a host crashdump specified by its UUID from the XenServer Host.
host-crashdump-upload
uuid=crashdump UUID
[url=destination URL
] [http-proxy=HTTP proxy name
]
Upload a crashdump to the Citrix Support ftp site or other location. If optional parameters are not used, no proxy server is identified and the destination will be default Citrix Support ftp site. Optional parameters are http-proxy
: use specified http proxy, and url
: upload to this destination url.
host-disable
[ host-selector
=host selector value
…]
Disables specified XenServer Hosts, which prevents any new VMs from starting on them. This prepares the XenServer Hosts to be shut down or rebooted.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
host-dmesg
[ host-selector
=host selector value
…]
Get a Xen dmesg (the output of the kernel ring buffer) from specified XenServer Hosts.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
host-emergency-management-reconfigure
interface=UUID of management interface PIF
Reconfigure the management interface of this XenServer Host. Use this command only if the XenServer Host is in emergency mode, meaning it is a member in a resource pool whose master has disappeared from the network and could not be contacted for some number of retries.
host-enable
[ host-selector
=host selector value
…]
Enables the specified XenServer Hosts, which allows new VMs to be started on them.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
host-evacuate
[ host-selector
=host selector value
…]
Disables the selected host, and live migrates all running VMs to other suitable hosts on a pool. If the evacuated host is the pool master, then a random other host in the pool is chosen as the pool master and control is transferred over to it.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
host-forget
uuid=XenServer Host UUID
The xapi agent forgets about the specified XenServer Host without contacting it explicitly.
Tip
This command is useful if the XenServer Host to “forget” is dead; however, if the XenServer Host is live and part of the pool, you should use xe pool-eject instead.
host-get-system-status
filename=name for status file
[entries=comma-separated list
] [output=tar.bz2 | zip
] [ host-selector
=host-selector value
…]
Download system status information into the specified file. The optional parameter entries
is a comma-separated list of system status entries, taken from the capabilities XML fragment returned by the host-get-system-status-capabilities command. See
the section called “host-get-system-status-capabilities” for details. If not specified, all system status information is saved in the file. The parameter output
may be tar.bz2 (the default) or zip; if this parameter is not specified, the file is saved in tar.bz2
form.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see host selectors above).
host-get-system-status-capabilities
[ host-selector
=host-selector value
…]
Get system status capabilities for the specified host(s). The capabilities are returned as an XML fragment that looks something like this:
<?xml version="1.0" ?> <system-status-capabilities> <capability content-type="text/plain" default-checked="yes" key="xenserver-logs" \ max-size="150425200" max-time="-1" min-size="150425200" min-time="-1" \ pii="maybe"/> <capability content-type="text/plain" default-checked="yes" \ key="xenserver-install" max-size="51200" max-time="-1" min-size="10240" \ min-time="-1" pii="maybe"/> ... </system-status-capabilities>
Each capability entity has a number of attributes.
Attribute | Description | |
---|---|---|
key | A unique identifier for the capability. | |
content-type | Can be either text/plain or application/data. Indicates whether a UI can render the entries for human consumption. | |
default-checked | Can be either yes or no. Indicates whether a UI should select this entry by default. | |
min-size, max-size | Indicates an approximate range for the size, in bytes, of this entry. -1 indicates that the size is unimportant. | |
min-time, max-time | Indicate an approximate range for the time, in seconds, taken to collect this entry. -1 indicates the time is unimportant. | |
pii | Personally identifiable information. Indicates whether the entry would have information that would identify the system owner, or details of their network topology. This is one of:
Passwords are never to be included in any bug report, regardless of any PII declaration. |
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above).
host-is-in-emergency-mode
Determines if the host the CLI is talking to is currently in emergency mode. If it is, then true
will be output, otherwise it will be false
. This CLI command works directly on slave hosts without a master host needing to be present.
host-license-add
license-file=path/license_filename
[host-uuid=XenServer Host UUID
]
Parses a local license file and adds it to the specified XenServer Host.
host-license-view
[host-uuid=XenServer Host UUID
]
Displays the contents of the XenServer Host license.
host-logs-download
[file-name=logfile_name
] [ host-selector
=host selector value
…]
Download a copy of the logs of the specified XenServer Hosts. The copy is saved by default in a timestamped file named hostname-yyyy-mm-dd T hh:mm:ssZ.tar.gz
. You can specify a different filename using the optional parameter file-name.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
Caution
While the xe host-logs-download command will work if executed on the local host (that is, without a specific hostname specified), do not use it this way. Doing so will clutter the control domain partition with the copy of the logs, which would be a bad thing. The command should only be used from a remote off-host machine where you have space to hold the copy of the logs.
host-management-disable
Disables the host agent listening on an external management network interface and disconnects all connected API clients (such as the XenCenter). Operates directly on the XenServer Host the CLI is connected to, and is not forwarded to the pool master if applied to a member XenServer Host.
Warning
Be extremely careful when using this CLI command off-host, since once it is run it will not be possible to connect to the control domain remotely over the network to re-enable it.
host-management-reconfigure
[interface=device
] | [pif-uuid=uuid
]
Reconfigures the XenServer Host to use the specified network interface as its management interface, which is the interface that is used to connect to the XenCenter. The command rewrites the MANAGEMENT_INTERFACE key in /etc/xensource-inventory
.
If the device name of an interface (which must have an IP address) is specified, the XenServer Host will immediately rebind. This works both in normal and emergency mode.
If the the UUID of a PIF object is specified, the XenServer Host will determine which IP address to rebind to itself. It must not be in emergency mode when this command is executed.
Warning
Be careful when using this CLI command off-host and ensure you have network connectivity on the new interface (by using xe pif-reconfigure to set one up first). Otherwise, subsequent CLI commands will not be able to reach the XenServer Host.
host-reboot
[ host-selector
=host selector value
…]
Reboot the specified XenServer Hosts. The specified XenServer Hosts must be disabled first using the xe host-disable command, otherwise a “HOST_IN_USE” error message is displayed.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
If the specified XenServer Hosts are members of a pool, the loss of connectivity on shutdown will be handled and the pool will recover when the XenServer Hosts returns. If you shut down a pool member, other members and the master will continue to function. If you shut down the master, the pool will be out of action until the master is rebooted and back on line, at which point the members will reconnect and synchronize with the master, or until you make one of the members into the master.
host-restore
[file-name=backup_filename
] [ host-selector
=host selector value
…]
Restore a backup named file-name
of the XenServer Host control software. Note that the use of the word “restore” here does not mean a full restore in the usual sense, it merely means that the compressed backup file has been uncompressed and unpacked onto the secondary partition. After you’ve done a xe host-restore, you have to boot the Install CD and use its “restore secondary partition to primary partition” option.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
host-set-hostname
host-uuid=UUID of host
hostname=new hostname
Change the hostname of the XenServer Host specified by host-uuid
. This command persistently sets both the hostname in the control domain’s agent database and the actual Linux hostname of the XenServer Host. Note that hostname is not the same as the value of the name_label field.
host-shutdown
[ host-selector
=host selector value
…]
Shut down the specified XenServer Hosts. The specified XenServer Hosts must be disabled first using the xe host-disable command, otherwise a “HOST_IN_USE” error message is displayed.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
If the specified XenServer Hosts are members of a pool, the loss of connectivity on shutdown will be handled and the pool will recover when the XenServer Hosts returns. If you shut down a pool member, other members and the master will continue to function. If you shut down the master, the pool will be out of action until the master is rebooted and back on line, at which point the members will reconnect and synchronize with the master, or until you make one of the members into the master.
host-syslog-reconfigure
[ host-selector
=host selector value
…]
Reconfigure the syslog daemon on the specified XenServer Hosts. This command will apply the configuration information defined in the host logging
parameter.
The host(s) on which this operation should be performed are selected via the standard selection mechanism (see
host selectors above). Optional arguments can be any number of the host selectors listed at the beginning of this section.
Commands for working with logs.
log-set-output
output=nil | stderr | file:filename
| syslog:sysloglocation
[key=key
] [level= debug | info | warning | error]
Set the output of the specified logger. Log messages are filtered by the subsystem in which they originated and the log level of the message. For example, debug logging messages from the storage manager can be sent to a file via the following command:
xe log-set-output key=sm
level=debug
output=file:/tmp/sm.log
The optional parameter key
specifies the particular logging subsystem. If this parameter is not set, it will default to all logging subsystems.
The optional parameter level
specifies the logging level. Valid values are debug, info, warning or error.
Commands for working with networks.
The network objects can be listed with the standard object listing command (xe network-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
Network parameters
Networks have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the network | read only |
name-label | The name of the network | read only |
name-description | The description text of the network | read only |
VIF-uuids | A list of unique identifiers of the VIFs (virtual network interfaces) that are attached from VMs to this network | read only set parameter |
PIF-uuids | A list of unique identifiers of the PIFs (physical network interfaces) that are attached from XenServer Hosts to this network | read only set parameter |
bridge | name of the bridge corresponding to this network on the local XenServer Host | read only |
other-config | A list of key/value pairs that specify additional configuration parameters for the network. | read/write map parameter |
network-create
name-label=name for network
[name-description=descriptive text
]
Creates a new network.
Commands for working with XenServer host patches (updates). These are for the standard non-OEM editions of XenServer for commands relating to updating the OEM edition of XenServer, see
the section called “Update commands” for details.
The patch objects can be listed with the standard object listing command (xe patch-list), and the parameters manipulated with the standard parameter commands. See the section called “Low-level param commands” for details.
Patch parameters
Patches have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the patch | read only |
host-uuid | The unique identifier for the XenServer Host host to query | read only |
name-label | The name of the patch | read only |
name-description | The description string of the patch | read only |
applied | Whether or not the patch has been applied; true or false | read only |
size | Whether or not the patch has been applied; true or false | read only |
patch-clean
uuid=patch file UUID
Delete the specified patch file from the XenServer Host.
patch-pool-apply
uuid=patch UUID
Apply the specified patch to all XenServer Hosts in the pool.
patch-precheck
uuid=patch UUID
host-uuid=host UUID
Run the prechecks contained within the specified patch on the specified XenServer Host.
patch-upload
file-name=patch filename
Upload a specified patch file to the XenServer Host. This prepares a patch to be applied. On success, the UUID of the uploaded patch is printed out. If the patch has previously been uploaded, a PATCH_ALREADY_EXISTS error is returned instead and the patch is not uploaded again.
Commands for working with PBDs (Physical Block Devices). These are the software objects through which the XenServer Host accesses storage repositories (SRs).
The PBD objects can be listed with the standard object listing command (xe pbd-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
PBD parameters
PBDs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the PBD. | read only |
sr-uuid | the storage repository that the PBD points to | read only |
device-config | additional configuration information that is provided to the XenServer Host’s SR-backend-driver | read only map parameter |
currently-attached | Is the SR currently attached on this host? True or False | read only |
host-uuid | UUID of the physical machine on which the PBD is available | read only |
pbd-create
host-uuid=UUID of XenServer Host
sr-uuid=UUID of SR
[device-config:key=corresponding value
…]
Create a new PBD on a XenServer Host. The read-only device-config
parameter can only be set on creation as in the following example:
To add a mapping of ‘path’ -> ‘/tmp’, the command line should contain the argument device-config:path=/tmp
For a full list of supported device-config key/value pairs on each SR type see
pbd-plug
uuid=UUID of PBD
Attempts to plug in the PBD to the XenServer Host. If this succeeds, the referenced SR (and the VDIs contained within) should then become visible to the XenServer Host.
Commands for working with PIFs (objects representing the physical network interfaces).
The PIF objects can be listed with the standard object listing command (xe pif-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
PIF parameters
PIFs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the PIF | read only |
device | machine-readable name of the interface (for example, eth0) | read only |
MAC | the MAC address of the PIF | read only |
physical | If true, the PIF points to an actual physical network interface | read only |
currently-attached | Is the PIF currently attached on this host? true or false | read only |
MTU | Maximum Transmission Unit of the PIF in bytes. | read only |
VLAN | VLAN tag for all traffic passing through this interface; -1 indicates no VLAN tag is assigned | read only |
bond-master-of | The UUID of the bond this PIF is the master of (if any) | read only |
bond-slave-of | The UUID of the bond this PIF is the slave of (if any) | read only |
management | Is this PIF designated to be a management interface for the control domain | read only |
network-uuid | the unique identifier/object reference of the virtual network to which this PIF is connected | read only |
network-name-label | the name of the of the virtual network to which this PIF is connected | read only |
host-uuid | the unique identifier/object reference of the XenServer Host to which this PIF is connected | read only |
host-name-label | the name of the XenServer Host to which this PIF is connected | read only |
IP-configuration-mode | Type of network address configuration used; DHCP or static | read only |
IP | IP address of the PIF, defined here if IP-configuration-mode is static; undefined if DHCP | read only |
netmask | Netmask of the PIF, defined here if IP-configuration-mode is static; undefined if supplied by DHCP | read only |
gateway | Gateway address of the PIF, defined here if IP-configuration-mode is static; undefined if supplied by DHCP | read only |
DNS | DNS address of the PIF, defined here if IP-configuration-mode is static; undefined if supplied by DHCP | read only |
io_read_kbs | average read rate in kB/s for the device | read only |
io_write_kbs | average write rate in kB/s for the device | read only |
carrier | link state for this device | read only |
vendor-id | the ID assigned to NIC’s vendor | read only |
vendor-name | the NIC vendor’s name | read only |
device-id | the ID assigned by the vendor to this NIC model | read only |
device-name | the name assigned by the vendor to this NIC model | read only |
speed | Data transfer rate of the NIC | read only |
duplex | Duplexing mode of the NIC; full or half | read only |
pci-bus-path | read only | |
pif-metrics-last-updated | Timestamp of the date and time that the metrics for this PIF were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
other-config | additional configuration | read/write map parameter |
pif-introduce
host-uuid=UUID of XenServer Host
mac=MAC address for PIF
device=machine-readable name of the interface (for example, eth0)
Create a new PIF object representing a physical interface on the specified XenServer Host.
pif-reconfigure-ip
uuid=UUID of PIF
mode=DHCP
| mode=static
gateway=network gateway address
IP=static IP for this PIF
netmask=netmask for this PIF
[DNS=DNS address
]
Modify the IP address of the PIF. For static IP configuration, set the mode
parameter to static
, with the gateway
, IP
, and netmask
parameters set to the appropriate values. To use DHCP, just set the mode
parameter to DHCP
and leave the static parameters undefined.
pif-scan
host-uuid=UUID of XenServer Host
Scan for new physical interfaces on a XenServer Host.
Commands for working with pools. A pool is a aggregate of one or more XenServer Hosts. A pool uses one or more shared storage repositories so that the VMs running on one XenServer Host in the pool can be migrated in near-real time (while still running, without needing to be shut down and brought back up) to another XenServer Host in the pool. Each XenServer Host is really a pool consisting of a single member by default. When a XenServer Host is joined to a pool, it is designated as a member, and the pool it has joined becomes the master for the pool.
The singleton pool object can be listed with the standard object listing command (xe pool-list), and its parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
Pool parameters
Pools have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | the unique identifier/object reference for the pool | read only |
name-label | The name of the pool | read/write |
name-description | The description string of the pool | read/write |
master | the unique identifier/object reference of XenServer Host designated as the pool’s master | read only |
default-SR | the unique identifier/object reference of the default SR for the pool | read/write |
crash-dump-SR | the unique identifier/object reference of the SR where any crash dumps for pool members are saved | read/write |
suspend-image-SR | the unique identifier/object reference of the SR where suspended VMs on pool members are saved | read/write |
other-config | A list of key/value pairs that specify additional configuration parameters for the pool | read/write map parameter |
supported-sr-types | SR types that can be used by this pool | read only |
pool-designate-new-master
host-uuid=UUID of member XenServer Host to become new master
Instruct the specified member XenServer Host to become the master of an existing pool. This performs an orderly handover of the role of master host to another host in the resource pool. This command only works when the current master is online, and is not a replacement for the emergency mode commands listed below.
pool-dump-database
file-name=filename to dump database into (on client)
Download a copy of the entire pool database and dump it into a file on the client.
pool-eject
host-uuid=UUID of XenServer Host to eject
Instruct the specified XenServer Host to leave an existing pool.
pool-emergency-reset-master
master-address=address of the pool's master XenServer Host
Instruct a member XenServer Host to reset its master address.
pool-emergency-transition-to-master
Instruct a member XenServer Host to become the pool master. This command is only accepted by the XenServer Host if it has transitioned to emergency mode, meaning it is a member of a pool whose master has disappeared from the network and could not be contacted for some number of retries.
Note that this command may cause the password of the host to reset if it has been modified since joining the pool (see
pool-join
master-address=address
master-username=username
master-password=password
Instruct a XenServer Host to join an existing pool.
pool-recover-slaves
Instruct the pool master to try and reset the master address of all members currently running in emergency mode. This is typically used after pool-emergency-transition-to-master has been used to set one of the members as the new master.
pool-restore-database
file-name=filename to restore from (on client)
Upload a database backup (created with “pool-dump-database”) to a pool. On receiving the upload, the master will restart itself with the new database.
pool-sync-database
Force the pool database to be synchronized across all hosts in the resource pool. This is not necessary in normal operation since the database is regularly replicated automatically, but can be useful for ensuring changes are rapidly replicated after performing a significant set of CLI operations.
Commands for controlling Storage Manager plugins.
The storage manager objects can be listed with the standard object listing command (xe sm-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
SM parameters
SMs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the SM plugin | read only |
name-label | The name of the SM plugin | read only |
name-description | The description string of the SM plugin | read only |
type | The SR type that this plugin connects to | read only |
vendor | Name of the vendor who created this plugin | read only |
copyright | copyright statement for this SM plugin | read only |
required-api-version | Minimum SM API version required on the XenServer Host | read only |
configuration | names and descriptions of device configuration keys | read only |
capabilities | capabilities of the SM plugin | read only |
Commands for controlling SRs (storage repositories).
The SR objects can be listed with the standard object listing command (xe sr-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
SR parameters
SRs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the SR | read only |
name-label | The name of the SR | read/write |
name-description | The description string of the SR | read/write |
allowed-operations | list of the operations allowed on the SR in this state | read only set parameter |
current-operations | A list of the operations that are currently in progress on this SR | read only set parameter |
VDIs | unique identifier/object reference for the virtual disks in this SR | read only set parameter |
PBDs | unique identifier/object reference for the PBDs attached to this SR | read only set parameter |
physical-utilisation | physical space currently utilized on this SR, in bytes. Note that for sparse disk formats, physical utilisation may be less than virtual allocation | read only |
physical-size | total physical size of the SR, in bytes | read only |
type | type of the SR, used to specify the SR backend driver to use | read only |
content-type | the type of the SR’s content. Currently used only to distinguish ISO libraries from other SRs. For storage repositories that store a library of ISOs, the content-type must be set to iso . In other cases, it is recommended that this be set either to empty, or the string ‘user’. |
read only |
shared | true if this SR is capable of being shared between multiple XenServer Hosts; false otherwise | read/write |
other-config | A list of key/value pairs that specify additional configuration parameters for the SR . | read/write map parameter |
host | The storage repository host name | read only |
virtual-allocation | sum of virtual_sizes of all VDIs in this storage repository (in bytes) | read only |
sm-config | SM dependent data | read only map parameter |
sr-create
name-label=name
physical-size=size
type=type
content-type=content-type
device-config:config_name
=value
[host-uuid=XenServer Host UUID
] [shared=true | false
]
Makes an SR on the disk, introduces it into the database, and creates a PBD attaching the SR to a XenServer Host. If shared
is set to true
, a PBD is created for each XenServer Host in the pool; if shared
is not specified or set to false
, a PBD is created only for the XenServer Host specified with host-uuid
.
The exact [device-config] parameters differ depending on the device type
. See
Storage for details of these parameters across the different storage backends.
sr-forget
uuid=SR UUID
The xapi agent forgets about a specified SR on the XenServer Host, meaning that the SR is detached and you cannot access VDIs on it, but it remains intact on the source media (the data is not lost).
sr-introduce
name-label=name
physical-size=physical size
type=type
content-type=content-type
uuid=SR UUID
Just places an SR record into the database. The device-config parameters are specified by device-config:parameter_key=parameter_value (for example, device-config:device=/dev/sdb1).
Note
This command is never used in normal operation. It is an advanced operation which might be useful if an SR needs to be reconfigured as shared after the fact, or to help recover from various failure scenarios.
sr-probe
type=type
[host-uuid=UUID of host
] [device-config:config_name
=value
]
Performs a backend-specific scan, using the provided [device-config] keys. If the [device-config] is complete for the SR backend, then this will return a list of the SRs present on the device, if any. If the [device-config] parameters are only partial, then a backend-specific scan will be performed, returning results that will guide the user in improving the remaining [device-config] parameters. The scan results are returned as backend-specific XML, printed out by the CLI.
The exact [device-config] parameters differ depending on the device type
. See
Storage for details of these parameters across the different storage backends.
sr-scan
uuid=SR UUID
Force an SR scan, syncing the xapi database with VDIs present in the underlying storage substrate.
Commands for working with long-running asynchronous tasks. These are tasks such as starting, stopping, and suspending a Virtual Machine, which are typically made up of a set of other atomic subtasks that together accomplish the requested operation.
The task objects can be listed with the standard object listing command (xe task-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
Task parameters
Tasks have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the Task | read only |
name-label | The name of the Task | read only |
name-description | The description string of the Task | read only |
resident-on | The unique identifier/object reference of the host on which the task is running | read only |
status | current status of the Task | read only |
progress | if the Task is still pending, this field contains the estimated percentage complete, from 0. to 1. If the Task has completed, successfully or unsuccessfully, this should be 1. | read only |
type | if the Task has completed successfully, this parameter contains the type of the encoded result – that is, the name of the class whose reference is in the result field; otherwise, this parameter’s value is undefined | read only |
result | if the Task has completed successfully, this field contains the result value, either Void or an object reference; otherwise, this parameter’s value is undefined | read only |
error_info | if the Task has failed, this parameter contains the set of associated error strings; otherwise, this parameter’s value is undefined | read only |
allowed_operations | list of the operations allowed in this state | read only |
created | Time the task has been created | read only |
finished | Time task finished (i.e. succeeded or failed). If task-status is pending, then the value of this field has no meaning | read only |
Commands for working with VM templates.
Templates are essentially VMs with the is-a-template
parameter set to true
. A template is a “gold image” that contains all the various configuration settings to instantiate a specific VM. XenServer ships with a base set of templates, which range from generic “raw” VMs that can boot an OS vendor installation CD (RHEL, CentOS, SLES, Windows) to complete pre-configured OS instances (Debian Etch and Sarge). With XenServer you can create VMs, configure them in standard forms for your particular needs, and save a copy of them as templates for future use in VM deployment.
The template objects can be listed with the standard object listing command (xe template-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
Template parameters
Templates have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the template | read only |
name-label | The name of the template | read/write |
name-description | The description string of the template | read/write |
user-version | string for creators of VMs and templates to put version information | read/write |
is-a-template | true if this is a template. Template VMs can never be started, they are used only for cloning other VMsNote that setting is-a-template using the CLI is not supported. | read/write |
is-control-domain | true if this is a control domain (domain 0 or a driver domain) | read only |
power-state | Current power state; always halted for a template |
read only |
power-state | Current power state; always halted for a template |
read only |
memory-dynamic-max | dynamic maximum memory in bytes. Currently unused, but if changed the following constraint must be obeyed: memory_static_max >= memory_dynamic_max >= memory_dynamic_min >= memory_static_min . |
read/write |
memory-dynamic-min | dynamic minimum memory in bytes. Currently unused, but if changed the same constraints for memory-dynamic-max must be obeyed. |
read/write |
memory-static-max | statically-set (absolute) maximum memory in bytes. This is the main value used to determine the amount of memory assigned to a VM. | read/write |
memory-static-min | statically-set (absolute) minimum memory in bytes. This represents the absolute minimum memory, and memory-static-min must be less than memory-static-max . This value is currently unused in normal operation, but the previous constraint must be obeyed. |
read/write |
suspend-VDI-uuid | The VDI that a suspend image is stored on (has no meaning for a template) | read only |
VCPUs-params | configuration parameters for the selected VCPU policy.You can tune a VCPU’s pinning with
xe vm-param-set uuid=<VM UUID> VCPUs-params:mask=1,2,3 A VM created from this template will then run on physical CPUs 1, 2, and 3 only. You can also tune the VCPU priority (xen scheduling) with the cap and weight parameters; for example xe vm-param-set uuid=<VM UUID> VCPUs-params:weight=512 xe vm-param-set uuid=<VM UUID> VCPUs-params:cap=100 A VM based on this template with a weight of 512 will get twice as much CPU as a domain with a weight of 256 on a contended XenServer Host. Legal weights range from 1 to 65535 and the default is 256. The cap optionally fixes the maximum amount of CPU a VM based on this template will be able to consume, even if the XenServer Host has idle CPU cycles. The cap is expressed in percentage of one physical CPU: 100 is 1 physical CPU, 50 is half a CPU, 400 is 4 CPUs, etc. The default, 0, means there is no upper cap. |
read/write map parameter |
VCPUs-max | Maximum number of VCPUs | read/write |
VCPUs-at-startup | Boot number of VCPUs | read/write |
actions-after-crash | action to take if a VM based on this template crashes | read/write |
console-uuids | virtual console devices | read only set parameter |
platform | platform-specific configuration | read/write map parameter |
allowed-operations | list of the operations allowed in this state | read only set parameter |
current-operations | A list of the operations that are currently in progress on this template | read only set parameter |
allowed-VBD-devices | list of VBD identifiers available for use, represented by integers of the range 0-15. This list is informational only, and other devices may be used (but may not work). | read only set parameter |
allowed-VIF-devices | list of VIF identifiers available for use, represented by integers of the range 0-15. This list is informational only, and other devices may be used (but may not work). | read only set parameter |
HVM-boot-policy | read/write | |
HVM-boot-params | The order key controls the HVM guest boot order, represented as a string where each character is a boot method: “d” for the CD/DVD, “c” for the root disk, and “n” for network PXE boot. The default is “dc“. |
read/write map parameter |
PV-kernel | path to the kernel | read/write |
PV-ramdisk | path to the initrd | read/write |
PV-args | string of kernel command line arguments | read/write |
PV-legacy-args | string of arguments to make legacy VMs based on this template boot | read/write |
PV-bootloader | name of or path to bootloader | read/write |
PV-bootloader-args | string of miscellaneous arguments for the bootloader | read/write |
last-boot-CPU-flags | describes the CPU flags on which a VM based on this template was last booted; not populated for a template | read only |
resident-on | the XenServer Host on which a VM based on this template is currently resident; appears as <not in database> for a template | read only |
affinity | a XenServer Host which a VM based on this template has preference for running on; used by the xe vm-start command to decide where to run the VM | read/write |
other-config | A list of key/value pairs that specify additional configuration parameters for the template | read/write map parameter |
start-time | Timestamp of the date and time that the metrics for a VM based on this template were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT); set to 1 Jan 1970 Z (beginning of Unix/POSIX epoch) for a template | read only |
install-time | Timestamp of the date and time that the metrics for a VM based on this template were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT); set to 1 Jan 1970 Z (beginning of Unix/POSIX epoch) for a template | read only |
memory-actual | The actual memory being used by a VM based on this template; 0 for a template | read only |
VCPUs-number | The number of virtual CPUs assigned to a VM based on this template; 0 for a template | read only |
VCPUs-utilisation | A list of virtual CPUs and their weight | read only map parameter |
vm-metrics-last-updated | Timestamp of the date and time that the metrics for a VM based on this template were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT); set to 1 Jan 1970 Z (beginning of Unix/POSIX epoch) for a template | read only |
os-version | the version of the operating system for a VM based on this template; appears as <not in database> for a template | read only map parameter |
PV-drivers-version | the versions of the paravirtualized drivers for a VM based on this template; appears as <not in database> for a template | read only map parameter |
PV-drivers-up-to-date | flag for latest version of the paravirtualized drivers for a VM based on this template; appears as <not in database> for a template | read only |
memory | memory metrics reported by the agent on a VM based on this template; appears as <not in database> for a template | read only map parameter |
disks | disk metrics reported by the agent on a VM based on this template; appears as <not in database> for a template | read only map parameter |
networks | network metrics reported by the agent on a VM based on this template; appears as <not in database> for a template | read only map parameter |
other | other metrics reported by the agent on a VM based on this template; appears as <not in database> for a template | read only map parameter |
guest-metrics-last-updated | timestamp when the last write to these fields was performed by the in-guest agent, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
actions-after-shutdown | action to take after the VM has shutdown | read/write |
actions-after-reboot | action to take after the VM has rebooted | read/write |
possible-hosts | list of hosts that could potentially host the VM | read only |
HVM-shadow-multiplier | multiplier applied to the amount of shadow that will be made available to the guest | read/write |
dom-id | domain ID (if available, -1 otherwise) | read only |
recommendations | An XML specification of recommended values and ranges for properties of this VM | read only |
xenstore-data | data to be inserted into the xenstore tree (/local/domain/<domid>/vm-data) after the VM is created. | read/write map parameter |
template-export
template-uuid=UUID of existing template
filename=filename for new template
Exports a copy of a specified template to a file with the specified new filename.
Commands for working with updates to the OEM edition of XenServer. For commands relating to updating the standard non-OEM editions of XenServer, see
the section called “Patch (update) commands” for details.
update-upload
file-name=name of upload file
Streams a new software image to a OEM edition XenServer Host. You must then restart the host for this to take effect.
user-password-change
old=old_password
new=new_password
Changes the logged-in user’s password. The old password field is not currently checked because you require supervisor privilege to make this call.
Commands for working with VBDs (Virtual Block Devices).
A VBD is a software object that connects a VM to the VDI, which represents the contents of the virtual disk. The VBD has the attributes which tie the VDI to the VM (is it bootable, its read/write metrics, and so on), while the VDI has the information on the physical attributes of the virtual disk (which type of SR, whether the disk is shareable, whether the media is read/write or read only, and so on).
The VBD objects can be listed with the standard object listing command (xe vbd-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
VBD parameters
VBDs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the VBD | read only |
vm-uuid | The unique identifier/object reference for the VM this VBD is attached to | read only |
vm-name-label | The name of the VM this VBD is attached to | read only |
vdi-uuid | The unique identifier/object reference for the VDI this VBD is mapped to | read only |
vdi-name-label | The name of the VDI this VBD is mapped to | read only |
empty | if true, this represents an empty drive | read only |
device | the device seen by the guest, for example hda1 | read only |
userdevice | user-friendly device name | read/write |
bootable | true if this VBD is bootable | read/write |
mode | the mode the VBD should be mounted with | read/write |
type | how the VBD appears to the VM, for example disk or CD | read/write |
currently-attached | Is the VBD currently attached on this host? true or false | read only |
storage-lock | true if a storage-level lock was acquired | read only |
status-code | error/success code associated with the last attach operation | read only |
status-detail | error/success information associated with the last attach operation status | read only |
qos_algorithm_type | the QoS algorithm to use | read/write |
qos_algorithm_params | parameters for the chosen QoS algorithm | read/write map parameter |
qos_supported_algorithms | supported QoS algorithms for this VBD | read only set parameter |
io_read_kbs | average read rate in kB/s for this VBD | read only |
io_write_kbs | average write rate in kB/s for this VBD | read only |
vbd-metrics-last-updated | Timestamp of the date and time that the metrics for a VM based on this template were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
allowed-operations | list of the operations allowed in this state. This list is advisory only and the server state may have changed by the time this field is read by a client. | read only set parameter |
current-operations | links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task. | read only set parameter |
unpluggable | true if this VBD will support hot-unplug | read/write |
attachable | true if the device can be attached | read only |
other-config | additional configuration | read/write map parameter |
vbd-create
vm-uuid=UUID of the VM
device=device value
vdi-uuid=UUID of the VDI the VBD will connect to
[bootable=true] [type=Disk | CD
] [mode=RW | RO
]
Create a new VBD on a VM.
Appropriate values for the device
field are listed in the parameter allowed-VBD-devices
on the specified VM. Before any VBDs exist there, the allowable values are integers from 0-15.
If the type
is Disk
, vdi-uuid
is required. Mode can be RO
or RW
for a Disk.
If the type
is CD
, vdi-uuid
is optional; if no VDI is specified, an empty VBD will be created for the CD. Mode must be RO
for a CD.
vbd-eject
uuid=UUID of VBD
Remove the media from the drive represented by a VBD. This command only works if the media is of a removable type (a physical CD or an ISO); otherwise an error message “VBD_NOT_REMOVABLE_MEDIA” is returned.
vbd-insert
uuid=UUID of VBD
vdi-uuid=UUID of VDI containing media
Insert new media into the drive represented by a VBD. This command only works if the media is of a removeable type (a physical CD or an ISO); otherwise an error message “VBD_NOT_REMOVABLE_MEDIA” is returned.
vbd-unplug
uuid=UUID of VBD
Attempts to detach the VBD from the VM while it is in the running state.
Commands for working with VDIs (Virtual Disk Images).
A VDI is a software object that represents the contents of the virtual disk seen by a VM, as opposed to the VBD, which is a connector object that ties a VM to the VDI. The VDI has the information on the physical attributes of the virtual disk (which type of SR, whether the disk is shareable, whether the media is read/write or read only, and so on), while the VBD has the attributes which tie the VDI to the VM (is it bootable, its read/write metrics, and so on).
The VDI objects can be listed with the standard object listing command (xe vdi-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
VDI parameters
VDIs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the VDI | read only |
name-label | The name of the VDI | read/write |
name-description | The description string of the VDI | read/write |
allowed-operations | a list of the operations allowed in this state | read only set parameter |
current-operations | a list of the operations that are currently in progress on this VDI | read only set parameter |
sr-uuid | SR in which the VDI resides | read only |
vbd-uuids | a list of VBDs that refer to this VDI | read only set parameter |
crashdump-uuids | list of crash dumps that refer to this VDI | read only set parameter |
virtual-size | size of disk as presented to the VM, in bytes. Note that, depending on storage backend type, the size may not be respected exactly | read only |
physical-utilisation | amount of physical space that the VDI is currently taking up on the SR, in bytes | read only |
type | type of VDI, for example, System or User | read only |
sharable | true if this VDI may be shared | read only |
read-only | true if this VDI can only be mounted read-only | read only |
storage-lock | true if this VDI is locked at the storage level | read only |
parent | References the parent VDI, if this VDI is part of a chain | read only |
missing | true if SR scan operation reported this VDI as not present | read only |
other-config | additional configuration information for this VDI | read/write map parameter |
sr-name-label | name of the containing storage repository | read only |
location | location information | read only |
managed | true if the CDI is managed | read only |
xenstore-data | data to be inserted into the xenstore tree (/local/domain/0/backend/vbd/<domid>/<device-id>/sm-data) after the VDI is attached. This is generally set by the SM backends on vdi_attach. | read only map parameter |
sm-config | SM dependent data | read only map parameter |
vdi-clone
uuid=UUID of the VDI
[driver-params:key=value
]
Produce a new, writable copy of the specified VDI that can be used directly. It is a variant of vdi-copy that is capable of exposing high-speed image clone facilities where they exist.
The optional driver-params
map parameter can be used for passing extra vendor-specific configuration information to the back end storage driver that the VDI is based on. See the storage vendor’s driver documentation for details.
vdi-copy
uuid=UUID of the VDI
sr-uuid=UUID of the SR to where you want to copy the VDI
Copy a VDI to a specified SR.
vdi-create
sr-uuid=UUID of the SR where you want to create the VDI
name-label=name for the VDI
type=system | user | suspend | crashdump
virtual-size=size of virtual disk
sm-config-*=storage-specific configuration data
Create a VDI.
The virtual-size
parameter can be specified in bytes or using the IEC standard suffixes KiB (210 bytes), MiB (220 bytes), GiB (230 bytes), and TiB (240 bytes).
Note
SR types that support sparse allocation of disks (such as Local VHD and NFS) do not enforce virtual allocation of disks. Users should therefore take great care when over-allocating virtual disk space on an SR. If an over-allocated SR does become full, disk space must be made available either on the SR target substrate or by deleting unused VDIs in the SR.
vdi-destroy
uuid=UUID of VDI
Destroy the specified VDI.
Note
In the case of Local VHD and NFS SR types, disk space is not immediately released on vdi-destroy, but periodically during a storage repository scan operation. Users that need to force deleted disk space to be made available should call
sr-scan manually.
vdi-forget
uuid=UUID of VDI
Unconditionally removes a VDI record from the database without touching the storage backend. In normal operation, you should be using
vdi-destroy instead.
vdi-introduce
uuid=UUID of VDI
sr-uuid=UUID of SR to import into
name-label=name of the new VDI
type=system | user | suspend | crashdump
location=device location (varies by storage type)
[name-description=description of VDI
] [sharable=yes | no
] [read-only=yes | no
] [other-config=map to store misc user-specific data
] [xenstore-data=map to of additional Xenstore keys
] [sm-configstorage-specific configuration data
]
Create a VDI object representing an existing storage device, without actually modifying or creating any storage. This command is primarily used internally to automatically introduce hot-plugged storage devices.
vdi-snapshot
uuid=UUID of the VDI
[driver-params= ]
Produces a read-write version of a VDI that can be used as a reference for backup and/or templating purposes. You can perform a backup from a snapshot rather than installing and running backup software inside the VM. The VM can continue running while external backup software streams the contents of the snapshot to the backup media. Similarly, a snapshot can be used as a “gold image” on which to base a template. A template can be made using any VDIs.
The optional driver-params
map parameter can be used for passing extra vendor-specific configuration information to the back end storage driver that the VDI is based on. See the storage vendor’s driver documentation for details.
A clone of a snapshot should always produce a writable VDI.
vdi-unlock
uuid=UUID of VDI to unlock
[force=true]
Attempts to unlock the specified VDIs. If force=true
is passed to the command, it will force the unlocking operation.
Commands for working with VIFs (Virtual network interfaces).
The VIF objects can be listed with the standard object listing command (xe vif-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
VIF parameters
VIFs have the following parameters:
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the VIF | read only |
vm-uuid | The unique identifier/object reference for the VM that this VIF resides on | read only |
vm-name-label | The name of the VM that this VIF resides on | read only |
allowed-operations | a list of the operations allowed in this state | read only set parameter |
current-operations | a list of the operations that are currently in progress on this VIF | read only set parameter |
device | integer label of this VIF, indicating the order in which VIF backends were created | read only |
MAC | MAC address of VIF, as exposed to the VM | read only |
MTU | Maximum Transmission Unit of the VIF in bytes. This parameter is read-only, but you can override the MTU setting with the mtu key via the other-config map parameter. For example, to reset the MTU on a virtual NIC to use jumbo frames:
xe vif-param-set uuid=<VIF UUID> \ other-config:mtu=9000 |
read only |
currently-attached | true if the device is currently attached | read only |
qos_algorithm_type | QoS algorithm to use | read/write |
qos_algorithm_params | parameters for the chosen QoS algorithm | read/write map parameter |
qos_supported_algorithms | supported QoS algorithms for this VIF | read only set parameter |
other-config | A list of key/value pairs that specify additional configuration parameters for this VIF. | read/write map parameter |
network-uuid | The unique identifier/object reference of the virtual network to which this VIF is connected | read only |
network-name-label | The descriptive name of the virtual network to which this VIF is connected | read only |
io_read_kbs | average read rate in kB/s for this VIF | read only |
io_write_kbs | average write rate in kB/s for this VIF | read only |
vif-metrics-last-updated | Timestamp of the date and time that the metrics for the VIF were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
vif-create
vm-uuid=UUID of the VM
device=see below
network-uuid=UUID of the network the VIF will connect to
[mac=MAC address
]
Create a new VIF on a VM.
Appropriate values for the device
field are listed in the parameter allowed-VIF-devices
on the specified VM. Before any VIFs exist there, the allowable values are integers from 0-15.
The mac
parameter is the standard MAC address in the form aa:bb:cc:dd:ee:ff. If you leave it unspecified, an appropriate random MAC address will be created. You can also explicitly set a random MAC address by specifying mac=random
.
vif-unplug
uuid=UUID of VIF
Attempts to detach the VIF from the VM while it is in the running state.
Commands for working with VLANs (virtual networks). To list and edit virtual interfaces, refer to the PIF commands, which have a VLAN parameter to signal that they have an associated virtual network (see
the section called “PIF commands”). For example, to list VLANs you need to use xe pif-list.
vlan-create
pif-uuid=UUID of PIF
vlan=VLAN tag
network-uuid=UUID of network
Create a new VLAN on a XenServer Host.
vlan-destroy
uuid=UUID of PIF mapped to VLAN
Destroy a VLAN. Requires the UUID of the PIF that represents the VLAN.
Commands for controlling VMs and their attributes.
VM selectors
Several of the commands listed here have a common mechanism for selecting one or more VMs on which to perform the operation. The simplest way is by supplying the argument vm=
. VMs can also be specified by filtering the full list of VMs on the values of fields. For example, specifying name or uuid
power-state=halted
will select all VMs whose power-state
parameter is equal to halted
. Where multiple VMs are matching, the option --multiple
must be specified to perform the operation. The full list of parameters that can be matched is described at the beginning of this section, and can be obtained by the command xe vm-list params=all
. If no parameters to select VMs are given, the operation will be performed on all VMs.
The VM objects can be listed with the standard object listing command (xe vm-list), and the parameters manipulated with the standard parameter commands. See
the section called “Low-level param commands” for details.
VM parameters
VMs have the following parameters:
Note
All writeable VM parameter values can be changed while the VM is running, but the new parameters are not applied dynamically and will not be applied until the VM is rebooted.
Parameter Name | Description | Type |
---|---|---|
uuid | The unique identifier/object reference for the VM | read only |
name-label | The name of the VM | read/write |
name-description | The description string of the VM | read/write |
user-version | string for creators of VMs and templates to put version information | read/write |
is-a-template | false unless this is a template; template VMs can never be started, they are used only for cloning other VMsNote that setting is-a-template using the CLI is not supported. | read/write |
is-control-domain | true if this is a control domain (domain 0 or a driver domain) | read only |
power-state | Current power state | read only |
memory-dynamic-max | dynamic maximum in bytes | read/write |
memory-dynamic-min | dynamic minimum in bytes | read/write |
memory-static-max | statically-set (absolute) maximum in bytes.If you want to change this value, the VM must be shut down. | read/write |
memory-static-min | statically-set (absolute) minimum in bytesIf you want to change this value, the VM must be shut down. | read/write |
suspend-VDI-uuid | The VDI that a suspend image is stored on | read only |
VCPUs-params | configuration parameters for the selected VCPU policy.You can tune a VCPU’s pinning with
xe vm-param-set uuid=<VM UUID> VCPUs-params:mask=1,2,3 The selected VM will then run on physical CPUs 1, 2, and 3 only. You can also tune the VCPU priority (xen scheduling) with the cap and weight parameters; for example xe vm-param-set uuid=<template UUID> \ VCPUs-params:weight=512 xe vm-param-set uuid=<template UUID> \ VCPUs-params:cap=100 A VM with a weight of 512 will get twice as much CPU as a domain with a weight of 256 on a contended XenServer Host. Legal weights range from 1 to 65535 and the default is 256. The cap optionally fixes the maximum amount of CPU a VM will be able to consume, even if the XenServer Host has idle CPU cycles. The cap is expressed in percentage of one physical CPU: 100 is 1 physical CPU, 50 is half a CPU, 400 is 4 CPUs, etc. The default, 0, means there is no upper cap. |
read/write map parameter |
VCPUs-max | Maximum number of virtual CPUs. | read/write |
VCPUs-at-startup | Boot number of virtual CPUs | read/write |
actions-after-crash | action to take if the VM crashes. For PV guests, valid parameters are: preserve (for analysis only), coredump_and_restart (record a coredump and reboot VM), coredump_and_destroy (record a coredump and leave VM halted), restart (no coredump and restart VM), and destroy (no coredump and leave VM halted). | read/write |
console-uuids | virtual console devices | read only set parameter |
platform | platform-specific configuration | read/write map parameter |
allowed-operations | list of the operations allowed in this state | read only set parameter |
current-operations | A list of the operations that are currently in progress on the VM | read only set parameter |
allowed-VBD-devices | list of VBD identifiers available for use, represented by integers of the range 0-15. This list is informational only, and other devices may be used (but may not work). | read only set parameter |
allowed-VIF-devices | list of VIF identifiers available for use, represented by integers of the range 0-15. This list is informational only, and other devices may be used (but may not work). | read only set parameter |
HVM-boot-policy | read/write | |
HVM-boot-params | read/write map parameter | |
HVM-shadow-multiplier | Floating point value which controls the amount of shadow memory overhead to grant the VM. Defaults to 1.0 (the minimum value), and should only be changed by advanced users. | read/write |
PV-kernel | path to the kernel | read/write |
PV-ramdisk | path to the initrd | read/write |
PV-args | string of kernel command line arguments | read/write |
PV-legacy-args | string of arguments to make legacy VMs boot | read/write |
PV-bootloader | name of or path to bootloader | read/write |
PV-bootloader-args | string of miscellaneous arguments for the bootloader | read/write |
last-boot-CPU-flags | describes the CPU flags on which the VM was last booted | read only |
resident-on | the XenServer Host on which a VM is currently resident | read only |
affinity | a XenServer Host which the VM has preference for running on; used by the xe vm-start command to decide where to run the VM | read/write |
other-config | A list of key/value pairs that specify additional configuration parameters for the VMFor example, a VM will be started automatically after host boot if the other-config parameter includes the key/value pair auto_poweron: true | read/write map parameter |
start-time | Timestamp of the date and time that the metrics for the VM were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
install-time | Timestamp of the date and time that the metrics for the VM were read, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
memory-actual | The actual memory being used by a VM | read only |
VCPUs-number | The number of virtual CPUs assigned to the VMFor a paravirtualized Linux VM, this number can differ from VCPUS-max and can be changed without rebooting the VM via the vm-vcpu-hotplug command. See the section called “vm-vcpu-hotplug”. Windows VMs always run with the number of vCPUs set to VCPUs-max and must be rebooted to change this value.
Note that performance will drop sharply if you set |
read only |
VCPUs-utilisation | A list of virtual CPUs and their weight | read only map parameter |
os-version | the version of the operating system for the VM | read only map parameter |
PV-drivers-version | the versions of the paravirtualized drivers for the VM | read only map parameter |
PV-drivers-up-to-date | flag for latest version of the paravirtualized drivers for the VM | read only |
memory | memory metrics reported by the agent on the VM | read only map parameter |
disks | disk metrics reported by the agent on the VM | read only map parameter |
networks | network metrics reported by the agent on the VM | read only map parameter |
other | other metrics reported by the agent on the VM | read only map parameter |
guest-metrics-last-updated | timestamp when the last write to these fields was performed by the in-guest agent, in the form yyyymmddThh:mm:ssz, where z is the single-letter military timezone indicator, for example, Z for UTC (GMT) | read only |
actions-after-shutdown | action to take after the VM has shutdown | read/write |
actions-after-reboot | action to take after the VM has rebooted | read/write |
possible-hosts | potential hosts of this VM | read only |
dom-id | domain ID (if available, -1 otherwise) | read only |
recommendations | An XML specification of recommended values and ranges for properties of this VM | read only |
xenstore-data | data to be inserted into the xenstore tree (/local/domain/<domid>/vm-data) after the VM is created | read/write map parameter |
vm-metrics-last-updated | time when VM metrics were last updated | read only |
vm-cd-add
cd-name=name of new CD
device=integer value of an available VBD
[ vm-selector
=vm selector value
…]
Add a new virtual CD to the selected VM. The device
parameter should be selected from the value of the allowed-VBD-devices
parameter of the VM.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-cd-eject
[ vm-selector
=vm selector value
…]
Eject a CD from the virtual CD drive. This command will only work if there is one and only one CD attached to the VM. When there are two or more CDs, please use the command xe vbd-eject and specify the UUID of the VBD.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-cd-insert
cd-name=name of CD
[ vm-selector
=vm selector value
…]
Insert a CD into the virtual CD drive. This command will only work if there is one and only one empty CD device attached to the VM. When there are two or more empty CD devices, please use the command xe vbd-insert and specify the UUIDs of the VBD and of the VDI to insert.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-cd-list
[vbd-params] [vdi-params] [ vm-selector
=vm selector value
…]
Lists CDs attached to the specified VMs.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
You can also select which VBD and VDI parameters to list.
vm-cd-remove
cd-name=name of cd
[ vm-selector
=vm selector value
…]
Remove a virtual CD from the specified VMs.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-clone
new-name-label=name for clone
[new-name-description=description for clone
] [ vm-selector
=vm selector value
…]
Clone an existing VM, using storage-level fast disk clone operation where available. Specify the name and the optional description for the resulting cloned VM using the new-name-label
and new-name-description
arguments.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-compute-maximum-memory
total=amount of available physical RAM in bytes
[approximate=add overhead memory for additional vCPUS? true | false
] [ vm-selector
=vm selector value
…]
Calculate the maximum amount of static memory which can be allocated to an existing VM, using the total amount of physical RAM as an upper bound. The optional parameter approximate
reserves sufficient extra memory in the calculation to account for adding extra vCPUs into the VM at a later date.
For example:
xe vm-compute-maximum-memory vm=testvm total=`xe host-list params=memory-free --minimal`
uses the value of the memory-free
parameter returned by the xe host-list command to set the maximum memory of the VM named “testvm.”
The VM or VMs on which this operation will be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-copy
new-name-label=name for copy
[new-name-description=description for copy
] [ sr-uuid=UUID of SR
] [ vm-selector
=vm selector value
…]
Copy an existing VM, but without using storage-level fast disk clone operation (even if this is available). The disk images of the copied VM are guaranteed to be “full images” – that is, not part of a copy-on-write (CoW) chain.
Specify the name and the optional description for the resulting copied VM using the new-name-label
and new-name-description
arguments.
Specify the destination SR for the resulting copied VM using the sr-uuid
. If this parameter is not specified, the destination is the same SR that the original VM is in.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-crashdump-list
[ vm-selector
=vm selector value
…]
List crashdumps associated with the specified VMs.
If the optional argument params
is used, the value of params is a string containing a list of parameters of this object that you want to display. Alternatively, you can use the keyword all
to show all parameters. If params
is not used, the returned list shows a default subset of all available parameters.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-create
name-label=name for VM
[name-description=description string for VM
]
Create a new VM with default parameters. Despite its suggestive name, this command does not leave you with a running or runnable VM — it really creates a template. The resultant UUID must be used as the template-uuid
argument passed to the vm-install command.
This is an advanced command and should not normally be used to install VMs. Instead, use the pre-defined templates and the vm-install command to instantiate new VMs.
vm-destroy
uuid=UUID of VM
Destroy the specified VM. This leaves the storage associated with the VM intact. To delete storage as well, use xe vm-uninstall.
vm-disk-add
disk-size=size of disk to add
device=uuid_of_device
[ vm-selector
=vm selector value
…]
Add a new disk to the specified VMs. The device
field should be selected from the value of the allowed-VBD-devices
parameter of the VMs.
The disk-size
parameter can be specified in bytes or using the IEC standard suffixes KiB (210 bytes), MiB (220 bytes), GiB (230 bytes), and TiB (240 bytes).
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-disk-list
[vbd-params] [vdi-params] [ vm-selector
=vm selector value
…]
Lists disks attached to the specified VMs. The vbd-params
and vdi-params
parameters control the fields of the respective objects to output and should be given as a comma-separated list, or the special key all
for the complete list.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-disk-remove
device=integer label of disk
[ vm-selector
=vm selector value
…]
Remove a disk from the specified VMs and destroy it.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-export
filename=export_filename
[metadata=true | false
] [ vm-selector
=vm selector value
…]
Export the specified VMs (including disk images) to a file on the local machine. Specify the filename to export the VM into using the filename
parameter. By convention, the filename should have a .xva
extension.
If the metadata
parameter is [true], then the disks are not exported, and only the VM metadata is written to the output file. This is intended to be used when the underlying storage is transferred through other mechanisms, and permits the VM information to be recreated (see
the section called “vm-import”).
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-import
filename=export_filename
[metadata=true | false
] [preserve=true | false
] [sr-uuid=destination SR UUID
]
Import a VM from a previously-exported file. If preserve
is set to [true], the MAC address of the original VM will be preserved. The sr-uuid
determines the destination SR to import the VM into, and is the default SR if not specified.
The filename
parameter can also point to an XVA-format VM, which is the legacy export format from XenServer 3.2 and is used by some third-party vendors to provide virtual appliances. This format uses a directory to store the VM data, so set filename
to the root directory of the XVA export and not an actual file. Subsequent exports of the imported legacy guest will automatically be upgraded to the new filename-based format, which stores much more data about the configuration of the VM.
Note
The older directory-based XVA format does not fully preserve all the VM attributes. In particular, imported VMs will not have any virtual network interfaces attached by default. If networking is required, create one using vif-create and vif-plug.
If the metadata
is [true], then a previously exported set of metadata can be imported without their associated disk blocks. Metadata-only import will fail if any VDIs cannot be found (named by SR and VDI.location
) unless the --force
option is specified, in which case the import will proceed regardless. If disks can be mirrored/moved out-of-band then metadata import/export represents a fast way of moving VMs between disjoint pools (e.g. as part of a disaster recovery plan).
vm-install
new-name-label=name
[ template-uuid=UUID of desired template
| [template=UUID or name of desired template
]] [ sr-uuid=SR UUID
| sr-name-label=name of SR
]
Install a VM from a template. Specify the template name using either the template-uuid
or template
argument. Specify an SR other than the default SR using either the sr-uuid
or sr-name-label
argument.
vm-memory-shadow-multiplier-set
[ vm-selector
=vm selector value
…] [multiplier=float memory multiplier
]
Set the shadow memory multiplier for the specified VM.
This is an advanced option which modifies the amount of shadow memory assigned to a hardware-assisted VM. In some specialized application workloads, such as the Citrix Presentation Server, extra shadow memory is required to achieve full performance.
This memory is considered to be overhead, and is separate from the normal memory calculations for accounting memory to a VM. When this command is invoked, the amount of free XenServer Host memory will decrease according to the multiplier, and the HVM_shadow_multiplier
field will be updated with the actual value which Xen has assigned to the VM. If there is not enough XenServer Host memory free, then an error will be returned.
The VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors above).
vm-migrate
[[host-uuid=destination XenServer Host UUID
] | [host=name or UUID of destination XenServer Host
]] [ vm-selector
=vm selector value
…] [live=true | false
]
Migrate the specified VMs between physical hosts. The host
parameter can be either the name or the UUID of the XenServer Host.
By default, the VM will be suspended, migrated, and resumed on the other host. The live
parameter activates XenMotion and keeps the VM running while performing the migration, thus minimizing VM downtime to less than a second. In some circumstances such as extremely memory-heavy workloads in the VM, XenMotion automatically falls back into the default mode and suspends the VM for a brief period of time before completing the memory transfer.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-reboot
[ vm-selector
=vm selector value
…] [force=true
]
Reboot the specified VMs.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
Use the force
argument to cause an ungraceful shutdown, akin to pulling the plug on a physical server.
vm-reset-powerstate
[ vm-selector
=vm selector value
…] {force=true}
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
This is an advanced command only to be used when a member host in a pool goes down. You can use this command to force the pool master to reset the power-state of the VMs to be “halted”. Essentially this forces the lock on the VM and its disks so it can be subsequently started on another pool host. This call requires the force flag to be specified, and fails if it is not on the command-line.
vm-resume
[ vm-selector
=vm selector value
…] [force=true | false
] [on=XenServer Host UUID
]
Resume the specified VMs.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
If the VM is on a shared SR in a pool of hosts, use the on
argument to specify which host in the pool on which to start it. By default the system will determine an appropriate host, which might be any of the members of the pool.
vm-shutdown
[ vm-selector
=vm selector value
…] [force=true | false
]
Shut down the specified VM.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
Use the force
argument to cause an ungraceful shutdown, akin to pulling the plug on a physical server.
vm-start
[ vm-selector
=vm selector value
…] [force=true | false
] [on=XenServer Host UUID
] [–multiple]
Start the specified VMs.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
If the VMs are on a shared SR in a pool of hosts, use the on
argument to specify which host in the pool on which to start the VMs. By default the system will determine an appropriate host, which might be any of the members of the pool.
vm-suspend
[ vm-selector
=vm selector value
…]
Suspend the specified VM.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-uninstall
[ vm-selector
=vm selector value
…] [force=true | false
]
Uninstall a VM, destroying its disks (those VDIs that are marked RW and connected to this VM only) as well as its metadata record. To simply destroy the VM metadata, use xe vm-destroy.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-vcpu-hotplug
new-vcpus=new vCPU count
[ vm-selector
=vm selector value
…]
Dynamically adjust the number of vCPUs available to a running paravirtual Linux VM within the number bounded by the parameter VCPUs-max
. Windows VMs always run with the number of vCPUs set to VCPUs-max
and must be rebooted to change this value.
The paravirtualized Linux VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Optional arguments can be any number of the VM parameters listed at the beginning of this section.
vm-vif-list
[ vm-selector
=vm selector value
…]
Lists the VIFs from the specified VMs.
The VM or VMs on which this operation should be performed are selected via the standard selection mechanism (see
VM selectors). Note that the selectors operate on the VM records when filtering, and not on the VIF values. Optional arguments can be any number of the VM parameters listed at the beginning of this section.
I feel this is among the so much important
information for me. And i am happy studying your article. However should observation on some
general things, The site style is wonderful, the articles
is actually nice : D. Excellent job, cheers