Download full document:

API Reference - Types and Classes

Classes

The following classes are defined:

Name Description
auth Management of remote authentication services
blob A placeholder for a binary blob
Bond
Cluster Cluster-wide Cluster metadata
Cluster_host Cluster member metadata
console A console
crashdump Deprecated. A VM crashdump
data_source Data sources for logging in RRDs
DR_task DR task
event Asynchronous event registration and handling
Feature A new piece of functionality
GPU_group A group of compatible GPUs across the resource pool
host A physical host
host_cpu Deprecated. A physical CPU
host_crashdump Represents a host crash dump
host_metrics The metrics associated with a host
host_patch Deprecated. Represents a patch stored on a server
LVHD LVHD SR specific operations
message An message for the attention of the administrator
network A virtual network
network_sriov network-sriov which connects logical pif and physical pif
PBD The physical block devices through which hosts access SRs
PCI A PCI device
PGPU A physical GPU (pGPU)
PIF A physical network interface (note separate VLANs are represented as several PIFs)
PIF_metrics The metrics associated with a physical network interface
pool Pool-wide information
pool_patch Deprecated. Pool-wide patches
pool_update Pool-wide updates to the host software
probe_result A set of properties that describe one result element of SR.probe. Result elements and properties can change dynamically based on changes to the the SR.probe input-parameters or the target.
PUSB A physical USB device
PVS_cache_storage Describes the storage that is available to a PVS site for caching purposes
PVS_proxy a proxy connects a VM/VIF with a PVS site
PVS_server individual machine serving provisioning (block) data
PVS_site machines serving blocks of data for provisioning VMs
role A set of permissions associated with a subject
SDN_controller Describes the SDN controller that is to connect with the pool
secret A secret
session A session
SM A storage manager plugin
SR A storage repository
sr_stat A set of high-level properties associated with an SR.
subject A user or group that can log in xapi
task A long-running asynchronous task
tunnel A tunnel for network traffic
USB_group A group of compatible USBs across the resource pool
user Deprecated. A user of the system
VBD A virtual block device
VBD_metrics Removed. The metrics associated with a virtual block device
VDI A virtual disk image
vdi_nbd_server_info Details for connecting to a VDI using the Network Block Device protocol
VGPU A virtual GPU (vGPU)
VGPU_type A type of virtual GPU
VIF A virtual network interface
VIF_metrics Removed. The metrics associated with a virtual network device
VLAN A VLAN mux/demux
VM A virtual machine (or 'guest').
VM_appliance VM appliance
VM_guest_metrics The metrics reported by the guest (as opposed to inferred from outside)
VM_metrics The metrics associated with a VM
VMPP Removed. VM Protection Policy
VMSS VM Snapshot Schedule
VTPM A virtual TPM device
VUSB Describes the vusb device

Relationships Between Classes

Fields that are bound together are shown in the following table:

object.field object.field relationship
VM.snapshot_of VM.snapshots one-to-many
VDI.snapshot_of VDI.snapshots one-to-many
VM.parent VM.children one-to-many
task.subtask_of task.subtasks one-to-many
PIF.bond_slave_of Bond.slaves one-to-many
Bond.master PIF.bond_master_of one-to-many
VLAN.tagged_PIF PIF.VLAN_slave_of one-to-many
tunnel.access_PIF PIF.tunnel_access_PIF_of one-to-many
tunnel.transport_PIF PIF.tunnel_transport_PIF_of one-to-many
PBD.host host.PBDs one-to-many
PBD.SR SR.PBDs one-to-many
VBD.VDI VDI.VBDs one-to-many
crashdump.VDI VDI.crash_dumps one-to-many
VBD.VM VM.VBDs one-to-many
crashdump.VM VM.crash_dumps one-to-many
VIF.VM VM.VIFs one-to-many
VIF.network network.VIFs one-to-many
Cluster_host.cluster Cluster.cluster_hosts one-to-many
PIF.host host.PIFs one-to-many
PIF.network network.PIFs one-to-many
VDI.SR SR.VDIs one-to-many
VTPM.VM VM.VTPMs one-to-many
console.VM VM.consoles one-to-many
VM.resident_on host.resident_VMs one-to-many
host_cpu.host host.host_CPUs one-to-many
host_crashdump.host host.crashdumps one-to-many
host_patch.host host.patches one-to-many
host_patch.pool_patch pool_patch.host_patches one-to-many
host.updates pool_update.hosts many-to-many
subject.roles subject.roles unknown type
role.subroles role.subroles many-to-many
VM.protection_policy VMPP.VMs one-to-many
VM.snapshot_schedule VMSS.VMs one-to-many
VM.appliance VM_appliance.VMs one-to-many
PGPU.GPU_group GPU_group.PGPUs one-to-many
VGPU.GPU_group GPU_group.VGPUs one-to-many
VGPU.type VGPU_type.VGPUs one-to-many
VGPU.VM VM.VGPUs one-to-many
VGPU.resident_on PGPU.resident_VGPUs one-to-many
PGPU.supported_VGPU_types VGPU_type.supported_on_PGPUs many-to-many
PGPU.enabled_VGPU_types VGPU_type.enabled_on_PGPUs many-to-many
GPU_group.supported_VGPU_types VGPU_type.supported_on_GPU_groups many-to-many
GPU_group.enabled_VGPU_types VGPU_type.enabled_on_GPU_groups many-to-many
PCI.host host.PCIs one-to-many
PGPU.host host.PGPUs one-to-many
VDI.metadata_of_pool pool.metadata_VDIs one-to-many
SR.introduced_by DR_task.introduced_SRs one-to-many
PVS_server.site PVS_site.servers one-to-many
PVS_proxy.site PVS_site.proxies one-to-many
PVS_cache_storage.site PVS_site.cache_storage one-to-many
PUSB.host host.PUSBs one-to-many
PUSB.USB_group USB_group.PUSBs one-to-many
VUSB.USB_group USB_group.VUSBs one-to-many
VUSB.VM VM.VUSBs one-to-many
Feature.host host.features one-to-many
network_sriov.physical_PIF PIF.sriov_physical_PIF_of one-to-many
network_sriov.logical_PIF PIF.sriov_logical_PIF_of one-to-many

The following figure represents bound fields (as specified above) diagramatically, using crow's foot notation to specify one-to-one, one-to-many or many-to-many relationships:

Class relationships

Types

Primitives

The following primitive types are used to specify methods and fields in the API Reference:

Type Description
string text strings
int 64-bit integers
float IEEE double-precision floating-point numbers
bool boolean
datetime date and timestamp

Higher-order types

The following type constructors are used:

Type Description
c ref reference to an object of class c
t set a set of elements of type t
(a -> b) map a table mapping values of type a to values of type b

Enumeration types

The following enumeration types are used:

enum after_apply_guidance
restartHost This patch requires the host to be restarted once applied.
restartHVM This patch requires HVM guests to be restarted once applied.
restartPV This patch requires PV guests to be restarted once applied.
restartXAPI This patch requires XAPI to be restarted once applied.
enum allocation_algorithm
breadth_first vGPUs of a given type are allocated evenly across supporting pGPUs.
depth_first vGPUs of a given type are allocated on supporting pGPUs until they are full.
enum bond_mode
active-backup Active/passive bonding: only one NIC is carrying traffic
balance-slb Source-level balancing
lacp Link aggregation control protocol
enum cls
Host Host
Pool Pool
PVS_proxy PVS_proxy
SR SR
VDI VDI
VM VM
VMPP VMPP
VMSS VMSS
enum cluster_host_operation
destroy completely destroying a cluster host
disable disabling cluster membership on a particular host
enable enabling cluster membership on a particular host
enum cluster_operation
add adding a new member to the cluster
destroy completely destroying a cluster
disable disabling any cluster member
enable enabling any cluster member
remove removing a member from the cluster
enum console_protocol
rdp Remote Desktop Protocol
rfb Remote FrameBuffer protocol (as used in VNC)
vt100 VT100 terminal
enum domain_type
hvm HVM; Fully Virtualised
pv PV: Paravirtualised
pv_in_pvh PV inside a PVH container
unspecified Not specified or unknown domain type
enum event_operation
add An object has been created
del An object has been deleted
mod An object has been modified
enum host_allowed_operations
evacuate Indicates this host is evacuating
power_on Indicates this host is in the process of being powered on
provision Indicates this host is able to provision another VM
reboot Indicates this host is in the process of rebooting
shutdown Indicates this host is in the process of shutting itself down
vm_migrate This host is the migration target of a VM
vm_resume This host is resuming a VM
vm_start This host is starting a VM
enum host_display
disable_on_reboot The host will stop outputting its console to a physical display device on next boot
disabled This host is not outputting its console to a physical display device
enable_on_reboot The host will start outputting its console to a physical display device on next boot
enabled This host is outputting its console to a physical display device
enum ip_configuration_mode
DHCP Acquire an IP address by DHCP
None Do not acquire an IP address
Static Static IP address configuration
enum ipv6_configuration_mode
Autoconf Router assigned prefix delegation IPv6 allocation
DHCP Acquire an IPv6 address by DHCP
None Do not acquire an IPv6 address
Static Static IPv6 address configuration
enum livepatch_status
ok There is no applicable live patch
ok_livepatch_complete An applicable live patch exists for every required component
ok_livepatch_incomplete An applicable live patch exists but it is not sufficient
enum network_default_locking_mode
disabled Treat all VIFs on this network with locking_mode = 'default' as if they have locking_mode = 'disabled'
unlocked Treat all VIFs on this network with locking_mode = 'default' as if they have locking_mode = 'unlocked'
enum network_operations
attaching Indicates this network is attaching to a VIF or PIF
enum network_purpose
insecure_nbd Network Block Device service without integrity or confidentiality: NOT RECOMMENDED
nbd Network Block Device service using TLS
enum on_boot
persist Standard behaviour.
reset When a VM containing this VDI is started, the contents of the VDI are reset to the state they were in when this flag was last set.
enum on_crash_behaviour
coredump_and_destroy record a coredump and then destroy the VM state
coredump_and_restart record a coredump and then restart the VM
destroy destroy the VM state
preserve leave the crashed VM paused
rename_restart rename the crashed VM and start a new copy
restart restart the VM
enum on_normal_exit
destroy destroy the VM state
restart restart the VM
enum pgpu_dom0_access
disable_on_reboot On host reboot dom0 will be blocked from accessing this device
disabled dom0 cannot access this device
enable_on_reboot On host reboot dom0 will be allowed to access this device
enabled dom0 can access this device as normal
enum pif_igmp_status
disabled IGMP Snooping is disabled in the corresponding backend bridge.'
enabled IGMP Snooping is enabled in the corresponding backend bridge.'
unknown IGMP snooping status is unknown. If this is a VLAN master, then please consult the underlying VLAN slave PIF.
enum pool_allowed_operations
cluster_create Indicates this pool is in the process of creating a cluster
ha_disable Indicates this pool is in the process of disabling HA
ha_enable Indicates this pool is in the process of enabling HA
enum primary_address_type
IPv4 Primary address is the IPv4 address
IPv6 Primary address is the IPv6 address
enum pvs_proxy_status
caching The proxy is currently caching data
incompatible_protocol_version The PVS protocol in use is not compatible with the PVS proxy
incompatible_write_cache_mode The PVS device is configured to use an incompatible write-cache mode
initialised The proxy is setup but has not yet cached anything
stopped The proxy is not currently running
enum sdn_controller_protocol
pssl Passive ssl connection
ssl Active ssl connection
enum sr_health
healthy Storage is fully available
recovering Storage is busy recovering, e.g. rebuilding mirrors.
enum sriov_configuration_mode
modprobe Configure network sriov by modprobe, need reboot
sysfs Configure network sriov by sysfs, do not need reboot
unknown Unknown mode
enum storage_operations
destroy Destroying the SR
forget Forgetting about SR
pbd_create Creating a PBD for this SR
pbd_destroy Destroying one of this SR's PBDs
plug Plugging a PBD into this SR
scan Scanning backends for new or deleted VDIs
unplug Unplugging a PBD from this SR
update Refresh the fields on the SR
vdi_clone Cloneing a VDI
vdi_create Creating a new VDI
vdi_data_destroy Deleting the data of the VDI
vdi_destroy Destroying a VDI
vdi_disable_cbt Disabling changed block tracking for a VDI
vdi_enable_cbt Enabling changed block tracking for a VDI
vdi_introduce Introducing a new VDI
vdi_list_changed_blocks Exporting a bitmap that shows the changed blocks between two VDIs
vdi_mirror Mirroring a VDI
vdi_resize Resizing a VDI
vdi_set_on_boot Setting the on_boot field of the VDI
vdi_snapshot Snapshotting a VDI
enum task_allowed_operations
cancel refers to the operation "cancel"
destroy refers to the operation "destroy"
enum task_status_type
cancelled task has been cancelled
cancelling task is being cancelled
failure task has failed
pending task is in progress
success task was completed successfully
enum tristate_type
no Known to be false
unspecified Unknown or unspecified
yes Known to be true
enum update_after_apply_guidance
restartHost This update requires the host to be restarted once applied.
restartHVM This update requires HVM guests to be restarted once applied.
restartPV This update requires PV guests to be restarted once applied.
restartXAPI This update requires XAPI to be restarted once applied.
enum vbd_mode
RO only read-only access will be allowed
RW read-write access will be allowed
enum vbd_operations
attach Attempting to attach this VBD to a VM
eject Attempting to eject the media from this VBD
insert Attempting to insert new media into this VBD
pause Attempting to pause a block device backend
plug Attempting to hotplug this VBD
unpause Attempting to unpause a block device backend
unplug Attempting to hot unplug this VBD
unplug_force Attempting to forcibly unplug this VBD
enum vbd_type
CD VBD will appear to guest as CD
Disk VBD will appear to guest as disk
Floppy VBD will appear as a floppy
enum vdi_operations
blocked Operations on this VDI are temporarily blocked
clone Cloning the VDI
copy Copying the VDI
data_destroy Deleting the data of the VDI
destroy Destroying the VDI
disable_cbt Disabling changed block tracking for a VDI
enable_cbt Enabling changed block tracking for a VDI
force_unlock Forcibly unlocking the VDI
forget Forget about the VDI
generate_config Generating static configuration
list_changed_blocks Exporting a bitmap that shows the changed blocks between two VDIs
mirror Mirroring the VDI
resize Resizing the VDI
resize_online Resizing the VDI which may or may not be online
set_on_boot Setting the on_boot field of the VDI
snapshot Snapshotting the VDI
update Refreshing the fields of the VDI
enum vdi_type
cbt_metadata Metadata about a snapshot VDI that has been deleted: the set of blocks that changed between some previous version of the disk and the version tracked by the snapshot.
crashdump a disk that stores VM crashdump information
ephemeral a disk that may be reformatted on upgrade
ha_statefile a disk used for HA storage heartbeating
metadata a disk used for HA Pool metadata
pvs_cache a disk that stores PVS cache data
redo_log a disk used for a general metadata redo-log
rrd a disk that stores SR-level RRDs
suspend a disk that stores a suspend image
system a disk that may be replaced on upgrade
user a disk that is always preserved on upgrade
enum vgpu_type_implementation
gvt_g vGPU using Intel GVT-g
mxgpu vGPU using AMD MxGPU
nvidia vGPU using NVIDIA hardware
passthrough Pass through an entire physical GPU to a guest
enum vif_ipv4_configuration_mode
None Follow the default IPv4 configuration of the guest (this is guest-dependent)
Static Static IPv4 address configuration
enum vif_ipv6_configuration_mode
None Follow the default IPv6 configuration of the guest (this is guest-dependent)
Static Static IPv6 address configuration
enum vif_locking_mode
disabled No traffic is permitted
locked Only traffic to a specific MAC and a list of IPv4 or IPv6 addresses is permitted
network_default No specific configuration set - default network policy applies
unlocked All traffic is permitted
enum vif_operations
attach Attempting to attach this VIF to a VM
plug Attempting to hotplug this VIF
unplug Attempting to hot unplug this VIF
enum vm_appliance_operation
clean_shutdown Clean shutdown
hard_shutdown Hard shutdown
shutdown Shutdown
start Start
enum vm_operations
assert_operation_valid
awaiting_memory_live Waiting for the memory settings to change
call_plugin refers to the operation "call_plugin"
changing_dynamic_range Changing the memory dynamic range
changing_memory_limits Changing the memory limits
changing_memory_live Changing the memory settings
changing_shadow_memory Changing the shadow memory for a halted VM.
changing_shadow_memory_live Changing the shadow memory for a running VM.
changing_static_range Changing the memory static range
changing_VCPUs Changing VCPU settings for a halted VM.
changing_VCPUs_live Changing VCPU settings for a running VM.
checkpoint refers to the operation "checkpoint"
clean_reboot refers to the operation "clean_reboot"
clean_shutdown refers to the operation "clean_shutdown"
clone refers to the operation "clone"
copy refers to the operation "copy"
create_template refers to the operation "create_template"
csvm refers to the operation "csvm"
data_source_op Add, remove, query or list data sources
destroy refers to the act of uninstalling the VM
export exporting a VM to a network stream
get_boot_record refers to the operation "get_boot_record"
hard_reboot refers to the operation "hard_reboot"
hard_shutdown refers to the operation "hard_shutdown"
import importing a VM from a network stream
make_into_template Turning this VM into a template
metadata_export exporting VM metadata to a network stream
migrate_send refers to the operation "migrate_send"
pause refers to the operation "pause"
pool_migrate refers to the operation "pool_migrate"
power_state_reset refers to the operation "power_state_reset"
provision refers to the operation "provision"
query_services refers to the operation "query_services"
resume refers to the operation "resume"
resume_on refers to the operation "resume_on"
revert refers to the operation "revert"
reverting Reverting the VM to a previous snapshotted state
send_sysrq refers to the operation "send_sysrq"
send_trigger refers to the operation "send_trigger"
shutdown refers to the operation "shutdown"
snapshot refers to the operation "snapshot"
snapshot_with_quiesce refers to the operation "snapshot_with_quiesce"
start refers to the operation "start"
start_on refers to the operation "start_on"
suspend refers to the operation "suspend"
unpause refers to the operation "unpause"
update_allowed_operations
enum vm_power_state
Halted VM is offline and not using any resources
Paused All resources have been allocated but the VM itself is paused and its vCPUs are not running
Running Running
Suspended VM state has been saved to disk and it is nolonger running. Note that disks remain in-use while the VM is suspended.
enum vmpp_archive_frequency
always_after_backup Archive after backup
daily Daily archives
never Never archive
weekly Weekly backups
enum vmpp_archive_target_type
cifs CIFS target config
nfs NFS target config
none No target config
enum vmpp_backup_frequency
daily Daily backups
hourly Hourly backups
weekly Weekly backups
enum vmpp_backup_type
checkpoint The backup is a checkpoint
snapshot The backup is a snapshot
enum vmss_frequency
daily Daily snapshots
hourly Hourly snapshots
weekly Weekly snapshots
enum vmss_type
checkpoint The snapshot is a checkpoint
snapshot The snapshot is a disk snapshot
snapshot_with_quiesce The snapshot is a VSS
enum vusb_operations
attach Attempting to attach this VUSB to a VM
plug Attempting to plug this VUSB into a VM
unplug Attempting to hot unplug this VUSB

Class: auth

Management of remote authentication services

Fields for class: auth

Class auth has no fields.

RPCs associated with class: auth

RPC name: get_group_membership

Overview:

This calls queries the external directory service to obtain the transitively-closed set of groups that the the subject_identifier is member of.

Signature:

string set get_group_membership (session ref session_id, string subject_identifier)

Arguments:

type name description
session ref session_id Reference to a valid session
string subject_identifier A string containing the subject_identifier, unique in the external directory service

Return Type: string set

set of subject_identifiers that provides the group membership of subject_identifier passed as argument, it contains, recursively, all groups a subject_identifier is member of.

RPC name: get_subject_identifier

Overview:

This call queries the external directory service to obtain the subject_identifier as a string from the human-readable subject_name

Signature:

string get_subject_identifier (session ref session_id, string subject_name)

Arguments:

type name description
session ref session_id Reference to a valid session
string subject_name The human-readable subject_name, such as a username or a groupname

Return Type: string

the subject_identifier obtained from the external directory service

RPC name: get_subject_information_from_identifier

Overview:

This call queries the external directory service to obtain the user information (e.g. username, organization etc) from the specified subject_identifier

Signature:

(string -> string) map get_subject_information_from_identifier (session ref session_id, string subject_identifier)

Arguments:

type name description
session ref session_id Reference to a valid session
string subject_identifier A string containing the subject_identifier, unique in the external directory service

Return Type: (string -> string) map

key-value pairs containing at least a key called subject_name

Class: blob

A placeholder for a binary blob

Fields for class: blob

Field Type Qualifier Description
last_updated datetime RO/constructor Time at which the data in the blob was last updated
mime_type string RO/constructor The mime type associated with this object. Defaults to 'application/octet-stream' if the empty string is supplied
name_description string RW a notes field containing human-readable description
name_label string RW a human-readable name
public bool RW True if the blob is publicly accessible
size int RO/runtime Size of the binary data, in bytes
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: blob

RPC name: create

Overview:

Create a placeholder for a binary blob

Signature:

blob ref create (session ref session_id, string mime_type, bool public)

Arguments:

type name description
session ref session_id Reference to a valid session
string mime_type The mime-type of the blob. Defaults to 'application/octet-stream' if the empty string is supplied
bool public True if the blob should be publicly available

Return Type: blob ref

The reference to the created blob

RPC name: destroy

Overview:

Signature:

void destroy (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self The reference of the blob to destroy

Return Type: void

RPC name: get_all

Overview:

Return a list of all the blobs known to the system.

Signature:

blob ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of blob references to blob records for all blobs known to the system.

Signature:

(blob ref -> blob record) map get_all_records (session ref session_id)

RPC name: get_by_name_label

Overview:

Get all the blob instances with the given label.

Signature:

blob ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: blob ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the blob instance with the specified UUID.

Signature:

blob ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: blob ref

reference to the object

RPC name: get_last_updated

Overview:

Get the last_updated field of the given blob.

Signature:

datetime get_last_updated (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: datetime

value of the field

RPC name: get_mime_type

Overview:

Get the mime_type field of the given blob.

Signature:

string get_mime_type (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given blob.

Signature:

string get_name_description (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given blob.

Signature:

string get_name_label (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: string

value of the field

RPC name: get_public

Overview:

Get the public field of the given blob.

Signature:

bool get_public (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: bool

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given blob.

Signature:

blob record get_record (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: blob record

all fields from the object

RPC name: get_size

Overview:

Get the size field of the given blob.

Signature:

int get_size (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: int

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given blob.

Signature:

string get_uuid (session ref session_id, blob ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object

Return Type: string

value of the field

RPC name: set_name_description

Overview:

Set the name/description field of the given blob.

Signature:

void set_name_description (session ref session_id, blob ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_name_label

Overview:

Set the name/label field of the given blob.

Signature:

void set_name_label (session ref session_id, blob ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_public

Overview:

Set the public field of the given blob.

Signature:

void set_public (session ref session_id, blob ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
blob ref self reference to the object
bool value New value to set

Return Type: void

Class: Bond

Fields for class: Bond

Field Type Qualifier Description
links_up int RO/runtime Number of links up in this bond
master PIF ref RO/constructor The bonded interface
mode bond_mode RO/runtime The algorithm used to distribute traffic among the bonded NICs
other_config (string -> string) map RW additional configuration
primary_slave PIF ref RO/runtime The PIF of which the IP configuration and MAC were copied to the bond, and which will receive all configuration/VLANs/VIFs on the bond if the bond is destroyed
properties (string -> string) map RO/runtime Additional configuration properties specific to the bond mode.
slaves PIF ref set RO/runtime The interfaces which are part of this bond
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: Bond

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given Bond.

Signature:

void add_to_other_config (session ref session_id, Bond ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create

Overview:

Create an interface bond

Signature:

Bond ref create (session ref session_id, network ref network, PIF ref set members, string MAC, bond_mode mode, (string -> string) map properties)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref network Network to add the bonded PIF to
PIF ref set members PIFs to add to this bond
string MAC The MAC address to use on the bond itself. If this parameter is the empty string then the bond will inherit its MAC address from the primary slave.
bond_mode mode Bonding mode to use for the new bond
(string -> string) map properties Additional configuration parameters specific to the bond mode

Return Type: Bond ref

The reference of the created Bond object

RPC name: destroy

Overview:

Destroy an interface bond

Signature:

void destroy (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self Bond to destroy

Return Type: void

RPC name: get_all

Overview:

Return a list of all the Bonds known to the system.

Signature:

Bond ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of Bond references to Bond records for all Bonds known to the system.

Signature:

(Bond ref -> Bond record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the Bond instance with the specified UUID.

Signature:

Bond ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: Bond ref

reference to the object

RPC name: get_links_up

Overview:

Get the links_up field of the given Bond.

Signature:

int get_links_up (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: int

value of the field

RPC name: get_master

Overview:

Get the master field of the given Bond.

Signature:

PIF ref get_master (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: PIF ref

value of the field

RPC name: get_mode

Overview:

Get the mode field of the given Bond.

Signature:

bond_mode get_mode (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: bond_mode

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given Bond.

Signature:

(string -> string) map get_other_config (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_primary_slave

Overview:

Get the primary_slave field of the given Bond.

Signature:

PIF ref get_primary_slave (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: PIF ref

value of the field

RPC name: get_properties

Overview:

Get the properties field of the given Bond.

Signature:

(string -> string) map get_properties (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given Bond.

Signature:

Bond record get_record (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: Bond record

all fields from the object

RPC name: get_slaves

Overview:

Get the slaves field of the given Bond.

Signature:

PIF ref set get_slaves (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: PIF ref set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given Bond.

Signature:

string get_uuid (session ref session_id, Bond ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given Bond. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, Bond ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_mode

Overview:

Change the bond mode

Signature:

void set_mode (session ref session_id, Bond ref self, bond_mode value)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self The bond
bond_mode value The new bond mode

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given Bond.

Signature:

void set_other_config (session ref session_id, Bond ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_property

Overview:

Set the value of a property of the bond

Signature:

void set_property (session ref session_id, Bond ref self, string name, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
Bond ref self The bond
string name The property name
string value The property value

Return Type: void

Class: Cluster

Cluster-wide Cluster metadata

Fields for class: Cluster

Field Type Qualifier Description
allowed_operations cluster_operation set RO/runtime 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.
cluster_config (string -> string) map RO/constructor Contains read-only settings for the cluster, such as timeouts and other options. It can only be set at cluster create time
cluster_hosts Cluster_host ref set RO/runtime A list of the cluster_host objects associated with the Cluster
cluster_stack string RO/constructor Simply the string 'corosync'. No other cluster stacks are currently supported
cluster_token string RO/constructor The secret key used by xapi-clusterd when it talks to itself on other hosts
current_operations (string -> cluster_operation) map RO/runtime links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
other_config (string -> string) map RW Additional configuration
pending_forget string set RO/runtime Internal field used by Host.destroy to store the IP of cluster members marked as permanently dead but not yet removed
pool_auto_join bool RO/constructor True if automatically joining new pool members to the cluster. This will be true in the first release
token_timeout float RO/constructor The corosync token timeout in seconds
token_timeout_coefficient float RO/constructor The corosync token timeout coefficient in seconds
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: Cluster

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given Cluster.

Signature:

void add_to_other_config (session ref session_id, Cluster ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create

Overview:

Creates a Cluster object and one Cluster_host object as its first member

Signature:

Cluster ref create (session ref session_id, PIF ref PIF, string cluster_stack, bool pool_auto_join, float token_timeout, float token_timeout_coefficient)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref PIF The PIF to connect the cluster's first cluster_host to
string cluster_stack simply the string 'corosync'. No other cluster stacks are currently supported
bool pool_auto_join true if xapi is automatically joining new pool members to the cluster
float token_timeout Corosync token timeout in seconds
float token_timeout_coefficient Corosync token timeout coefficient in seconds

Return Type: Cluster ref

the new Cluster

Possible Error Codes: INVALID_CLUSTER_STACK, INVALID_VALUE, PIF_ALLOWS_UNPLUG, REQUIRED_PIF_IS_UNPLUGGED

RPC name: destroy

Overview:

Destroys a Cluster object and the one remaining Cluster_host member

Signature:

void destroy (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self the Cluster to destroy

Return Type: void

Possible Error Codes: CLUSTER_DOES_NOT_HAVE_ONE_NODE, CLUSTER_STACK_IN_USE

RPC name: get_all

Overview:

Return a list of all the Clusters known to the system.

Signature:

Cluster ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of Cluster references to Cluster records for all Clusters known to the system.

Signature:

(Cluster ref -> Cluster record) map get_all_records (session ref session_id)

RPC name: get_allowed_operations

Overview:

Get the allowed_operations field of the given Cluster.

Signature:

cluster_operation set get_allowed_operations (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: cluster_operation set

value of the field

RPC name: get_by_uuid

Overview:

Get a reference to the Cluster instance with the specified UUID.

Signature:

Cluster ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: Cluster ref

reference to the object

RPC name: get_cluster_config

Overview:

Get the cluster_config field of the given Cluster.

Signature:

(string -> string) map get_cluster_config (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_cluster_hosts

Overview:

Get the cluster_hosts field of the given Cluster.

Signature:

Cluster_host ref set get_cluster_hosts (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: Cluster_host ref set

value of the field

RPC name: get_cluster_stack

Overview:

Get the cluster_stack field of the given Cluster.

Signature:

string get_cluster_stack (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: string

value of the field

RPC name: get_cluster_token

Overview:

Get the cluster_token field of the given Cluster.

Signature:

string get_cluster_token (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: string

value of the field

RPC name: get_current_operations

Overview:

Get the current_operations field of the given Cluster.

Signature:

(string -> cluster_operation) map get_current_operations (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: (string -> cluster_operation) map

value of the field

RPC name: get_network

Overview:

Returns the network used by the cluster for inter-host communication, i.e. the network shared by all cluster host PIFs

Signature:

network ref get_network (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self the Cluster with the network

Return Type: network ref

network of cluster

RPC name: get_other_config

Overview:

Get the other_config field of the given Cluster.

Signature:

(string -> string) map get_other_config (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_pending_forget

Overview:

Get the pending_forget field of the given Cluster.

Signature:

string set get_pending_forget (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: string set

value of the field

RPC name: get_pool_auto_join

Overview:

Get the pool_auto_join field of the given Cluster.

Signature:

bool get_pool_auto_join (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: bool

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given Cluster.

Signature:

Cluster record get_record (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: Cluster record

all fields from the object

RPC name: get_token_timeout

Overview:

Get the token_timeout field of the given Cluster.

Signature:

float get_token_timeout (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: float

value of the field

RPC name: get_token_timeout_coefficient

Overview:

Get the token_timeout_coefficient field of the given Cluster.

Signature:

float get_token_timeout_coefficient (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: float

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given Cluster.

Signature:

string get_uuid (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object

Return Type: string

value of the field

RPC name: pool_create

Overview:

Attempt to create a Cluster from the entire pool

Signature:

Cluster ref pool_create (session ref session_id, network ref network, string cluster_stack, float token_timeout, float token_timeout_coefficient)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref network the single network on which corosync carries out its inter-host communications
string cluster_stack simply the string 'corosync'. No other cluster stacks are currently supported
float token_timeout Corosync token timeout in seconds
float token_timeout_coefficient Corosync token timeout coefficient in seconds

Return Type: Cluster ref

the new Cluster

RPC name: pool_destroy

Overview:

Attempt to destroy the Cluster_host objects for all hosts in the pool and then destroy the Cluster.

Signature:

void pool_destroy (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self The cluster to destroy.

Return Type: void

Possible Error Codes: CLUSTER_STACK_IN_USE, CLUSTERING_DISABLED, CLUSTER_HOST_IS_LAST

RPC name: pool_force_destroy

Overview:

Attempt to force destroy the Cluster_host objects, and then destroy the Cluster.

Signature:

void pool_force_destroy (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self The cluster to force destroy.

Return Type: void

Possible Error Codes: CLUSTER_FORCE_DESTROY_FAILED

RPC name: pool_resync

Overview:

Resynchronise the cluster_host objects across the pool. Creates them where they need creating and then plugs them

Signature:

void pool_resync (session ref session_id, Cluster ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self The cluster to resync

Return Type: void

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given Cluster. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, Cluster ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given Cluster.

Signature:

void set_other_config (session ref session_id, Cluster ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: Cluster_host

Cluster member metadata

Fields for class: Cluster_host

Field Type Qualifier Description
allowed_operations cluster_host_operation set RO/runtime 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.
cluster Cluster ref RO/constructor Reference to the Cluster object
current_operations (string -> cluster_host_operation) map RO/runtime links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
enabled bool RO/constructor Whether the cluster host believes that clustering should be enabled on this host
host host ref RO/constructor Reference to the Host object
joined bool RO/constructor Whether the cluster host has joined the cluster
other_config (string -> string) map RO/constructor Additional configuration
PIF PIF ref RO/constructor Reference to the PIF object
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: Cluster_host

RPC name: create

Overview:

Add a new host to an existing cluster.

Signature:

Cluster_host ref create (session ref session_id, Cluster ref cluster, host ref host, PIF ref pif)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster ref cluster Cluster to join
host ref host new cluster member
PIF ref pif Network interface to use for communication

Return Type: Cluster_host ref

the newly created cluster_host object

Possible Error Codes: PIF_NOT_ATTACHED_TO_HOST, NO_CLUSTER_HOSTS_REACHABLE

RPC name: destroy

Overview:

Remove a host from an existing cluster.

Signature:

void destroy (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self the cluster_host to remove from the cluster

Return Type: void

Possible Error Codes: CLUSTER_STACK_IN_USE, CLUSTERING_DISABLED, CLUSTER_HOST_IS_LAST

RPC name: disable

Overview:

Disable cluster membership for an enabled cluster host.

Signature:

void disable (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self the cluster_host to disable

Return Type: void

Possible Error Codes: CLUSTER_STACK_IN_USE

RPC name: enable

Overview:

Enable cluster membership for a disabled cluster host.

Signature:

void enable (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self the cluster_host to enable

Return Type: void

Possible Error Codes: PIF_ALLOWS_UNPLUG, REQUIRED_PIF_IS_UNPLUGGED

RPC name: force_destroy

Overview:

Remove a host from an existing cluster forcefully.

Signature:

void force_destroy (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self the cluster_host to remove from the cluster

Return Type: void

Possible Error Codes: CLUSTER_STACK_IN_USE

RPC name: get_all

Overview:

Return a list of all the Cluster_hosts known to the system.

Signature:

Cluster_host ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of Cluster_host references to Cluster_host records for all Cluster_hosts known to the system.

Signature:

(Cluster_host ref -> Cluster_host record) map get_all_records (session ref session_id)

RPC name: get_allowed_operations

Overview:

Get the allowed_operations field of the given Cluster_host.

Signature:

cluster_host_operation set get_allowed_operations (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: cluster_host_operation set

value of the field

RPC name: get_by_uuid

Overview:

Get a reference to the Cluster_host instance with the specified UUID.

Signature:

Cluster_host ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: Cluster_host ref

reference to the object

RPC name: get_cluster

Overview:

Get the cluster field of the given Cluster_host.

Signature:

Cluster ref get_cluster (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: Cluster ref

value of the field

RPC name: get_current_operations

Overview:

Get the current_operations field of the given Cluster_host.

Signature:

(string -> cluster_host_operation) map get_current_operations (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: (string -> cluster_host_operation) map

value of the field

RPC name: get_enabled

Overview:

Get the enabled field of the given Cluster_host.

Signature:

bool get_enabled (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: bool

value of the field

RPC name: get_host

Overview:

Get the host field of the given Cluster_host.

Signature:

host ref get_host (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_joined

Overview:

Get the joined field of the given Cluster_host.

Signature:

bool get_joined (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: bool

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given Cluster_host.

Signature:

(string -> string) map get_other_config (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_PIF

Overview:

Get the PIF field of the given Cluster_host.

Signature:

PIF ref get_PIF (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: PIF ref

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given Cluster_host.

Signature:

Cluster_host record get_record (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: Cluster_host record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given Cluster_host.

Signature:

string get_uuid (session ref session_id, Cluster_host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Cluster_host ref self reference to the object

Return Type: string

value of the field

Class: console

A console

Fields for class: console

Field Type Qualifier Description
location string RO/runtime URI for the console service
other_config (string -> string) map RW additional configuration
protocol console_protocol RO/runtime the protocol used by this console
uuid string RO/runtime Unique identifier/object reference
VM VM ref RO/runtime VM to which this console is attached

RPCs associated with class: console

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given console.

Signature:

void add_to_other_config (session ref session_id, console ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create

Overview:

Create a new console instance, and return its handle.

Signature:

console ref create (session ref session_id, console record args)

Arguments:

type name description
session ref session_id Reference to a valid session
console record args All constructor arguments

Return Type: console ref

reference to the newly created object

RPC name: destroy

Overview:

Destroy the specified console instance.

Signature:

void destroy (session ref session_id, console ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object

Return Type: void

RPC name: get_all

Overview:

Return a list of all the consoles known to the system.

Signature:

console ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of console references to console records for all consoles known to the system.

Signature:

(console ref -> console record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the console instance with the specified UUID.

Signature:

console ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: console ref

reference to the object

RPC name: get_location

Overview:

Get the location field of the given console.

Signature:

string get_location (session ref session_id, console ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given console.

Signature:

(string -> string) map get_other_config (session ref session_id, console ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_protocol

Overview:

Get the protocol field of the given console.

Signature:

console_protocol get_protocol (session ref session_id, console ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object

Return Type: console_protocol

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given console.

Signature:

console record get_record (session ref session_id, console ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object

Return Type: console record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given console.

Signature:

string get_uuid (session ref session_id, console ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object

Return Type: string

value of the field

RPC name: get_VM

Overview:

Get the VM field of the given console.

Signature:

VM ref get_VM (session ref session_id, console ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object

Return Type: VM ref

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given console. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, console ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given console.

Signature:

void set_other_config (session ref session_id, console ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
console ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: crashdump

This class is deprecated.

A VM crashdump

Fields for class: crashdump

Field Type Qualifier Description
other_config (string -> string) map RW Deprecated. additional configuration
uuid string RO/runtime Deprecated. Unique identifier/object reference
VDI VDI ref RO/constructor Deprecated. the virtual disk
VM VM ref RO/constructor Deprecated. the virtual machine

RPCs associated with class: crashdump

RPC name: add_to_other_config

This message is deprecated.

Overview:

Add the given key-value pair to the other_config field of the given crashdump.

Signature:

void add_to_other_config (session ref session_id, crashdump ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: destroy

This message is deprecated.

Overview:

Destroy the specified crashdump

Signature:

void destroy (session ref session_id, crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self The crashdump to destroy

Return Type: void

RPC name: get_all

This message is deprecated.

Overview:

Return a list of all the crashdumps known to the system.

Signature:

crashdump ref set get_all (session ref session_id)

RPC name: get_all_records

This message is deprecated.

Overview:

Return a map of crashdump references to crashdump records for all crashdumps known to the system.

Signature:

(crashdump ref -> crashdump record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

This message is deprecated.

Overview:

Get a reference to the crashdump instance with the specified UUID.

Signature:

crashdump ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: crashdump ref

reference to the object

RPC name: get_other_config

This message is deprecated.

Overview:

Get the other_config field of the given crashdump.

Signature:

(string -> string) map get_other_config (session ref session_id, crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

This message is deprecated.

Overview:

Get a record containing the current state of the given crashdump.

Signature:

crashdump record get_record (session ref session_id, crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object

Return Type: crashdump record

all fields from the object

RPC name: get_uuid

This message is deprecated.

Overview:

Get the uuid field of the given crashdump.

Signature:

string get_uuid (session ref session_id, crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object

Return Type: string

value of the field

RPC name: get_VDI

This message is deprecated.

Overview:

Get the VDI field of the given crashdump.

Signature:

VDI ref get_VDI (session ref session_id, crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object

Return Type: VDI ref

value of the field

RPC name: get_VM

This message is deprecated.

Overview:

Get the VM field of the given crashdump.

Signature:

VM ref get_VM (session ref session_id, crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object

Return Type: VM ref

value of the field

RPC name: remove_from_other_config

This message is deprecated.

Overview:

Remove the given key and its corresponding value from the other_config field of the given crashdump. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, crashdump ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

This message is deprecated.

Overview:

Set the other_config field of the given crashdump.

Signature:

void set_other_config (session ref session_id, crashdump ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
crashdump ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: data_source

Data sources for logging in RRDs

Fields for class: data_source

Field Type Qualifier Description
enabled bool RO/runtime true if the data source is being logged
max float RO/runtime the maximum value of the data source
min float RO/runtime the minimum value of the data source
name_description string RO/runtime a notes field containing human-readable description
name_label string RO/runtime a human-readable name
standard bool RO/runtime true if the data source is enabled by default. Non-default data sources cannot be disabled
units string RO/runtime the units of the value
value float RO/runtime current value of the data source

RPCs associated with class: data_source

Class data_source has no additional RPCs associated with it.

Class: DR_task

DR task

Fields for class: DR_task

Field Type Qualifier Description
introduced_SRs SR ref set RO/runtime All SRs introduced by this appliance
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: DR_task

RPC name: create

Overview:

Create a disaster recovery task which will query the supplied list of devices

Signature:

DR_task ref create (session ref session_id, string type, (string -> string) map device_config, string set whitelist)

Arguments:

type name description
session ref session_id Reference to a valid session
string type The SR driver type of the SRs to introduce
(string -> string) map device_config The device configuration of the SRs to introduce
string set whitelist The devices to use for disaster recovery

Return Type: DR_task ref

The reference to the created task

RPC name: destroy

Overview:

Destroy the disaster recovery task, detaching and forgetting any SRs introduced which are no longer required

Signature:

void destroy (session ref session_id, DR_task ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
DR_task ref self The disaster recovery task to destroy

Return Type: void

RPC name: get_all

Overview:

Return a list of all the DR_tasks known to the system.

Signature:

DR_task ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of DR_task references to DR_task records for all DR_tasks known to the system.

Signature:

(DR_task ref -> DR_task record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the DR_task instance with the specified UUID.

Signature:

DR_task ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: DR_task ref

reference to the object

RPC name: get_introduced_SRs

Overview:

Get the introduced_SRs field of the given DR_task.

Signature:

SR ref set get_introduced_SRs (session ref session_id, DR_task ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
DR_task ref self reference to the object

Return Type: SR ref set

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given DR_task.

Signature:

DR_task record get_record (session ref session_id, DR_task ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
DR_task ref self reference to the object

Return Type: DR_task record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given DR_task.

Signature:

string get_uuid (session ref session_id, DR_task ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
DR_task ref self reference to the object

Return Type: string

value of the field

Class: event

Asynchronous event registration and handling

Fields for class: event

Field Type Qualifier Description
class string RO/constructor The name of the class of the object that changed
id int RO/constructor An ID, monotonically increasing, and local to the current session
obj_uuid string RO/constructor Deprecated. The uuid of the object that changed
operation event_operation RO/constructor The operation that was performed
ref string RO/constructor A reference to the object that changed
timestamp datetime RO/constructor Deprecated. The time at which the event occurred
snapshot <object record> RO/runtime The record of the database object that was added, changed or deleted

RPCs associated with class: event

RPC name: from

Overview:

Blocking call which returns a new token and a (possibly empty) batch of events. The returned token can be used in subsequent calls to this function.

Signature:

<event batch> from (session ref session_id, string set classes, string token, float timeout)

Arguments:

type name description
session ref session_id Reference to a valid session
string set classes register for events for the indicated classes
string token A token representing the point from which to generate database events. The empty string represents the beginning.
float timeout Return after this many seconds if no events match

Return Type: an event batch

a structure consisting of a token ('token'), a map of valid references per object type ('valid_ref_counts'), and a set of event records ('events').

Possible Error Codes: SESSION_NOT_REGISTERED, EVENTS_LOST

RPC name: get_current_id

Overview:

Return the ID of the next event to be generated by the system

Signature:

int get_current_id (session ref session_id)

RPC name: inject

Overview:

Injects an artificial event on the given object and returns the corresponding ID in the form of a token, which can be used as a point of reference for database events. For example, to check whether an object has reached the right state before attempting an operation, one can inject an artificial event on the object and wait until the token returned by consecutive event.from calls is lexicographically greater than the one returned by event.inject.

Signature:

string inject (session ref session_id, string class, string ref)

Arguments:

type name description
session ref session_id Reference to a valid session
string class class of the object
string ref A reference to the object that will be changed.

Return Type: string

the event ID in the form of a token

RPC name: next

This message is deprecated.

Overview:

Blocking call which returns a (possibly empty) batch of events. This method is only recommended for legacy use. New development should use event.from which supercedes this method.

Signature:

event record set next (session ref session_id)

Possible Error Codes: SESSION_NOT_REGISTERED, EVENTS_LOST

RPC name: register

This message is deprecated.

Overview:

Registers this session with the event system for a set of given classes. This method is only recommended for legacy use in conjunction with event.next.

Signature:

void register (session ref session_id, string set classes)

Arguments:

type name description
session ref session_id Reference to a valid session
string set classes the classes for which the session will register with the event system; specifying * as the desired class will register for all classes

Return Type: void

RPC name: unregister

This message is deprecated.

Overview:

Removes this session's registration with the event system for a set of given classes. This method is only recommended for legacy use in conjunction with event.next.

Signature:

void unregister (session ref session_id, string set classes)

Arguments:

type name description
session ref session_id Reference to a valid session
string set classes the classes for which the session's registration with the event system will be removed

Return Type: void

Class: Feature

A new piece of functionality

Fields for class: Feature

Field Type Qualifier Description
enabled bool RO/runtime Indicates whether the feature is enabled
experimental bool RO/constructor Indicates whether the feature is experimental (as opposed to stable and fully supported)
host host ref RO/runtime The host where this feature is available
name_description string RO/constructor a notes field containing human-readable description
name_label string RO/constructor a human-readable name
uuid string RO/runtime Unique identifier/object reference
version string RO/constructor The version of this feature

RPCs associated with class: Feature

RPC name: get_all

Overview:

Return a list of all the Features known to the system.

Signature:

Feature ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of Feature references to Feature records for all Features known to the system.

Signature:

(Feature ref -> Feature record) map get_all_records (session ref session_id)

RPC name: get_by_name_label

Overview:

Get all the Feature instances with the given label.

Signature:

Feature ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: Feature ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the Feature instance with the specified UUID.

Signature:

Feature ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: Feature ref

reference to the object

RPC name: get_enabled

Overview:

Get the enabled field of the given Feature.

Signature:

bool get_enabled (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: bool

value of the field

RPC name: get_experimental

Overview:

Get the experimental field of the given Feature.

Signature:

bool get_experimental (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: bool

value of the field

RPC name: get_host

Overview:

Get the host field of the given Feature.

Signature:

host ref get_host (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given Feature.

Signature:

string get_name_description (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given Feature.

Signature:

string get_name_label (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: string

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given Feature.

Signature:

Feature record get_record (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: Feature record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given Feature.

Signature:

string get_uuid (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: string

value of the field

RPC name: get_version

Overview:

Get the version field of the given Feature.

Signature:

string get_version (session ref session_id, Feature ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
Feature ref self reference to the object

Return Type: string

value of the field

Class: GPU_group

A group of compatible GPUs across the resource pool

Fields for class: GPU_group

Field Type Qualifier Description
allocation_algorithm allocation_algorithm RW Current allocation of vGPUs to pGPUs for this group
enabled_VGPU_types VGPU_type ref set RO/runtime vGPU types supported on at least one of the pGPUs in this group
GPU_types string set RO/runtime List of GPU types (vendor+device ID) that can be in this group
name_description string RW a notes field containing human-readable description
name_label string RW a human-readable name
other_config (string -> string) map RW Additional configuration
PGPUs PGPU ref set RO/runtime List of pGPUs in the group
supported_VGPU_types VGPU_type ref set RO/runtime vGPU types supported on at least one of the pGPUs in this group
uuid string RO/runtime Unique identifier/object reference
VGPUs VGPU ref set RO/runtime List of vGPUs using the group

RPCs associated with class: GPU_group

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given GPU_group.

Signature:

void add_to_other_config (session ref session_id, GPU_group ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create

Overview:

Signature:

GPU_group ref create (session ref session_id, string name_label, string name_description, (string -> string) map other_config)

Arguments:

type name description
session ref session_id Reference to a valid session
string name_label
string name_description
(string -> string) map other_config

Return Type: GPU_group ref

RPC name: destroy

Overview:

Signature:

void destroy (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self The GPU group to destroy

Return Type: void

RPC name: get_all

Overview:

Return a list of all the GPU_groups known to the system.

Signature:

GPU_group ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of GPU_group references to GPU_group records for all GPU_groups known to the system.

Signature:

(GPU_group ref -> GPU_group record) map get_all_records (session ref session_id)

RPC name: get_allocation_algorithm

Overview:

Get the allocation_algorithm field of the given GPU_group.

Signature:

allocation_algorithm get_allocation_algorithm (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: allocation_algorithm

value of the field

RPC name: get_by_name_label

Overview:

Get all the GPU_group instances with the given label.

Signature:

GPU_group ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: GPU_group ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the GPU_group instance with the specified UUID.

Signature:

GPU_group ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: GPU_group ref

reference to the object

RPC name: get_enabled_VGPU_types

Overview:

Get the enabled_VGPU_types field of the given GPU_group.

Signature:

VGPU_type ref set get_enabled_VGPU_types (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: VGPU_type ref set

value of the field

RPC name: get_GPU_types

Overview:

Get the GPU_types field of the given GPU_group.

Signature:

string set get_GPU_types (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: string set

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given GPU_group.

Signature:

string get_name_description (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given GPU_group.

Signature:

string get_name_label (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given GPU_group.

Signature:

(string -> string) map get_other_config (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_PGPUs

Overview:

Get the PGPUs field of the given GPU_group.

Signature:

PGPU ref set get_PGPUs (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: PGPU ref set

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given GPU_group.

Signature:

GPU_group record get_record (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: GPU_group record

all fields from the object

RPC name: get_remaining_capacity

Overview:

Signature:

int get_remaining_capacity (session ref session_id, GPU_group ref self, VGPU_type ref vgpu_type)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self The GPU group to query
VGPU_type ref vgpu_type The VGPU_type for which the remaining capacity will be calculated

Return Type: int

The number of VGPUs of the given type which can still be started on the PGPUs in the group

RPC name: get_supported_VGPU_types

Overview:

Get the supported_VGPU_types field of the given GPU_group.

Signature:

VGPU_type ref set get_supported_VGPU_types (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: VGPU_type ref set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given GPU_group.

Signature:

string get_uuid (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: string

value of the field

RPC name: get_VGPUs

Overview:

Get the VGPUs field of the given GPU_group.

Signature:

VGPU ref set get_VGPUs (session ref session_id, GPU_group ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object

Return Type: VGPU ref set

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given GPU_group. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, GPU_group ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_allocation_algorithm

Overview:

Set the allocation_algorithm field of the given GPU_group.

Signature:

void set_allocation_algorithm (session ref session_id, GPU_group ref self, allocation_algorithm value)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object
allocation_algorithm value New value to set

Return Type: void

RPC name: set_name_description

Overview:

Set the name/description field of the given GPU_group.

Signature:

void set_name_description (session ref session_id, GPU_group ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_name_label

Overview:

Set the name/label field of the given GPU_group.

Signature:

void set_name_label (session ref session_id, GPU_group ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given GPU_group.

Signature:

void set_other_config (session ref session_id, GPU_group ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
GPU_group ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: host

A physical host

Fields for class: host

Field Type Qualifier Description
address string RW The address by which this host can be contacted from any other host in the pool
allowed_operations host_allowed_operations set RO/runtime 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.
API_version_major int RO/runtime major version number
API_version_minor int RO/runtime minor version number
API_version_vendor string RO/runtime identification of vendor
API_version_vendor_implementation (string -> string) map RO/runtime details of vendor implementation
bios_strings (string -> string) map RO/runtime BIOS strings
blobs (string -> blob ref) map RO/runtime Binary blobs associated with this host
capabilities string set RO/constructor Xen capabilities
chipset_info (string -> string) map RO/runtime Information about chipset features
control_domain VM ref RO/runtime The control domain (domain 0)
cpu_configuration (string -> string) map RO/runtime The CPU configuration on this host. May contain keys such as "nr_nodes", "sockets_per_node", "cores_per_socket", or "threads_per_core"
cpu_info (string -> string) map RO/runtime Details about the physical CPUs on this host
crash_dump_sr SR ref RW The SR in which VDIs for crash dumps are created
crashdumps host_crashdump ref set RO/runtime Set of host crash dumps
current_operations (string -> host_allowed_operations) map RO/runtime links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
display host_display RW indicates whether the host is configured to output its console to a physical display device
edition string RO/runtime Product edition
enabled bool RO/runtime True if the host is currently enabled
external_auth_configuration (string -> string) map RO/runtime configuration specific to external authentication service
external_auth_service_name string RO/runtime name of external authentication service configured; empty if none configured.
external_auth_type string RO/runtime type of external authentication service configured; empty if none configured.
features Feature ref set RO/runtime List of features available on this host
guest_VCPUs_params (string -> string) map RW VCPUs params to apply to all resident guests
ha_network_peers string set RO/runtime The set of hosts visible via the network from this host
ha_statefiles string set RO/runtime The set of statefiles accessible from this host
host_CPUs host_cpu ref set RO/runtime The physical CPUs on this host
hostname string RW The hostname of this host
iscsi_iqn string RO/constructor The initiator IQN for the host
license_params (string -> string) map RO/runtime State of the current license
license_server (string -> string) map RW Contact information of the license server
local_cache_sr SR ref RO/constructor The SR that is used as a local cache
logging (string -> string) map RW logging configuration
memory_overhead int RO/runtime Virtualization memory overhead (bytes).
metrics host_metrics ref RO/runtime metrics associated with this host
multipathing bool RO/constructor Specifies whether multipathing is enabled
name_description string RW a notes field containing human-readable description
name_label string RW a human-readable name
other_config (string -> string) map RW additional configuration
patches host_patch ref set RO/runtime Deprecated. Set of host patches
PBDs PBD ref set RO/runtime physical blockdevices
PCIs PCI ref set RO/runtime List of PCI devices in the host
PGPUs PGPU ref set RO/runtime List of physical GPUs in the host
PIFs PIF ref set RO/runtime physical network interfaces
power_on_config (string -> string) map RO/runtime The power on config
power_on_mode string RO/runtime The power on mode
PUSBs PUSB ref set RO/runtime List of physical USBs in the host
resident_VMs VM ref set RO/runtime list of VMs currently resident on host
sched_policy string RO/runtime Scheduler policy currently in force on this host
software_version (string -> string) map RO/constructor version strings
ssl_legacy bool RO/constructor Allow SSLv3 protocol and ciphersuites as used by older XenServers. This controls both incoming and outgoing connections. When this is set to a different value, the host immediately restarts its SSL/TLS listening service; typically this takes less than a second but existing connections to it will be broken. XenAPI login sessions will remain valid.
supported_bootloaders string set RO/runtime a list of the bootloaders installed on the machine
suspend_image_sr SR ref RW The SR in which VDIs for suspend images are created
tags string set RW user-specified tags for categorization purposes
updates pool_update ref set RO/runtime Set of updates
updates_requiring_reboot pool_update ref set RO/runtime List of updates which require reboot
uuid string RO/runtime Unique identifier/object reference
virtual_hardware_platform_versions int set RO/runtime The set of versions of the virtual hardware platform that the host can offer to its guests

RPCs associated with class: host

RPC name: add_tags

Overview:

Add the given value to the tags field of the given host. If the value is already in that Set, then do nothing.

Signature:

void add_tags (session ref session_id, host ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string value New value to add

Return Type: void

RPC name: add_to_guest_VCPUs_params

Overview:

Add the given key-value pair to the guest_VCPUs_params field of the given host.

Signature:

void add_to_guest_VCPUs_params (session ref session_id, host ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: add_to_license_server

Overview:

Add the given key-value pair to the license_server field of the given host.

Signature:

void add_to_license_server (session ref session_id, host ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: add_to_logging

Overview:

Add the given key-value pair to the logging field of the given host.

Signature:

void add_to_logging (session ref session_id, host ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given host.

Signature:

void add_to_other_config (session ref session_id, host ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: apply_edition

Overview:

Change to another edition, or reactivate the current edition after a license has expired. This may be subject to the successful checkout of an appropriate license.

Signature:

void apply_edition (session ref session_id, host ref host, string edition, bool force)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string edition The requested edition
bool force Update the license params even if the apply call fails

Return Type: void

RPC name: assert_can_evacuate

Overview:

Check this host can be evacuated.

Signature:

void assert_can_evacuate (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to evacuate

Return Type: void

RPC name: backup_rrds

Overview:

This causes the RRDs to be backed up to the master

Signature:

void backup_rrds (session ref session_id, host ref host, float delay)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host Schedule a backup of the RRDs of this host
float delay Delay in seconds from when the call is received to perform the backup

Return Type: void

RPC name: bugreport_upload

Overview:

Run xen-bugtool --yestoall and upload the output to support

Signature:

void bugreport_upload (session ref session_id, host ref host, string url, (string -> string) map options)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host on which to run xen-bugtool
string url The URL to upload to
(string -> string) map options Extra configuration operations

Return Type: void

RPC name: call_extension

Overview:

Call a XenAPI extension on this host

Signature:

string call_extension (session ref session_id, host ref host, string call)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string call Rpc call for the extension

Return Type: string

Result from the extension

RPC name: call_plugin

Overview:

Call a XenAPI plugin on this host

Signature:

string call_plugin (session ref session_id, host ref host, string plugin, string fn, (string -> string) map args)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string plugin The name of the plugin
string fn The name of the function within the plugin
(string -> string) map args Arguments for the function

Return Type: string

Result from the plugin

RPC name: compute_free_memory

Overview:

Computes the amount of free memory on the host.

Signature:

int compute_free_memory (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to send the request to

Return Type: int

the amount of free memory on the host.

RPC name: compute_memory_overhead

Overview:

Computes the virtualization memory overhead of a host.

Signature:

int compute_memory_overhead (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host for which to compute the memory overhead

Return Type: int

the virtualization memory overhead of the host.

RPC name: create_new_blob

Overview:

Create a placeholder for a named binary blob of data that is associated with this host

Signature:

blob ref create_new_blob (session ref session_id, host ref host, string name, string mime_type, bool public)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string name The name associated with the blob
string mime_type The mime type for the data. Empty string translates to application/octet-stream
bool public True if the blob should be publicly available

Return Type: blob ref

The reference of the blob, needed for populating its data

RPC name: declare_dead

Overview:

Declare that a host is dead. This is a dangerous operation, and should only be called if the administrator is absolutely sure the host is definitely dead

Signature:

void declare_dead (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to declare is dead

Return Type: void

RPC name: destroy

Overview:

Destroy specified host record in database

Signature:

void destroy (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self The host record to remove

Return Type: void

RPC name: disable

Overview:

Puts the host into a state in which no new VMs can be started. Currently active VMs on the host continue to execute.

Signature:

void disable (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to disable

Return Type: void

RPC name: disable_display

Overview:

Disable console output to the physical display device next time this host boots

Signature:

host_display disable_display (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host

Return Type: host_display

This host's physical display usage

RPC name: disable_external_auth

Overview:

This call disables external authentication on the local host

Signature:

void disable_external_auth (session ref session_id, host ref host, (string -> string) map config)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host whose external authentication should be disabled
(string -> string) map config Optional parameters as a list of key-values containing the configuration data

Return Type: void

RPC name: disable_local_storage_caching

Overview:

Disable the use of a local SR for caching purposes

Signature:

void disable_local_storage_caching (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host

Return Type: void

RPC name: dmesg

Overview:

Get the host xen dmesg.

Signature:

string dmesg (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to query

Return Type: string

dmesg string

RPC name: dmesg_clear

Overview:

Get the host xen dmesg, and clear the buffer.

Signature:

string dmesg_clear (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to query

Return Type: string

dmesg string

RPC name: emergency_ha_disable

Overview:

This call disables HA on the local host. This should only be used with extreme care.

Signature:

void emergency_ha_disable (session ref session_id, bool soft)

Arguments:

type name description
session ref session_id Reference to a valid session
bool soft Disable HA temporarily, revert upon host reboot or further changes, idempotent

Return Type: void

RPC name: enable

Overview:

Puts the host into a state in which new VMs can be started.

Signature:

void enable (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to enable

Return Type: void

RPC name: enable_display

Overview:

Enable console output to the physical display device next time this host boots

Signature:

host_display enable_display (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host

Return Type: host_display

This host's physical display usage

RPC name: enable_external_auth

Overview:

This call enables external authentication on a host

Signature:

void enable_external_auth (session ref session_id, host ref host, (string -> string) map config, string service_name, string auth_type)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host whose external authentication should be enabled
(string -> string) map config A list of key-values containing the configuration data
string service_name The name of the service
string auth_type The type of authentication (e.g. AD for Active Directory)

Return Type: void

RPC name: enable_local_storage_caching

Overview:

Enable the use of a local SR for caching purposes

Signature:

void enable_local_storage_caching (session ref session_id, host ref host, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
SR ref sr The SR to use as a local cache

Return Type: void

RPC name: evacuate

Overview:

Migrate all VMs off of this host, where possible.

Signature:

void evacuate (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to evacuate

Return Type: void

RPC name: forget_data_source_archives

Overview:

Forget the recorded statistics related to the specified data source

Signature:

void forget_data_source_archives (session ref session_id, host ref host, string data_source)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string data_source The data source whose archives are to be forgotten

Return Type: void

RPC name: get_address

Overview:

Get the address field of the given host.

Signature:

string get_address (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_all

Overview:

Return a list of all the hosts known to the system.

Signature:

host ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of host references to host records for all hosts known to the system.

Signature:

(host ref -> host record) map get_all_records (session ref session_id)

RPC name: get_allowed_operations

Overview:

Get the allowed_operations field of the given host.

Signature:

host_allowed_operations set get_allowed_operations (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: host_allowed_operations set

value of the field

RPC name: get_API_version_major

Overview:

Get the API_version/major field of the given host.

Signature:

int get_API_version_major (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: int

value of the field

RPC name: get_API_version_minor

Overview:

Get the API_version/minor field of the given host.

Signature:

int get_API_version_minor (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: int

value of the field

RPC name: get_API_version_vendor

Overview:

Get the API_version/vendor field of the given host.

Signature:

string get_API_version_vendor (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_API_version_vendor_implementation

Overview:

Get the API_version/vendor_implementation field of the given host.

Signature:

(string -> string) map get_API_version_vendor_implementation (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_bios_strings

Overview:

Get the bios_strings field of the given host.

Signature:

(string -> string) map get_bios_strings (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_blobs

Overview:

Get the blobs field of the given host.

Signature:

(string -> blob ref) map get_blobs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> blob ref) map

value of the field

RPC name: get_by_name_label

Overview:

Get all the host instances with the given label.

Signature:

host ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: host ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the host instance with the specified UUID.

Signature:

host ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: host ref

reference to the object

RPC name: get_capabilities

Overview:

Get the capabilities field of the given host.

Signature:

string set get_capabilities (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string set

value of the field

RPC name: get_chipset_info

Overview:

Get the chipset_info field of the given host.

Signature:

(string -> string) map get_chipset_info (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_control_domain

Overview:

Get the control_domain field of the given host.

Signature:

VM ref get_control_domain (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: VM ref

value of the field

RPC name: get_cpu_configuration

Overview:

Get the cpu_configuration field of the given host.

Signature:

(string -> string) map get_cpu_configuration (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_cpu_info

Overview:

Get the cpu_info field of the given host.

Signature:

(string -> string) map get_cpu_info (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_crash_dump_sr

Overview:

Get the crash_dump_sr field of the given host.

Signature:

SR ref get_crash_dump_sr (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_crashdumps

Overview:

Get the crashdumps field of the given host.

Signature:

host_crashdump ref set get_crashdumps (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: host_crashdump ref set

value of the field

RPC name: get_current_operations

Overview:

Get the current_operations field of the given host.

Signature:

(string -> host_allowed_operations) map get_current_operations (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> host_allowed_operations) map

value of the field

RPC name: get_data_sources

Overview:

Signature:

data_source record set get_data_sources (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to interrogate

Return Type: data_source record set

A set of data sources

RPC name: get_display

Overview:

Get the display field of the given host.

Signature:

host_display get_display (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: host_display

value of the field

RPC name: get_edition

Overview:

Get the edition field of the given host.

Signature:

string get_edition (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_enabled

Overview:

Get the enabled field of the given host.

Signature:

bool get_enabled (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: bool

value of the field

RPC name: get_external_auth_configuration

Overview:

Get the external_auth_configuration field of the given host.

Signature:

(string -> string) map get_external_auth_configuration (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_external_auth_service_name

Overview:

Get the external_auth_service_name field of the given host.

Signature:

string get_external_auth_service_name (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_external_auth_type

Overview:

Get the external_auth_type field of the given host.

Signature:

string get_external_auth_type (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_features

Overview:

Get the features field of the given host.

Signature:

Feature ref set get_features (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: Feature ref set

value of the field

RPC name: get_guest_VCPUs_params

Overview:

Get the guest_VCPUs_params field of the given host.

Signature:

(string -> string) map get_guest_VCPUs_params (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_ha_network_peers

Overview:

Get the ha_network_peers field of the given host.

Signature:

string set get_ha_network_peers (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string set

value of the field

RPC name: get_ha_statefiles

Overview:

Get the ha_statefiles field of the given host.

Signature:

string set get_ha_statefiles (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string set

value of the field

RPC name: get_host_CPUs

Overview:

Get the host_CPUs field of the given host.

Signature:

host_cpu ref set get_host_CPUs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: host_cpu ref set

value of the field

RPC name: get_hostname

Overview:

Get the hostname field of the given host.

Signature:

string get_hostname (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_iscsi_iqn

Overview:

Get the iscsi_iqn field of the given host.

Signature:

string get_iscsi_iqn (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_license_params

Overview:

Get the license_params field of the given host.

Signature:

(string -> string) map get_license_params (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_license_server

Overview:

Get the license_server field of the given host.

Signature:

(string -> string) map get_license_server (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_local_cache_sr

Overview:

Get the local_cache_sr field of the given host.

Signature:

SR ref get_local_cache_sr (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_log

Overview:

Get the host's log file

Signature:

string get_log (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to query

Return Type: string

The contents of the host's primary log file

RPC name: get_logging

Overview:

Get the logging field of the given host.

Signature:

(string -> string) map get_logging (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_management_interface

Overview:

Returns the management interface for the specified host

Signature:

PIF ref get_management_interface (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host Which host's management interface is required

Return Type: PIF ref

The management interface for the host

RPC name: get_memory_overhead

Overview:

Get the memory/overhead field of the given host.

Signature:

int get_memory_overhead (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: int

value of the field

RPC name: get_metrics

Overview:

Get the metrics field of the given host.

Signature:

host_metrics ref get_metrics (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: host_metrics ref

value of the field

RPC name: get_multipathing

Overview:

Get the multipathing field of the given host.

Signature:

bool get_multipathing (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: bool

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given host.

Signature:

string get_name_description (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given host.

Signature:

string get_name_label (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given host.

Signature:

(string -> string) map get_other_config (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_patches

This message is deprecated.

Overview:

Get the patches field of the given host.

Signature:

host_patch ref set get_patches (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: host_patch ref set

value of the field

RPC name: get_PBDs

Overview:

Get the PBDs field of the given host.

Signature:

PBD ref set get_PBDs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: PBD ref set

value of the field

RPC name: get_PCIs

Overview:

Get the PCIs field of the given host.

Signature:

PCI ref set get_PCIs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: PCI ref set

value of the field

RPC name: get_PGPUs

Overview:

Get the PGPUs field of the given host.

Signature:

PGPU ref set get_PGPUs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: PGPU ref set

value of the field

RPC name: get_PIFs

Overview:

Get the PIFs field of the given host.

Signature:

PIF ref set get_PIFs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: PIF ref set

value of the field

RPC name: get_power_on_config

Overview:

Get the power_on_config field of the given host.

Signature:

(string -> string) map get_power_on_config (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_power_on_mode

Overview:

Get the power_on_mode field of the given host.

Signature:

string get_power_on_mode (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_PUSBs

Overview:

Get the PUSBs field of the given host.

Signature:

PUSB ref set get_PUSBs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: PUSB ref set

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given host.

Signature:

host record get_record (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: host record

all fields from the object

RPC name: get_resident_VMs

Overview:

Get the resident_VMs field of the given host.

Signature:

VM ref set get_resident_VMs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: VM ref set

value of the field

RPC name: get_sched_policy

Overview:

Get the sched_policy field of the given host.

Signature:

string get_sched_policy (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_server_certificate

Overview:

Get the installed server public TLS certificate.

Signature:

string get_server_certificate (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host

Return Type: string

The installed server public TLS certificate, in PEM form.

RPC name: get_server_localtime

Overview:

This call queries the host's clock for the current time in the host's local timezone

Signature:

datetime get_server_localtime (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host whose clock should be queried

Return Type: datetime

The current local time

RPC name: get_servertime

Overview:

This call queries the host's clock for the current time

Signature:

datetime get_servertime (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host whose clock should be queried

Return Type: datetime

The current time

RPC name: get_software_version

Overview:

Get the software_version field of the given host.

Signature:

(string -> string) map get_software_version (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_ssl_legacy

Overview:

Get the ssl_legacy field of the given host.

Signature:

bool get_ssl_legacy (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: bool

value of the field

RPC name: get_supported_bootloaders

Overview:

Get the supported_bootloaders field of the given host.

Signature:

string set get_supported_bootloaders (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string set

value of the field

RPC name: get_suspend_image_sr

Overview:

Get the suspend_image_sr field of the given host.

Signature:

SR ref get_suspend_image_sr (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_system_status_capabilities

Overview:

Signature:

string get_system_status_capabilities (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to interrogate

Return Type: string

An XML fragment containing the system status capabilities.

RPC name: get_tags

Overview:

Get the tags field of the given host.

Signature:

string set get_tags (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string set

value of the field

RPC name: get_uncooperative_resident_VMs

This message is deprecated.

Overview:

Return a set of VMs which are not co-operating with the host's memory control system

Signature:

VM ref set get_uncooperative_resident_VMs (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self The host to query

Return Type: VM ref set

VMs which are not co-operating

RPC name: get_updates

Overview:

Get the updates field of the given host.

Signature:

pool_update ref set get_updates (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: pool_update ref set

value of the field

RPC name: get_updates_requiring_reboot

Overview:

Get the updates_requiring_reboot field of the given host.

Signature:

pool_update ref set get_updates_requiring_reboot (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: pool_update ref set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given host.

Signature:

string get_uuid (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: string

value of the field

RPC name: get_virtual_hardware_platform_versions

Overview:

Get the virtual_hardware_platform_versions field of the given host.

Signature:

int set get_virtual_hardware_platform_versions (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object

Return Type: int set

value of the field

RPC name: get_vms_which_prevent_evacuation

Overview:

Return a set of VMs which prevent the host being evacuated, with per-VM error codes

Signature:

(VM ref -> string set) map get_vms_which_prevent_evacuation (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self The host to query

Return Type: (VM ref -> string set) map

VMs which block evacuation together with reasons

RPC name: has_extension

Overview:

Return true if the extension is available on the host

Signature:

bool has_extension (session ref session_id, host ref host, string name)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string name The name of the API call

Return Type: bool

True if the extension exists, false otherwise

RPC name: license_add

Overview:

Apply a new license to a host

Signature:

void license_add (session ref session_id, host ref host, string contents)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to upload the license to
string contents The contents of the license file, base64 encoded

Return Type: void

Possible Error Codes: LICENSE_PROCESSING_ERROR

RPC name: license_apply

This message is removed.

Overview:

Apply a new license to a host

Signature:

void license_apply (session ref session_id, host ref host, string contents)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to upload the license to
string contents The contents of the license file, base64 encoded

Return Type: void

Possible Error Codes: LICENSE_PROCESSING_ERROR

RPC name: license_remove

Overview:

Remove any license file from the specified host, and switch that host to the unlicensed edition

Signature:

void license_remove (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host from which any license will be removed

Return Type: void

RPC name: list_methods

Overview:

List all supported methods

Signature:

string set list_methods (session ref session_id)

RPC name: local_management_reconfigure

Overview:

Reconfigure the management network interface. Should only be used if Host.management_reconfigure is impossible because the network configuration is broken.

Signature:

void local_management_reconfigure (session ref session_id, string interface)

Arguments:

type name description
session ref session_id Reference to a valid session
string interface name of the interface to use as a management interface

Return Type: void

RPC name: management_disable

Overview:

Disable the management network interface

Signature:

void management_disable (session ref session_id)

RPC name: management_reconfigure

Overview:

Reconfigure the management network interface

Signature:

void management_reconfigure (session ref session_id, PIF ref pif)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref pif reference to a PIF object corresponding to the management interface

Return Type: void

RPC name: migrate_receive

Overview:

Prepare to receive a VM, returning a token which can be passed to VM.migrate.

Signature:

(string -> string) map migrate_receive (session ref session_id, host ref host, network ref network, (string -> string) map options)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The target host
network ref network The network through which migration traffic should be received.
(string -> string) map options Extra configuration operations

Return Type: (string -> string) map

A value which should be passed to VM.migrate

RPC name: power_on

Overview:

Attempt to power-on the host (if the capability exists).

Signature:

void power_on (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to power on

Return Type: void

RPC name: query_data_source

Overview:

Query the latest value of the specified data source

Signature:

float query_data_source (session ref session_id, host ref host, string data_source)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string data_source The data source to query

Return Type: float

The latest value, averaged over the last 5 seconds

RPC name: reboot

Overview:

Reboot the host. (This function can only be called if there are no currently running VMs on the host and it is disabled.)

Signature:

void reboot (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to reboot

Return Type: void

RPC name: record_data_source

Overview:

Start recording the specified data source

Signature:

void record_data_source (session ref session_id, host ref host, string data_source)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string data_source The data source to record

Return Type: void

RPC name: refresh_pack_info

This message is deprecated.

Overview:

Refresh the list of installed Supplemental Packs.

Signature:

void refresh_pack_info (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to modify

Return Type: void

RPC name: remove_from_guest_VCPUs_params

Overview:

Remove the given key and its corresponding value from the guest_VCPUs_params field of the given host. If the key is not in that Map, then do nothing.

Signature:

void remove_from_guest_VCPUs_params (session ref session_id, host ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_from_license_server

Overview:

Remove the given key and its corresponding value from the license_server field of the given host. If the key is not in that Map, then do nothing.

Signature:

void remove_from_license_server (session ref session_id, host ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_from_logging

Overview:

Remove the given key and its corresponding value from the logging field of the given host. If the key is not in that Map, then do nothing.

Signature:

void remove_from_logging (session ref session_id, host ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given host. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, host ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_tags

Overview:

Remove the given value from the tags field of the given host. If the value is not in that Set, then do nothing.

Signature:

void remove_tags (session ref session_id, host ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string value Value to remove

Return Type: void

RPC name: reset_cpu_features

This message is removed.

Overview:

Remove the feature mask, such that after a reboot all features of the CPU are enabled.

Signature:

void reset_cpu_features (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host

Return Type: void

RPC name: restart_agent

Overview:

Restarts the agent after a 10 second pause. WARNING: this is a dangerous operation. Any operations in progress will be aborted, and unrecoverable data loss may occur. The caller is responsible for ensuring that there are no operations in progress when this method is called.

Signature:

void restart_agent (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host on which you want to restart the agent

Return Type: void

RPC name: retrieve_wlb_evacuate_recommendations

Overview:

Retrieves recommended host migrations to perform when evacuating the host from the wlb server. If a VM cannot be migrated from the host the reason is listed instead of a recommendation.

Signature:

(VM ref -> string set) map retrieve_wlb_evacuate_recommendations (session ref session_id, host ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self The host to query

Return Type: (VM ref -> string set) map

VMs and the reasons why they would block evacuation, or their target host recommended by the wlb server

RPC name: send_debug_keys

Overview:

Inject the given string as debugging keys into Xen

Signature:

void send_debug_keys (session ref session_id, host ref host, string keys)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string keys The keys to send

Return Type: void

RPC name: set_address

Overview:

Set the address field of the given host.

Signature:

void set_address (session ref session_id, host ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_cpu_features

This message is removed.

Overview:

Set the CPU features to be used after a reboot, if the given features string is valid.

Signature:

void set_cpu_features (session ref session_id, host ref host, string features)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string features The features string (32 hexadecimal digits)

Return Type: void

RPC name: set_crash_dump_sr

Overview:

Set the crash_dump_sr field of the given host.

Signature:

void set_crash_dump_sr (session ref session_id, host ref self, SR ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
SR ref value New value to set

Return Type: void

RPC name: set_display

Overview:

Set the display field of the given host.

Signature:

void set_display (session ref session_id, host ref self, host_display value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
host_display value New value to set

Return Type: void

RPC name: set_guest_VCPUs_params

Overview:

Set the guest_VCPUs_params field of the given host.

Signature:

void set_guest_VCPUs_params (session ref session_id, host ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_hostname

Overview:

Set the hostname field of the given host.

Signature:

void set_hostname (session ref session_id, host ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_hostname_live

Overview:

Sets the host name to the specified string. Both the API and lower-level system hostname are changed immediately.

Signature:

void set_hostname_live (session ref session_id, host ref host, string hostname)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host whose host name to set
string hostname The new host name

Return Type: void

Possible Error Codes: HOST_NAME_INVALID

RPC name: set_iscsi_iqn

Overview:

Sets the initiator IQN for the host

Signature:

void set_iscsi_iqn (session ref session_id, host ref host, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
string value The value to which the IQN should be set

Return Type: void

RPC name: set_license_server

Overview:

Set the license_server field of the given host.

Signature:

void set_license_server (session ref session_id, host ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_logging

Overview:

Set the logging field of the given host.

Signature:

void set_logging (session ref session_id, host ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_multipathing

Overview:

Specifies whether multipathing is enabled

Signature:

void set_multipathing (session ref session_id, host ref host, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host
bool value Whether multipathing should be enabled

Return Type: void

RPC name: set_name_description

Overview:

Set the name/description field of the given host.

Signature:

void set_name_description (session ref session_id, host ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_name_label

Overview:

Set the name/label field of the given host.

Signature:

void set_name_label (session ref session_id, host ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given host.

Signature:

void set_other_config (session ref session_id, host ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_power_on_mode

Overview:

Set the power-on-mode, host, user and password

Signature:

void set_power_on_mode (session ref session_id, host ref self, string power_on_mode, (string -> string) map power_on_config)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self The host
string power_on_mode power-on-mode can be empty,iLO,wake-on-lan, DRAC or other
(string -> string) map power_on_config Power on config

Return Type: void

RPC name: set_ssl_legacy

Overview:

Enable/disable SSLv3 for interoperability with older versions of XenServer. When this is set to a different value, the host immediately restarts its SSL/TLS listening service; typically this takes less than a second but existing connections to it will be broken. XenAPI login sessions will remain valid.

Signature:

void set_ssl_legacy (session ref session_id, host ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self The host
bool value True to allow SSLv3 and ciphersuites as used in old XenServer versions

Return Type: void

RPC name: set_suspend_image_sr

Overview:

Set the suspend_image_sr field of the given host.

Signature:

void set_suspend_image_sr (session ref session_id, host ref self, SR ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
SR ref value New value to set

Return Type: void

RPC name: set_tags

Overview:

Set the tags field of the given host.

Signature:

void set_tags (session ref session_id, host ref self, string set value)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref self reference to the object
string set value New value to set

Return Type: void

RPC name: shutdown

Overview:

Shutdown the host. (This function can only be called if there are no currently running VMs on the host and it is disabled.)

Signature:

void shutdown (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The Host to shutdown

Return Type: void

RPC name: shutdown_agent

Overview:

Shuts the agent down after a 10 second pause. WARNING: this is a dangerous operation. Any operations in progress will be aborted, and unrecoverable data loss may occur. The caller is responsible for ensuring that there are no operations in progress when this method is called.

Signature:

void shutdown_agent (session ref session_id)

RPC name: sync_data

Overview:

This causes the synchronisation of the non-database data (messages, RRDs and so on) stored on the master to be synchronised with the host

Signature:

void sync_data (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to whom the data should be sent

Return Type: void

RPC name: syslog_reconfigure

Overview:

Re-configure syslog logging

Signature:

void syslog_reconfigure (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host Tell the host to reread its Host.logging parameters and reconfigure itself accordingly

Return Type: void

Class: host_cpu

This class is deprecated.

A physical CPU

Fields for class: host_cpu

Field Type Qualifier Description
family int RO/runtime Deprecated. the family (number) of the physical CPU
features string RO/runtime Deprecated. the physical CPU feature bitmap
flags string RO/runtime Deprecated. the flags of the physical CPU (a decoded version of the features field)
host host ref RO/runtime Deprecated. the host the CPU is in
model int RO/runtime Deprecated. the model number of the physical CPU
modelname string RO/runtime Deprecated. the model name of the physical CPU
number int RO/runtime Deprecated. the number of the physical CPU within the host
other_config (string -> string) map RW Deprecated. additional configuration
speed int RO/runtime Deprecated. the speed of the physical CPU
stepping string RO/runtime Deprecated. the stepping of the physical CPU
utilisation float RO/runtime Deprecated. the current CPU utilisation
uuid string RO/runtime Deprecated. Unique identifier/object reference
vendor string RO/runtime Deprecated. the vendor of the physical CPU

RPCs associated with class: host_cpu

RPC name: add_to_other_config

This message is deprecated.

Overview:

Add the given key-value pair to the other_config field of the given host_cpu.

Signature:

void add_to_other_config (session ref session_id, host_cpu ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: get_all

This message is deprecated.

Overview:

Return a list of all the host_cpus known to the system.

Signature:

host_cpu ref set get_all (session ref session_id)

RPC name: get_all_records

This message is deprecated.

Overview:

Return a map of host_cpu references to host_cpu records for all host_cpus known to the system.

Signature:

(host_cpu ref -> host_cpu record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

This message is deprecated.

Overview:

Get a reference to the host_cpu instance with the specified UUID.

Signature:

host_cpu ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: host_cpu ref

reference to the object

RPC name: get_family

This message is deprecated.

Overview:

Get the family field of the given host_cpu.

Signature:

int get_family (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: int

value of the field

RPC name: get_features

This message is deprecated.

Overview:

Get the features field of the given host_cpu.

Signature:

string get_features (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: string

value of the field

RPC name: get_flags

This message is deprecated.

Overview:

Get the flags field of the given host_cpu.

Signature:

string get_flags (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: string

value of the field

RPC name: get_host

This message is deprecated.

Overview:

Get the host field of the given host_cpu.

Signature:

host ref get_host (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_model

This message is deprecated.

Overview:

Get the model field of the given host_cpu.

Signature:

int get_model (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: int

value of the field

RPC name: get_modelname

This message is deprecated.

Overview:

Get the modelname field of the given host_cpu.

Signature:

string get_modelname (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: string

value of the field

RPC name: get_number

This message is deprecated.

Overview:

Get the number field of the given host_cpu.

Signature:

int get_number (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: int

value of the field

RPC name: get_other_config

This message is deprecated.

Overview:

Get the other_config field of the given host_cpu.

Signature:

(string -> string) map get_other_config (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

This message is deprecated.

Overview:

Get a record containing the current state of the given host_cpu.

Signature:

host_cpu record get_record (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: host_cpu record

all fields from the object

RPC name: get_speed

This message is deprecated.

Overview:

Get the speed field of the given host_cpu.

Signature:

int get_speed (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: int

value of the field

RPC name: get_stepping

This message is deprecated.

Overview:

Get the stepping field of the given host_cpu.

Signature:

string get_stepping (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: string

value of the field

RPC name: get_utilisation

This message is deprecated.

Overview:

Get the utilisation field of the given host_cpu.

Signature:

float get_utilisation (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: float

value of the field

RPC name: get_uuid

This message is deprecated.

Overview:

Get the uuid field of the given host_cpu.

Signature:

string get_uuid (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: string

value of the field

RPC name: get_vendor

This message is deprecated.

Overview:

Get the vendor field of the given host_cpu.

Signature:

string get_vendor (session ref session_id, host_cpu ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

This message is deprecated.

Overview:

Remove the given key and its corresponding value from the other_config field of the given host_cpu. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, host_cpu ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

This message is deprecated.

Overview:

Set the other_config field of the given host_cpu.

Signature:

void set_other_config (session ref session_id, host_cpu ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_cpu ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: host_crashdump

Represents a host crash dump

Fields for class: host_crashdump

Field Type Qualifier Description
host host ref RO/constructor Host the crashdump relates to
other_config (string -> string) map RW additional configuration
size int RO/runtime Size of the crashdump
timestamp datetime RO/runtime Time the crash happened
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: host_crashdump

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given host_crashdump.

Signature:

void add_to_other_config (session ref session_id, host_crashdump ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: destroy

Overview:

Destroy specified host crash dump, removing it from the disk.

Signature:

void destroy (session ref session_id, host_crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self The host crashdump to destroy

Return Type: void

RPC name: get_all

Overview:

Return a list of all the host_crashdumps known to the system.

Signature:

host_crashdump ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of host_crashdump references to host_crashdump records for all host_crashdumps known to the system.

Signature:

(host_crashdump ref -> host_crashdump record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the host_crashdump instance with the specified UUID.

Signature:

host_crashdump ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: host_crashdump ref

reference to the object

RPC name: get_host

Overview:

Get the host field of the given host_crashdump.

Signature:

host ref get_host (session ref session_id, host_crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given host_crashdump.

Signature:

(string -> string) map get_other_config (session ref session_id, host_crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given host_crashdump.

Signature:

host_crashdump record get_record (session ref session_id, host_crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object

Return Type: host_crashdump record

all fields from the object

RPC name: get_size

Overview:

Get the size field of the given host_crashdump.

Signature:

int get_size (session ref session_id, host_crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object

Return Type: int

value of the field

RPC name: get_timestamp

Overview:

Get the timestamp field of the given host_crashdump.

Signature:

datetime get_timestamp (session ref session_id, host_crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object

Return Type: datetime

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given host_crashdump.

Signature:

string get_uuid (session ref session_id, host_crashdump ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given host_crashdump. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, host_crashdump ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given host_crashdump.

Signature:

void set_other_config (session ref session_id, host_crashdump ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: upload

Overview:

Upload the specified host crash dump to a specified URL

Signature:

void upload (session ref session_id, host_crashdump ref self, string url, (string -> string) map options)

Arguments:

type name description
session ref session_id Reference to a valid session
host_crashdump ref self The host crashdump to upload
string url The URL to upload to
(string -> string) map options Extra configuration operations

Return Type: void

Class: host_metrics

The metrics associated with a host

Fields for class: host_metrics

Field Type Qualifier Description
last_updated datetime RO/runtime Time at which this information was last updated
live bool RO/runtime Pool master thinks this host is live
memory_free int RO/runtime Removed. Free host memory (bytes)
memory_total int RO/runtime Total host memory (bytes)
other_config (string -> string) map RW additional configuration
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: host_metrics

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given host_metrics.

Signature:

void add_to_other_config (session ref session_id, host_metrics ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: get_all

Overview:

Return a list of all the host_metrics instances known to the system.

Signature:

host_metrics ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of host_metrics references to host_metrics records for all host_metrics instances known to the system.

Signature:

(host_metrics ref -> host_metrics record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the host_metrics instance with the specified UUID.

Signature:

host_metrics ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: host_metrics ref

reference to the object

RPC name: get_last_updated

Overview:

Get the last_updated field of the given host_metrics.

Signature:

datetime get_last_updated (session ref session_id, host_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object

Return Type: datetime

value of the field

RPC name: get_live

Overview:

Get the live field of the given host_metrics.

Signature:

bool get_live (session ref session_id, host_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object

Return Type: bool

value of the field

RPC name: get_memory_free

This message is removed.

Overview:

Get the memory/free field of the given host_metrics.

Signature:

int get_memory_free (session ref session_id, host_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object

Return Type: int

value of the field

RPC name: get_memory_total

Overview:

Get the memory/total field of the given host_metrics.

Signature:

int get_memory_total (session ref session_id, host_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object

Return Type: int

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given host_metrics.

Signature:

(string -> string) map get_other_config (session ref session_id, host_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given host_metrics.

Signature:

host_metrics record get_record (session ref session_id, host_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object

Return Type: host_metrics record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given host_metrics.

Signature:

string get_uuid (session ref session_id, host_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given host_metrics. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, host_metrics ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given host_metrics.

Signature:

void set_other_config (session ref session_id, host_metrics ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_metrics ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: host_patch

This class is deprecated.

Represents a patch stored on a server

Fields for class: host_patch

Field Type Qualifier Description
applied bool RO/runtime Deprecated. True if the patch has been applied
host host ref RO/constructor Deprecated. Host the patch relates to
name_description string RO/constructor Deprecated. a notes field containing human-readable description
name_label string RO/constructor Deprecated. a human-readable name
other_config (string -> string) map RW Deprecated. additional configuration
pool_patch pool_patch ref RO/constructor Deprecated. The patch applied
size int RO/runtime Deprecated. Size of the patch
timestamp_applied datetime RO/runtime Deprecated. Time the patch was applied
uuid string RO/runtime Deprecated. Unique identifier/object reference
version string RO/constructor Deprecated. Patch version number

RPCs associated with class: host_patch

RPC name: add_to_other_config

This message is deprecated.

Overview:

Add the given key-value pair to the other_config field of the given host_patch.

Signature:

void add_to_other_config (session ref session_id, host_patch ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: apply

This message is deprecated.

Overview:

Apply the selected patch and return its output

Signature:

string apply (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self The patch to apply

Return Type: string

the output of the patch application process

RPC name: destroy

This message is deprecated.

Overview:

Destroy the specified host patch, removing it from the disk. This does NOT reverse the patch

Signature:

void destroy (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self The patch to destroy

Return Type: void

RPC name: get_all

This message is deprecated.

Overview:

Return a list of all the host_patchs known to the system.

Signature:

host_patch ref set get_all (session ref session_id)

RPC name: get_all_records

This message is deprecated.

Overview:

Return a map of host_patch references to host_patch records for all host_patchs known to the system.

Signature:

(host_patch ref -> host_patch record) map get_all_records (session ref session_id)

RPC name: get_applied

This message is deprecated.

Overview:

Get the applied field of the given host_patch.

Signature:

bool get_applied (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: bool

value of the field

RPC name: get_by_name_label

This message is deprecated.

Overview:

Get all the host_patch instances with the given label.

Signature:

host_patch ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: host_patch ref set

references to objects with matching names

RPC name: get_by_uuid

This message is deprecated.

Overview:

Get a reference to the host_patch instance with the specified UUID.

Signature:

host_patch ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: host_patch ref

reference to the object

RPC name: get_host

This message is deprecated.

Overview:

Get the host field of the given host_patch.

Signature:

host ref get_host (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_name_description

This message is deprecated.

Overview:

Get the name/description field of the given host_patch.

Signature:

string get_name_description (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

This message is deprecated.

Overview:

Get the name/label field of the given host_patch.

Signature:

string get_name_label (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

This message is deprecated.

Overview:

Get the other_config field of the given host_patch.

Signature:

(string -> string) map get_other_config (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_pool_patch

This message is deprecated.

Overview:

Get the pool_patch field of the given host_patch.

Signature:

pool_patch ref get_pool_patch (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: pool_patch ref

value of the field

RPC name: get_record

This message is deprecated.

Overview:

Get a record containing the current state of the given host_patch.

Signature:

host_patch record get_record (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: host_patch record

all fields from the object

RPC name: get_size

This message is deprecated.

Overview:

Get the size field of the given host_patch.

Signature:

int get_size (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: int

value of the field

RPC name: get_timestamp_applied

This message is deprecated.

Overview:

Get the timestamp_applied field of the given host_patch.

Signature:

datetime get_timestamp_applied (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: datetime

value of the field

RPC name: get_uuid

This message is deprecated.

Overview:

Get the uuid field of the given host_patch.

Signature:

string get_uuid (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: string

value of the field

RPC name: get_version

This message is deprecated.

Overview:

Get the version field of the given host_patch.

Signature:

string get_version (session ref session_id, host_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

This message is deprecated.

Overview:

Remove the given key and its corresponding value from the other_config field of the given host_patch. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, host_patch ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

This message is deprecated.

Overview:

Set the other_config field of the given host_patch.

Signature:

void set_other_config (session ref session_id, host_patch ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
host_patch ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: LVHD

LVHD SR specific operations

Fields for class: LVHD

Field Type Qualifier Description
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: LVHD

RPC name: enable_thin_provisioning

Overview:

Upgrades an LVHD SR to enable thin-provisioning. Future VDIs created in this SR will be thinly-provisioned, although existing VDIs will be left alone. Note that the SR must be attached to the SRmaster for upgrade to work.

Signature:

string enable_thin_provisioning (session ref session_id, host ref host, SR ref SR, int initial_allocation, int allocation_quantum)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The LVHD Host to upgrade to being thin-provisioned.
SR ref SR The LVHD SR to upgrade to being thin-provisioned.
int initial_allocation The initial amount of space to allocate to a newly-created VDI in bytes
int allocation_quantum The amount of space to allocate to a VDI when it needs to be enlarged in bytes

Return Type: string

Message from LVHD.enable_thin_provisioning extension

RPC name: get_by_uuid

Overview:

Get a reference to the LVHD instance with the specified UUID.

Signature:

LVHD ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: LVHD ref

reference to the object

RPC name: get_record

Overview:

Get a record containing the current state of the given LVHD.

Signature:

LVHD record get_record (session ref session_id, LVHD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
LVHD ref self reference to the object

Return Type: LVHD record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given LVHD.

Signature:

string get_uuid (session ref session_id, LVHD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
LVHD ref self reference to the object

Return Type: string

value of the field

Class: message

An message for the attention of the administrator

Fields for class: message

Field Type Qualifier Description
body string RO/runtime The body of the message
cls cls RO/runtime The class of the object this message is associated with
name string RO/runtime The name of the message
obj_uuid string RO/runtime The uuid of the object this message is associated with
priority int RO/runtime The message priority, 0 being low priority
timestamp datetime RO/runtime The time at which the message was created
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: message

RPC name: create

Overview:

Signature:

message ref create (session ref session_id, string name, int priority, cls cls, string obj_uuid, string body)

Arguments:

type name description
session ref session_id Reference to a valid session
string name The name of the message
int priority The priority of the message
cls cls The class of object this message is associated with
string obj_uuid The uuid of the object this message is associated with
string body The body of the message

Return Type: message ref

The reference of the created message

RPC name: destroy

Overview:

Signature:

void destroy (session ref session_id, message ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
message ref self The reference of the message to destroy

Return Type: void

RPC name: get

Overview:

Signature:

(message ref -> message record) map get (session ref session_id, cls cls, string obj_uuid, datetime since)

Arguments:

type name description
session ref session_id Reference to a valid session
cls cls The class of object
string obj_uuid The uuid of the object
datetime since The cutoff time

Return Type: (message ref -> message record) map

The relevant messages

RPC name: get_all

Overview:

Signature:

message ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Signature:

(message ref -> message record) map get_all_records (session ref session_id)

RPC name: get_all_records_where

Overview:

Signature:

(message ref -> message record) map get_all_records_where (session ref session_id, string expr)

Arguments:

type name description
session ref session_id Reference to a valid session
string expr The expression to match (not currently used)

Return Type: (message ref -> message record) map

The messages

RPC name: get_by_uuid

Overview:

Signature:

message ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid The uuid of the message

Return Type: message ref

The message reference

RPC name: get_record

Overview:

Signature:

message record get_record (session ref session_id, message ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
message ref self The reference to the message

Return Type: message record

The message record

RPC name: get_since

Overview:

Signature:

(message ref -> message record) map get_since (session ref session_id, datetime since)

Arguments:

type name description
session ref session_id Reference to a valid session
datetime since The cutoff time

Return Type: (message ref -> message record) map

The relevant messages

Class: network

A virtual network

Fields for class: network

Field Type Qualifier Description
allowed_operations network_operations set RO/runtime 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.
assigned_ips (VIF ref -> string) map RO/runtime The IP addresses assigned to VIFs on networks that have active xapi-managed DHCP
blobs (string -> blob ref) map RO/runtime Binary blobs associated with this network
bridge string RO/constructor name of the bridge corresponding to this network on the local host
current_operations (string -> network_operations) map RO/runtime links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
default_locking_mode network_default_locking_mode RO/runtime The network will use this value to determine the behaviour of all VIFs where locking_mode = default
managed bool RO/constructor true if the bridge is managed by xapi
MTU int RW MTU in octets
name_description string RW a notes field containing human-readable description
name_label string RW a human-readable name
other_config (string -> string) map RW additional configuration
PIFs PIF ref set RO/runtime list of connected pifs
purpose network_purpose set RO/runtime Set of purposes for which the server will use this network
tags string set RW user-specified tags for categorization purposes
uuid string RO/runtime Unique identifier/object reference
VIFs VIF ref set RO/runtime list of connected vifs

RPCs associated with class: network

RPC name: add_purpose

Overview:

Give a network a new purpose (if not present already)

Signature:

void add_purpose (session ref session_id, network ref self, network_purpose value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self The network
network_purpose value The purpose to add

Return Type: void

Possible Error Codes: NETWORK_INCOMPATIBLE_PURPOSES

RPC name: add_tags

Overview:

Add the given value to the tags field of the given network. If the value is already in that Set, then do nothing.

Signature:

void add_tags (session ref session_id, network ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
string value New value to add

Return Type: void

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given network.

Signature:

void add_to_other_config (session ref session_id, network ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create

Overview:

Create a new network instance, and return its handle.

Signature:

network ref create (session ref session_id, network record args)

Arguments:

type name description
session ref session_id Reference to a valid session
network record args All constructor arguments

Return Type: network ref

reference to the newly created object

RPC name: create_new_blob

Overview:

Create a placeholder for a named binary blob of data that is associated with this pool

Signature:

blob ref create_new_blob (session ref session_id, network ref network, string name, string mime_type, bool public)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref network The network
string name The name associated with the blob
string mime_type The mime type for the data. Empty string translates to application/octet-stream
bool public True if the blob should be publicly available

Return Type: blob ref

The reference of the blob, needed for populating its data

RPC name: destroy

Overview:

Destroy the specified network instance.

Signature:

void destroy (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: void

RPC name: get_all

Overview:

Return a list of all the networks known to the system.

Signature:

network ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of network references to network records for all networks known to the system.

Signature:

(network ref -> network record) map get_all_records (session ref session_id)

RPC name: get_allowed_operations

Overview:

Get the allowed_operations field of the given network.

Signature:

network_operations set get_allowed_operations (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: network_operations set

value of the field

RPC name: get_assigned_ips

Overview:

Get the assigned_ips field of the given network.

Signature:

(VIF ref -> string) map get_assigned_ips (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: (VIF ref -> string) map

value of the field

RPC name: get_blobs

Overview:

Get the blobs field of the given network.

Signature:

(string -> blob ref) map get_blobs (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: (string -> blob ref) map

value of the field

RPC name: get_bridge

Overview:

Get the bridge field of the given network.

Signature:

string get_bridge (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: string

value of the field

RPC name: get_by_name_label

Overview:

Get all the network instances with the given label.

Signature:

network ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: network ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the network instance with the specified UUID.

Signature:

network ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: network ref

reference to the object

RPC name: get_current_operations

Overview:

Get the current_operations field of the given network.

Signature:

(string -> network_operations) map get_current_operations (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: (string -> network_operations) map

value of the field

RPC name: get_default_locking_mode

Overview:

Get the default_locking_mode field of the given network.

Signature:

network_default_locking_mode get_default_locking_mode (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: network_default_locking_mode

value of the field

RPC name: get_managed

Overview:

Get the managed field of the given network.

Signature:

bool get_managed (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: bool

value of the field

RPC name: get_MTU

Overview:

Get the MTU field of the given network.

Signature:

int get_MTU (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: int

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given network.

Signature:

string get_name_description (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given network.

Signature:

string get_name_label (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given network.

Signature:

(string -> string) map get_other_config (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_PIFs

Overview:

Get the PIFs field of the given network.

Signature:

PIF ref set get_PIFs (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: PIF ref set

value of the field

RPC name: get_purpose

Overview:

Get the purpose field of the given network.

Signature:

network_purpose set get_purpose (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: network_purpose set

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given network.

Signature:

network record get_record (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: network record

all fields from the object

RPC name: get_tags

Overview:

Get the tags field of the given network.

Signature:

string set get_tags (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: string set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given network.

Signature:

string get_uuid (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: string

value of the field

RPC name: get_VIFs

Overview:

Get the VIFs field of the given network.

Signature:

VIF ref set get_VIFs (session ref session_id, network ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object

Return Type: VIF ref set

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given network. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, network ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_purpose

Overview:

Remove a purpose from a network (if present)

Signature:

void remove_purpose (session ref session_id, network ref self, network_purpose value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self The network
network_purpose value The purpose to remove

Return Type: void

RPC name: remove_tags

Overview:

Remove the given value from the tags field of the given network. If the value is not in that Set, then do nothing.

Signature:

void remove_tags (session ref session_id, network ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
string value Value to remove

Return Type: void

RPC name: set_default_locking_mode

Overview:

Set the default locking mode for VIFs attached to this network

Signature:

void set_default_locking_mode (session ref session_id, network ref network, network_default_locking_mode value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref network The network
network_default_locking_mode value The default locking mode for VIFs attached to this network.

Return Type: void

RPC name: set_MTU

Overview:

Set the MTU field of the given network.

Signature:

void set_MTU (session ref session_id, network ref self, int value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
int value New value to set

Return Type: void

RPC name: set_name_description

Overview:

Set the name/description field of the given network.

Signature:

void set_name_description (session ref session_id, network ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_name_label

Overview:

Set the name/label field of the given network.

Signature:

void set_name_label (session ref session_id, network ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given network.

Signature:

void set_other_config (session ref session_id, network ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_tags

Overview:

Set the tags field of the given network.

Signature:

void set_tags (session ref session_id, network ref self, string set value)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref self reference to the object
string set value New value to set

Return Type: void

Class: network_sriov

network-sriov which connects logical pif and physical pif

Fields for class: network_sriov

Field Type Qualifier Description
configuration_mode sriov_configuration_mode RO/runtime The mode for configure network sriov
logical_PIF PIF ref RO/constructor The logical PIF to connect to the SR-IOV network after enable SR-IOV on the physical PIF
physical_PIF PIF ref RO/constructor The PIF that has SR-IOV enabled
requires_reboot bool RO/runtime Indicates whether the host need to be rebooted before SR-IOV is enabled on the physical PIF
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: network_sriov

RPC name: create

Overview:

Enable SR-IOV on the specific PIF. It will create a network-sriov based on the specific PIF and automatically create a logical PIF to connect the specific network.

Signature:

network_sriov ref create (session ref session_id, PIF ref pif, network ref network)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref pif PIF on which to enable SR-IOV
network ref network Network to connect SR-IOV virtual functions with VM VIFs

Return Type: network_sriov ref

The reference of the created network_sriov object

RPC name: destroy

Overview:

Disable SR-IOV on the specific PIF. It will destroy the network-sriov and the logical PIF accordingly.

Signature:

void destroy (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self SRIOV to destroy

Return Type: void

RPC name: get_all

Overview:

Return a list of all the network_sriovs known to the system.

Signature:

network_sriov ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of network_sriov references to network_sriov records for all network_sriovs known to the system.

Signature:

(network_sriov ref -> network_sriov record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the network_sriov instance with the specified UUID.

Signature:

network_sriov ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: network_sriov ref

reference to the object

RPC name: get_configuration_mode

Overview:

Get the configuration_mode field of the given network_sriov.

Signature:

sriov_configuration_mode get_configuration_mode (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self reference to the object

Return Type: sriov_configuration_mode

value of the field

RPC name: get_logical_PIF

Overview:

Get the logical_PIF field of the given network_sriov.

Signature:

PIF ref get_logical_PIF (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self reference to the object

Return Type: PIF ref

value of the field

RPC name: get_physical_PIF

Overview:

Get the physical_PIF field of the given network_sriov.

Signature:

PIF ref get_physical_PIF (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self reference to the object

Return Type: PIF ref

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given network_sriov.

Signature:

network_sriov record get_record (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self reference to the object

Return Type: network_sriov record

all fields from the object

RPC name: get_remaining_capacity

Overview:

Get the number of free SR-IOV VFs on the associated PIF

Signature:

int get_remaining_capacity (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self the NETWORK_SRIOV object

Return Type: int

The number of free SR-IOV VFs on the associated PIF

RPC name: get_requires_reboot

Overview:

Get the requires_reboot field of the given network_sriov.

Signature:

bool get_requires_reboot (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self reference to the object

Return Type: bool

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given network_sriov.

Signature:

string get_uuid (session ref session_id, network_sriov ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
network_sriov ref self reference to the object

Return Type: string

value of the field

Class: PBD

The physical block devices through which hosts access SRs

Fields for class: PBD

Field Type Qualifier Description
currently_attached bool RO/runtime is the SR currently attached on this host?
device_config (string -> string) map RO/constructor a config string to string map that is provided to the host's SR-backend-driver
host host ref RO/constructor physical machine on which the pbd is available
other_config (string -> string) map RW additional configuration
SR SR ref RO/constructor the storage repository that the pbd realises
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: PBD

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given PBD.

Signature:

void add_to_other_config (session ref session_id, PBD ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create

Overview:

Create a new PBD instance, and return its handle.

Signature:

PBD ref create (session ref session_id, PBD record args)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD record args All constructor arguments

Return Type: PBD ref

reference to the newly created object

RPC name: destroy

Overview:

Destroy the specified PBD instance.

Signature:

void destroy (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: void

RPC name: get_all

Overview:

Return a list of all the PBDs known to the system.

Signature:

PBD ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PBD references to PBD records for all PBDs known to the system.

Signature:

(PBD ref -> PBD record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PBD instance with the specified UUID.

Signature:

PBD ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PBD ref

reference to the object

RPC name: get_currently_attached

Overview:

Get the currently_attached field of the given PBD.

Signature:

bool get_currently_attached (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: bool

value of the field

RPC name: get_device_config

Overview:

Get the device_config field of the given PBD.

Signature:

(string -> string) map get_device_config (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_host

Overview:

Get the host field of the given PBD.

Signature:

host ref get_host (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given PBD.

Signature:

(string -> string) map get_other_config (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PBD.

Signature:

PBD record get_record (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: PBD record

all fields from the object

RPC name: get_SR

Overview:

Get the SR field of the given PBD.

Signature:

SR ref get_SR (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PBD.

Signature:

string get_uuid (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object

Return Type: string

value of the field

RPC name: plug

Overview:

Activate the specified PBD, causing the referenced SR to be attached and scanned

Signature:

void plug (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self The PBD to activate

Return Type: void

Possible Error Codes: SR_UNKNOWN_DRIVER

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given PBD. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, PBD ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_device_config

Overview:

Sets the PBD's device_config field

Signature:

void set_device_config (session ref session_id, PBD ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self The PBD to modify
(string -> string) map value The new value of the PBD's device_config

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given PBD.

Signature:

void set_other_config (session ref session_id, PBD ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: unplug

Overview:

Deactivate the specified PBD, causing the referenced SR to be detached and nolonger scanned

Signature:

void unplug (session ref session_id, PBD ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PBD ref self The PBD to deactivate

Return Type: void

Class: PCI

A PCI device

Fields for class: PCI

Field Type Qualifier Description
class_name string RO/constructor PCI class name
dependencies PCI ref set RO/runtime List of dependent PCI devices
device_name string RO/constructor Device name
driver_name string RO/constructor Driver name
host host ref RO/constructor Physical machine that owns the PCI device
other_config (string -> string) map RW Additional configuration
pci_id string RO/constructor PCI ID of the physical device
subsystem_device_name string RO/constructor Subsystem device name
subsystem_vendor_name string RO/constructor Subsystem vendor name
uuid string RO/runtime Unique identifier/object reference
vendor_name string RO/constructor Vendor name

RPCs associated with class: PCI

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given PCI.

Signature:

void add_to_other_config (session ref session_id, PCI ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: get_all

Overview:

Return a list of all the PCIs known to the system.

Signature:

PCI ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PCI references to PCI records for all PCIs known to the system.

Signature:

(PCI ref -> PCI record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PCI instance with the specified UUID.

Signature:

PCI ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PCI ref

reference to the object

RPC name: get_class_name

Overview:

Get the class_name field of the given PCI.

Signature:

string get_class_name (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: get_dependencies

Overview:

Get the dependencies field of the given PCI.

Signature:

PCI ref set get_dependencies (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: PCI ref set

value of the field

RPC name: get_device_name

Overview:

Get the device_name field of the given PCI.

Signature:

string get_device_name (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: get_driver_name

Overview:

Get the driver_name field of the given PCI.

Signature:

string get_driver_name (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: get_host

Overview:

Get the host field of the given PCI.

Signature:

host ref get_host (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given PCI.

Signature:

(string -> string) map get_other_config (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_pci_id

Overview:

Get the pci_id field of the given PCI.

Signature:

string get_pci_id (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PCI.

Signature:

PCI record get_record (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: PCI record

all fields from the object

RPC name: get_subsystem_device_name

Overview:

Get the subsystem_device_name field of the given PCI.

Signature:

string get_subsystem_device_name (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: get_subsystem_vendor_name

Overview:

Get the subsystem_vendor_name field of the given PCI.

Signature:

string get_subsystem_vendor_name (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PCI.

Signature:

string get_uuid (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: get_vendor_name

Overview:

Get the vendor_name field of the given PCI.

Signature:

string get_vendor_name (session ref session_id, PCI ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given PCI. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, PCI ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given PCI.

Signature:

void set_other_config (session ref session_id, PCI ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
PCI ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: PGPU

A physical GPU (pGPU)

Fields for class: PGPU

Field Type Qualifier Description
compatibility_metadata (string -> string) map RO/runtime PGPU metadata to determine whether a VGPU can migrate between two PGPUs
dom0_access pgpu_dom0_access RO/runtime The accessibility of this device from dom0
enabled_VGPU_types VGPU_type ref set RO/runtime List of VGPU types which have been enabled for this PGPU
GPU_group GPU_group ref RO/constructor GPU group the pGPU is contained in
host host ref RO/runtime Host that owns the GPU
is_system_display_device bool RO/runtime Is this device the system display device
other_config (string -> string) map RW Additional configuration
PCI PCI ref RO/constructor Link to underlying PCI device
resident_VGPUs VGPU ref set RO/runtime List of VGPUs running on this PGPU
supported_VGPU_max_capacities (VGPU_type ref -> int) map RO/runtime A map relating each VGPU type supported on this GPU to the maximum number of VGPUs of that type which can run simultaneously on this GPU
supported_VGPU_types VGPU_type ref set RO/runtime List of VGPU types supported by the underlying hardware
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: PGPU

RPC name: add_enabled_VGPU_types

Overview:

Signature:

void add_enabled_VGPU_types (session ref session_id, PGPU ref self, VGPU_type ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self The PGPU to which we are adding an enabled VGPU type
VGPU_type ref value The VGPU type to enable

Return Type: void

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given PGPU.

Signature:

void add_to_other_config (session ref session_id, PGPU ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: disable_dom0_access

Overview:

Signature:

pgpu_dom0_access disable_dom0_access (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self The PGPU to which dom0 will be denied access

Return Type: pgpu_dom0_access

The accessibility of this PGPU from dom0

RPC name: enable_dom0_access

Overview:

Signature:

pgpu_dom0_access enable_dom0_access (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self The PGPU to which dom0 will be granted access

Return Type: pgpu_dom0_access

The accessibility of this PGPU from dom0

RPC name: get_all

Overview:

Return a list of all the PGPUs known to the system.

Signature:

PGPU ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PGPU references to PGPU records for all PGPUs known to the system.

Signature:

(PGPU ref -> PGPU record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PGPU instance with the specified UUID.

Signature:

PGPU ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PGPU ref

reference to the object

RPC name: get_compatibility_metadata

Overview:

Get the compatibility_metadata field of the given PGPU.

Signature:

(string -> string) map get_compatibility_metadata (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_dom0_access

Overview:

Get the dom0_access field of the given PGPU.

Signature:

pgpu_dom0_access get_dom0_access (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: pgpu_dom0_access

value of the field

RPC name: get_enabled_VGPU_types

Overview:

Get the enabled_VGPU_types field of the given PGPU.

Signature:

VGPU_type ref set get_enabled_VGPU_types (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: VGPU_type ref set

value of the field

RPC name: get_GPU_group

Overview:

Get the GPU_group field of the given PGPU.

Signature:

GPU_group ref get_GPU_group (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: GPU_group ref

value of the field

RPC name: get_host

Overview:

Get the host field of the given PGPU.

Signature:

host ref get_host (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_is_system_display_device

Overview:

Get the is_system_display_device field of the given PGPU.

Signature:

bool get_is_system_display_device (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: bool

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given PGPU.

Signature:

(string -> string) map get_other_config (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_PCI

Overview:

Get the PCI field of the given PGPU.

Signature:

PCI ref get_PCI (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: PCI ref

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PGPU.

Signature:

PGPU record get_record (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: PGPU record

all fields from the object

RPC name: get_remaining_capacity

Overview:

Signature:

int get_remaining_capacity (session ref session_id, PGPU ref self, VGPU_type ref vgpu_type)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self The PGPU to query
VGPU_type ref vgpu_type The VGPU type for which we want to find the number of VGPUs which can still be started on this PGPU

Return Type: int

The number of VGPUs of the specified type which can still be started on this PGPU

RPC name: get_resident_VGPUs

Overview:

Get the resident_VGPUs field of the given PGPU.

Signature:

VGPU ref set get_resident_VGPUs (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: VGPU ref set

value of the field

RPC name: get_supported_VGPU_max_capacities

Overview:

Get the supported_VGPU_max_capacities field of the given PGPU.

Signature:

(VGPU_type ref -> int) map get_supported_VGPU_max_capacities (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: (VGPU_type ref -> int) map

value of the field

RPC name: get_supported_VGPU_types

Overview:

Get the supported_VGPU_types field of the given PGPU.

Signature:

VGPU_type ref set get_supported_VGPU_types (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: VGPU_type ref set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PGPU.

Signature:

string get_uuid (session ref session_id, PGPU ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object

Return Type: string

value of the field

RPC name: remove_enabled_VGPU_types

Overview:

Signature:

void remove_enabled_VGPU_types (session ref session_id, PGPU ref self, VGPU_type ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self The PGPU from which we are removing an enabled VGPU type
VGPU_type ref value The VGPU type to disable

Return Type: void

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given PGPU. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, PGPU ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_enabled_VGPU_types

Overview:

Signature:

void set_enabled_VGPU_types (session ref session_id, PGPU ref self, VGPU_type ref set value)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self The PGPU on which we are enabling a set of VGPU types
VGPU_type ref set value The VGPU types to enable

Return Type: void

RPC name: set_GPU_group

Overview:

Signature:

void set_GPU_group (session ref session_id, PGPU ref self, GPU_group ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self The PGPU to move to a new group
GPU_group ref value The group to which the PGPU will be moved

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given PGPU.

Signature:

void set_other_config (session ref session_id, PGPU ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
PGPU ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: PIF

A physical network interface (note separate VLANs are represented as several PIFs)

Fields for class: PIF

Field Type Qualifier Description
bond_master_of Bond ref set RO/runtime Indicates this PIF represents the results of a bond
bond_slave_of Bond ref RO/runtime Indicates which bond this interface is part of
capabilities string set RO/runtime Additional capabilities on the interface.
currently_attached bool RO/runtime true if this interface is online
device string RO/constructor machine-readable name of the interface (e.g. eth0)
disallow_unplug bool RO/runtime Prevent this PIF from being unplugged; set this to notify the management tool-stack that the PIF has a special use and should not be unplugged under any circumstances (e.g. because you're running storage traffic over it)
DNS string RO/runtime IP address of DNS servers to use
gateway string RO/runtime IP gateway
host host ref RO/constructor physical machine to which this pif is connected
igmp_snooping_status pif_igmp_status RO/runtime The IGMP snooping status of the corresponding network bridge
IP string RO/runtime IP address
ip_configuration_mode ip_configuration_mode RO/runtime Sets if and how this interface gets an IP address
IPv6 string set RO/runtime IPv6 address
ipv6_configuration_mode ipv6_configuration_mode RO/runtime Sets if and how this interface gets an IPv6 address
ipv6_gateway string RO/runtime IPv6 gateway
MAC string RO/constructor ethernet MAC address of physical interface
managed bool RO/constructor Indicates whether the interface is managed by xapi. If it is not, then xapi will not configure the interface, the commands PIF.plug/unplug/reconfigure_ip(v6) cannot be used, nor can the interface be bonded or have VLANs based on top through xapi.
management bool RO/runtime Indicates whether the control software is listening for connections on this interface
metrics PIF_metrics ref RO/runtime metrics associated with this PIF
MTU int RO/constructor MTU in octets
netmask string RO/runtime IP netmask
network network ref RO/constructor virtual network to which this pif is connected
other_config (string -> string) map RW Additional configuration
PCI PCI ref RO/runtime Link to underlying PCI device
physical bool RO/runtime true if this represents a physical network interface
primary_address_type primary_address_type RO/runtime Which protocol should define the primary address of this interface
properties (string -> string) map RO/runtime Additional configuration properties for the interface.
sriov_logical_PIF_of network_sriov ref set RO/runtime Indicates which network_sriov this interface is logical of
sriov_physical_PIF_of network_sriov ref set RO/runtime Indicates which network_sriov this interface is physical of
tunnel_access_PIF_of tunnel ref set RO/runtime Indicates to which tunnel this PIF gives access
tunnel_transport_PIF_of tunnel ref set RO/runtime Indicates to which tunnel this PIF provides transport
uuid string RO/runtime Unique identifier/object reference
VLAN int RO/constructor VLAN tag for all traffic passing through this interface
VLAN_master_of VLAN ref RO/runtime Indicates wich VLAN this interface receives untagged traffic from
VLAN_slave_of VLAN ref set RO/runtime Indicates which VLANs this interface transmits tagged traffic to

RPCs associated with class: PIF

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given PIF.

Signature:

void add_to_other_config (session ref session_id, PIF ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create_VLAN

This message is deprecated.

Overview:

Create a VLAN interface from an existing physical interface. This call is deprecated: use VLAN.create instead

Signature:

PIF ref create_VLAN (session ref session_id, string device, network ref network, host ref host, int VLAN)

Arguments:

type name description
session ref session_id Reference to a valid session
string device physical interface on which to create the VLAN interface
network ref network network to which this interface should be connected
host ref host physical machine to which this PIF is connected
int VLAN VLAN tag for the new interface

Return Type: PIF ref

The reference of the created PIF object

Possible Error Codes: VLAN_TAG_INVALID

RPC name: db_forget

Overview:

Destroy a PIF database record.

Signature:

void db_forget (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self The ref of the PIF whose database record should be destroyed

Return Type: void

RPC name: db_introduce

Overview:

Create a new PIF record in the database only

Signature:

PIF ref db_introduce (session ref session_id, string device, network ref network, host ref host, string MAC, int MTU, int VLAN, bool physical, ip_configuration_mode ip_configuration_mode, string IP, string netmask, string gateway, string DNS, Bond ref bond_slave_of, VLAN ref VLAN_master_of, bool management, (string -> string) map other_config, bool disallow_unplug, ipv6_configuration_mode ipv6_configuration_mode, string set IPv6, string ipv6_gateway, primary_address_type primary_address_type, bool managed, (string -> string) map properties)

Arguments:

type name description
session ref session_id Reference to a valid session
string device
network ref network
host ref host
string MAC
int MTU
int VLAN
bool physical
ip_configuration_mode ip_configuration_mode
string IP
string netmask
string gateway
string DNS
Bond ref bond_slave_of
VLAN ref VLAN_master_of
bool management
(string -> string) map other_config
bool disallow_unplug
ipv6_configuration_mode ipv6_configuration_mode
string set IPv6
string ipv6_gateway
primary_address_type primary_address_type
bool managed
(string -> string) map properties

Return Type: PIF ref

The ref of the newly created PIF record.

RPC name: destroy

This message is deprecated.

Overview:

Destroy the PIF object (provided it is a VLAN interface). This call is deprecated: use VLAN.destroy or Bond.destroy instead

Signature:

void destroy (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self the PIF object to destroy

Return Type: void

Possible Error Codes: PIF_IS_PHYSICAL

RPC name: forget

Overview:

Destroy the PIF object matching a particular network interface

Signature:

void forget (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self The PIF object to destroy

Return Type: void

Possible Error Codes: PIF_TUNNEL_STILL_EXISTS, CLUSTERING_ENABLED

RPC name: get_all

Overview:

Return a list of all the PIFs known to the system.

Signature:

PIF ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PIF references to PIF records for all PIFs known to the system.

Signature:

(PIF ref -> PIF record) map get_all_records (session ref session_id)

RPC name: get_bond_master_of

Overview:

Get the bond_master_of field of the given PIF.

Signature:

Bond ref set get_bond_master_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: Bond ref set

value of the field

RPC name: get_bond_slave_of

Overview:

Get the bond_slave_of field of the given PIF.

Signature:

Bond ref get_bond_slave_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: Bond ref

value of the field

RPC name: get_by_uuid

Overview:

Get a reference to the PIF instance with the specified UUID.

Signature:

PIF ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PIF ref

reference to the object

RPC name: get_capabilities

Overview:

Get the capabilities field of the given PIF.

Signature:

string set get_capabilities (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string set

value of the field

RPC name: get_currently_attached

Overview:

Get the currently_attached field of the given PIF.

Signature:

bool get_currently_attached (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: bool

value of the field

RPC name: get_device

Overview:

Get the device field of the given PIF.

Signature:

string get_device (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_disallow_unplug

Overview:

Get the disallow_unplug field of the given PIF.

Signature:

bool get_disallow_unplug (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: bool

value of the field

RPC name: get_DNS

Overview:

Get the DNS field of the given PIF.

Signature:

string get_DNS (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_gateway

Overview:

Get the gateway field of the given PIF.

Signature:

string get_gateway (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_host

Overview:

Get the host field of the given PIF.

Signature:

host ref get_host (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_igmp_snooping_status

Overview:

Get the igmp_snooping_status field of the given PIF.

Signature:

pif_igmp_status get_igmp_snooping_status (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: pif_igmp_status

value of the field

RPC name: get_IP

Overview:

Get the IP field of the given PIF.

Signature:

string get_IP (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_ip_configuration_mode

Overview:

Get the ip_configuration_mode field of the given PIF.

Signature:

ip_configuration_mode get_ip_configuration_mode (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: ip_configuration_mode

value of the field

RPC name: get_IPv6

Overview:

Get the IPv6 field of the given PIF.

Signature:

string set get_IPv6 (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string set

value of the field

RPC name: get_ipv6_configuration_mode

Overview:

Get the ipv6_configuration_mode field of the given PIF.

Signature:

ipv6_configuration_mode get_ipv6_configuration_mode (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: ipv6_configuration_mode

value of the field

RPC name: get_ipv6_gateway

Overview:

Get the ipv6_gateway field of the given PIF.

Signature:

string get_ipv6_gateway (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_MAC

Overview:

Get the MAC field of the given PIF.

Signature:

string get_MAC (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_managed

Overview:

Get the managed field of the given PIF.

Signature:

bool get_managed (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: bool

value of the field

RPC name: get_management

Overview:

Get the management field of the given PIF.

Signature:

bool get_management (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: bool

value of the field

RPC name: get_metrics

Overview:

Get the metrics field of the given PIF.

Signature:

PIF_metrics ref get_metrics (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: PIF_metrics ref

value of the field

RPC name: get_MTU

Overview:

Get the MTU field of the given PIF.

Signature:

int get_MTU (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: int

value of the field

RPC name: get_netmask

Overview:

Get the netmask field of the given PIF.

Signature:

string get_netmask (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_network

Overview:

Get the network field of the given PIF.

Signature:

network ref get_network (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: network ref

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given PIF.

Signature:

(string -> string) map get_other_config (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_PCI

Overview:

Get the PCI field of the given PIF.

Signature:

PCI ref get_PCI (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: PCI ref

value of the field

RPC name: get_physical

Overview:

Get the physical field of the given PIF.

Signature:

bool get_physical (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: bool

value of the field

RPC name: get_primary_address_type

Overview:

Get the primary_address_type field of the given PIF.

Signature:

primary_address_type get_primary_address_type (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: primary_address_type

value of the field

RPC name: get_properties

Overview:

Get the properties field of the given PIF.

Signature:

(string -> string) map get_properties (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PIF.

Signature:

PIF record get_record (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: PIF record

all fields from the object

RPC name: get_sriov_logical_PIF_of

Overview:

Get the sriov_logical_PIF_of field of the given PIF.

Signature:

network_sriov ref set get_sriov_logical_PIF_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: network_sriov ref set

value of the field

RPC name: get_sriov_physical_PIF_of

Overview:

Get the sriov_physical_PIF_of field of the given PIF.

Signature:

network_sriov ref set get_sriov_physical_PIF_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: network_sriov ref set

value of the field

RPC name: get_tunnel_access_PIF_of

Overview:

Get the tunnel_access_PIF_of field of the given PIF.

Signature:

tunnel ref set get_tunnel_access_PIF_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: tunnel ref set

value of the field

RPC name: get_tunnel_transport_PIF_of

Overview:

Get the tunnel_transport_PIF_of field of the given PIF.

Signature:

tunnel ref set get_tunnel_transport_PIF_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: tunnel ref set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PIF.

Signature:

string get_uuid (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: string

value of the field

RPC name: get_VLAN

Overview:

Get the VLAN field of the given PIF.

Signature:

int get_VLAN (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: int

value of the field

RPC name: get_VLAN_master_of

Overview:

Get the VLAN_master_of field of the given PIF.

Signature:

VLAN ref get_VLAN_master_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: VLAN ref

value of the field

RPC name: get_VLAN_slave_of

Overview:

Get the VLAN_slave_of field of the given PIF.

Signature:

VLAN ref set get_VLAN_slave_of (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object

Return Type: VLAN ref set

value of the field

RPC name: introduce

Overview:

Create a PIF object matching a particular network interface

Signature:

PIF ref introduce (session ref session_id, host ref host, string MAC, string device, bool managed)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host on which the interface exists
string MAC The MAC address of the interface
string device The device name to use for the interface
bool managed Indicates whether the interface is managed by xapi (defaults to "true")

Return Type: PIF ref

The reference of the created PIF object

RPC name: plug

Overview:

Attempt to bring up a physical interface

Signature:

void plug (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self the PIF object to plug

Return Type: void

Possible Error Codes: TRANSPORT_PIF_NOT_CONFIGURED

RPC name: reconfigure_ip

Overview:

Reconfigure the IP address settings for this interface

Signature:

void reconfigure_ip (session ref session_id, PIF ref self, ip_configuration_mode mode, string IP, string netmask, string gateway, string DNS)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self the PIF object to reconfigure
ip_configuration_mode mode whether to use dynamic/static/no-assignment
string IP the new IP address
string netmask the new netmask
string gateway the new gateway
string DNS the new DNS settings

Return Type: void

Possible Error Codes: CLUSTERING_ENABLED

RPC name: reconfigure_ipv6

Overview:

Reconfigure the IPv6 address settings for this interface

Signature:

void reconfigure_ipv6 (session ref session_id, PIF ref self, ipv6_configuration_mode mode, string IPv6, string gateway, string DNS)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self the PIF object to reconfigure
ipv6_configuration_mode mode whether to use dynamic/static/no-assignment
string IPv6 the new IPv6 address (in <addr>/<prefix length> format)
string gateway the new gateway
string DNS the new DNS settings

Return Type: void

Possible Error Codes: CLUSTERING_ENABLED

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given PIF. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, PIF ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object
string key Key to remove

Return Type: void

RPC name: scan

Overview:

Scan for physical interfaces on a host and create PIF objects to represent them

Signature:

void scan (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host on which to scan

Return Type: void

RPC name: set_disallow_unplug

Overview:

Set whether unplugging the PIF is allowed

Signature:

void set_disallow_unplug (session ref session_id, PIF ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self Reference to the object
bool value New value to set

Return Type: void

Possible Error Codes: OTHER_OPERATION_IN_PROGRESS, CLUSTERING_ENABLED

RPC name: set_other_config

Overview:

Set the other_config field of the given PIF.

Signature:

void set_other_config (session ref session_id, PIF ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_primary_address_type

Overview:

Change the primary address type used by this PIF

Signature:

void set_primary_address_type (session ref session_id, PIF ref self, primary_address_type primary_address_type)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self the PIF object to reconfigure
primary_address_type primary_address_type Whether to prefer IPv4 or IPv6 connections

Return Type: void

RPC name: set_property

Overview:

Set the value of a property of the PIF

Signature:

void set_property (session ref session_id, PIF ref self, string name, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self The PIF
string name The property name
string value The property value

Return Type: void

RPC name: unplug

Overview:

Attempt to bring down a physical interface

Signature:

void unplug (session ref session_id, PIF ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref self the PIF object to unplug

Return Type: void

Possible Error Codes: HA_OPERATION_WOULD_BREAK_FAILOVER_PLAN, VIF_IN_USE, PIF_DOES_NOT_ALLOW_UNPLUG, PIF_HAS_FCOE_SR_IN_USE

Class: PIF_metrics

The metrics associated with a physical network interface

Fields for class: PIF_metrics

Field Type Qualifier Description
carrier bool RO/runtime Report if the PIF got a carrier or not
device_id string RO/runtime Report device ID
device_name string RO/runtime Report device name
duplex bool RO/runtime Full duplex capability of the link (if available)
io_read_kbs float RO/runtime Removed. Read bandwidth (KiB/s)
io_write_kbs float RO/runtime Removed. Write bandwidth (KiB/s)
last_updated datetime RO/runtime Time at which this information was last updated
other_config (string -> string) map RW additional configuration
pci_bus_path string RO/runtime PCI bus path of the pif (if available)
speed int RO/runtime Speed of the link (if available)
uuid string RO/runtime Unique identifier/object reference
vendor_id string RO/runtime Report vendor ID
vendor_name string RO/runtime Report vendor name

RPCs associated with class: PIF_metrics

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given PIF_metrics.

Signature:

void add_to_other_config (session ref session_id, PIF_metrics ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: get_all

Overview:

Return a list of all the PIF_metrics instances known to the system.

Signature:

PIF_metrics ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PIF_metrics references to PIF_metrics records for all PIF_metrics instances known to the system.

Signature:

(PIF_metrics ref -> PIF_metrics record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PIF_metrics instance with the specified UUID.

Signature:

PIF_metrics ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PIF_metrics ref

reference to the object

RPC name: get_carrier

Overview:

Get the carrier field of the given PIF_metrics.

Signature:

bool get_carrier (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: bool

value of the field

RPC name: get_device_id

Overview:

Get the device_id field of the given PIF_metrics.

Signature:

string get_device_id (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: string

value of the field

RPC name: get_device_name

Overview:

Get the device_name field of the given PIF_metrics.

Signature:

string get_device_name (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: string

value of the field

RPC name: get_duplex

Overview:

Get the duplex field of the given PIF_metrics.

Signature:

bool get_duplex (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: bool

value of the field

RPC name: get_io_read_kbs

This message is removed.

Overview:

Get the io/read_kbs field of the given PIF_metrics.

Signature:

float get_io_read_kbs (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: float

value of the field

RPC name: get_io_write_kbs

This message is removed.

Overview:

Get the io/write_kbs field of the given PIF_metrics.

Signature:

float get_io_write_kbs (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: float

value of the field

RPC name: get_last_updated

Overview:

Get the last_updated field of the given PIF_metrics.

Signature:

datetime get_last_updated (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: datetime

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given PIF_metrics.

Signature:

(string -> string) map get_other_config (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_pci_bus_path

Overview:

Get the pci_bus_path field of the given PIF_metrics.

Signature:

string get_pci_bus_path (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: string

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PIF_metrics.

Signature:

PIF_metrics record get_record (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: PIF_metrics record

all fields from the object

RPC name: get_speed

Overview:

Get the speed field of the given PIF_metrics.

Signature:

int get_speed (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: int

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PIF_metrics.

Signature:

string get_uuid (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: string

value of the field

RPC name: get_vendor_id

Overview:

Get the vendor_id field of the given PIF_metrics.

Signature:

string get_vendor_id (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: string

value of the field

RPC name: get_vendor_name

Overview:

Get the vendor_name field of the given PIF_metrics.

Signature:

string get_vendor_name (session ref session_id, PIF_metrics ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given PIF_metrics. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, PIF_metrics ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given PIF_metrics.

Signature:

void set_other_config (session ref session_id, PIF_metrics ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF_metrics ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: pool

Pool-wide information

Fields for class: pool

Field Type Qualifier Description
allowed_operations pool_allowed_operations set RO/runtime 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.
blobs (string -> blob ref) map RO/runtime Binary blobs associated with this pool
cpu_info (string -> string) map RO/runtime Details about the physical CPUs on the pool
crash_dump_SR SR ref RW The SR in which VDIs for crash dumps are created
current_operations (string -> pool_allowed_operations) map RO/runtime links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
default_SR SR ref RW Default SR for VDIs
guest_agent_config (string -> string) map RO/runtime Pool-wide guest agent configuration information
gui_config (string -> string) map RW gui-specific configuration for pool
ha_allow_overcommit bool RW If set to false then operations which would cause the Pool to become overcommitted will be blocked.
ha_cluster_stack string RO/runtime The HA cluster stack that is currently in use. Only valid when HA is enabled.
ha_configuration (string -> string) map RO/runtime The current HA configuration
ha_enabled bool RO/runtime true if HA is enabled on the pool, false otherwise
ha_host_failures_to_tolerate int RO/runtime Number of host failures to tolerate before the Pool is declared to be overcommitted
ha_overcommitted bool RO/runtime True if the Pool is considered to be overcommitted i.e. if there exist insufficient physical resources to tolerate the configured number of host failures
ha_plan_exists_for int RO/runtime Number of future host failures we have managed to find a plan for. Once this reaches zero any future host failures will cause the failure of protected VMs.
ha_statefiles string set RO/runtime HA statefile VDIs in use
health_check_config (string -> string) map RW Configuration for the automatic health check feature
igmp_snooping_enabled bool RO/runtime true if IGMP snooping is enabled in the pool, false otherwise.
live_patching_disabled bool RW The pool-wide flag to show if the live patching feauture is disabled or not.
master host ref RO/runtime The host that is pool master
metadata_VDIs VDI ref set RO/runtime The set of currently known metadata VDIs for this pool
name_description string RW Description
name_label string RW Short name
other_config (string -> string) map RW additional configuration
policy_no_vendor_device bool RW The pool-wide policy for clients on whether to use the vendor device or not on newly created VMs. This field will also be consulted if the 'has_vendor_device' field is not specified in the VM.create call.
redo_log_enabled bool RO/runtime true a redo-log is to be used other than when HA is enabled, false otherwise
redo_log_vdi VDI ref RO/runtime indicates the VDI to use for the redo-log other than when HA is enabled
restrictions (string -> string) map RO/runtime Pool-wide restrictions currently in effect
suspend_image_SR SR ref RW The SR in which VDIs for suspend images are created
tags string set RW user-specified tags for categorization purposes
uuid string RO/runtime Unique identifier/object reference
vswitch_controller string RO/runtime Deprecated. address of the vswitch controller
wlb_enabled bool RW true if workload balancing is enabled on the pool, false otherwise
wlb_url string RO/runtime Url for the configured workload balancing host
wlb_username string RO/runtime Username for accessing the workload balancing host
wlb_verify_cert bool RW true if communication with the WLB server should enforce SSL certificate verification.

RPCs associated with class: pool

RPC name: add_tags

Overview:

Add the given value to the tags field of the given pool. If the value is already in that Set, then do nothing.

Signature:

void add_tags (session ref session_id, pool ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string value New value to add

Return Type: void

RPC name: add_to_guest_agent_config

Overview:

Add a key-value pair to the pool-wide guest agent configuration

Signature:

void add_to_guest_agent_config (session ref session_id, pool ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self The pool
string key The key to add
string value The value to add

Return Type: void

RPC name: add_to_gui_config

Overview:

Add the given key-value pair to the gui_config field of the given pool.

Signature:

void add_to_gui_config (session ref session_id, pool ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: add_to_health_check_config

Overview:

Add the given key-value pair to the health_check_config field of the given pool.

Signature:

void add_to_health_check_config (session ref session_id, pool ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given pool.

Signature:

void add_to_other_config (session ref session_id, pool ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: apply_edition

Overview:

Apply an edition to all hosts in the pool

Signature:

void apply_edition (session ref session_id, pool ref self, string edition)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self Reference to the pool
string edition The requested edition

Return Type: void

RPC name: certificate_install

Overview:

Install an SSL certificate pool-wide.

Signature:

void certificate_install (session ref session_id, string name, string cert)

Arguments:

type name description
session ref session_id Reference to a valid session
string name A name to give the certificate
string cert The certificate

Return Type: void

RPC name: certificate_list

Overview:

List all installed SSL certificates.

Signature:

string set certificate_list (session ref session_id)

RPC name: certificate_sync

Overview:

Sync SSL certificates from master to slaves.

Signature:

void certificate_sync (session ref session_id)

RPC name: certificate_uninstall

Overview:

Remove an SSL certificate.

Signature:

void certificate_uninstall (session ref session_id, string name)

Arguments:

type name description
session ref session_id Reference to a valid session
string name The certificate name

Return Type: void

RPC name: create_new_blob

Overview:

Create a placeholder for a named binary blob of data that is associated with this pool

Signature:

blob ref create_new_blob (session ref session_id, pool ref pool, string name, string mime_type, bool public)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref pool The pool
string name The name associated with the blob
string mime_type The mime type for the data. Empty string translates to application/octet-stream
bool public True if the blob should be publicly available

Return Type: blob ref

The reference of the blob, needed for populating its data

RPC name: create_VLAN

Overview:

Create PIFs, mapping a network to the same physical interface/VLAN on each host. This call is deprecated: use Pool.create_VLAN_from_PIF instead.

Signature:

PIF ref set create_VLAN (session ref session_id, string device, network ref network, int VLAN)

Arguments:

type name description
session ref session_id Reference to a valid session
string device physical interface on which to create the VLAN interface
network ref network network to which this interface should be connected
int VLAN VLAN tag for the new interface

Return Type: PIF ref set

The references of the created PIF objects

Possible Error Codes: VLAN_TAG_INVALID

RPC name: create_VLAN_from_PIF

Overview:

Create a pool-wide VLAN by taking the PIF.

Signature:

PIF ref set create_VLAN_from_PIF (session ref session_id, PIF ref pif, network ref network, int VLAN)

Arguments:

type name description
session ref session_id Reference to a valid session
PIF ref pif physical interface on any particular host, that identifies the PIF on which to create the (pool-wide) VLAN interface
network ref network network to which this interface should be connected
int VLAN VLAN tag for the new interface

Return Type: PIF ref set

The references of the created PIF objects

Possible Error Codes: VLAN_TAG_INVALID

RPC name: crl_install

Overview:

Install an SSL certificate revocation list, pool-wide.

Signature:

void crl_install (session ref session_id, string name, string cert)

Arguments:

type name description
session ref session_id Reference to a valid session
string name A name to give the CRL
string cert The CRL

Return Type: void

RPC name: crl_list

Overview:

List all installed SSL certificate revocation lists.

Signature:

string set crl_list (session ref session_id)

RPC name: crl_uninstall

Overview:

Remove an SSL certificate revocation list.

Signature:

void crl_uninstall (session ref session_id, string name)

Arguments:

type name description
session ref session_id Reference to a valid session
string name The CRL name

Return Type: void

RPC name: deconfigure_wlb

Overview:

Permanently deconfigures workload balancing monitoring on this pool

Signature:

void deconfigure_wlb (session ref session_id)

RPC name: designate_new_master

Overview:

Perform an orderly handover of the role of master to the referenced host.

Signature:

void designate_new_master (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host who should become the new master

Return Type: void

RPC name: detect_nonhomogeneous_external_auth

Overview:

This call asynchronously detects if the external authentication configuration in any slave is different from that in the master and raises appropriate alerts

Signature:

void detect_nonhomogeneous_external_auth (session ref session_id, pool ref pool)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref pool The pool where to detect non-homogeneous external authentication configuration

Return Type: void

RPC name: disable_external_auth

Overview:

This call disables external authentication on all the hosts of the pool

Signature:

void disable_external_auth (session ref session_id, pool ref pool, (string -> string) map config)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref pool The pool whose external authentication should be disabled
(string -> string) map config Optional parameters as a list of key-values containing the configuration data

Return Type: void

RPC name: disable_ha

Overview:

Turn off High Availability mode

Signature:

void disable_ha (session ref session_id)

RPC name: disable_local_storage_caching

Overview:

This call disables pool-wide local storage caching

Signature:

void disable_local_storage_caching (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self Reference to the pool

Return Type: void

RPC name: disable_redo_log

Overview:

Disable the redo log if in use, unless HA is enabled.

Signature:

void disable_redo_log (session ref session_id)

RPC name: disable_ssl_legacy

Overview:

Sets ssl_legacy true on each host, pool-master last. See Host.ssl_legacy and Host.set_ssl_legacy.

Signature:

void disable_ssl_legacy (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self (ignored)

Return Type: void

RPC name: eject

Overview:

Instruct a pool master to eject a host from the pool

Signature:

void eject (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to eject

Return Type: void

RPC name: emergency_reset_master

Overview:

Instruct a slave already in a pool that the master has changed

Signature:

void emergency_reset_master (session ref session_id, string master_address)

Arguments:

type name description
session ref session_id Reference to a valid session
string master_address The hostname of the master

Return Type: void

RPC name: emergency_transition_to_master

Overview:

Instruct host that's currently a slave to transition to being master

Signature:

void emergency_transition_to_master (session ref session_id)

RPC name: enable_external_auth

Overview:

This call enables external authentication on all the hosts of the pool

Signature:

void enable_external_auth (session ref session_id, pool ref pool, (string -> string) map config, string service_name, string auth_type)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref pool The pool whose external authentication should be enabled
(string -> string) map config A list of key-values containing the configuration data
string service_name The name of the service
string auth_type The type of authentication (e.g. AD for Active Directory)

Return Type: void

RPC name: enable_ha

Overview:

Turn on High Availability mode

Signature:

void enable_ha (session ref session_id, SR ref set heartbeat_srs, (string -> string) map configuration)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref set heartbeat_srs Set of SRs to use for storage heartbeating
(string -> string) map configuration Detailed HA configuration to apply

Return Type: void

RPC name: enable_local_storage_caching

Overview:

This call attempts to enable pool-wide local storage caching

Signature:

void enable_local_storage_caching (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self Reference to the pool

Return Type: void

RPC name: enable_redo_log

Overview:

Enable the redo log on the given SR and start using it, unless HA is enabled.

Signature:

void enable_redo_log (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr SR to hold the redo log.

Return Type: void

RPC name: enable_ssl_legacy

Overview:

Sets ssl_legacy true on each host, pool-master last. See Host.ssl_legacy and Host.set_ssl_legacy.

Signature:

void enable_ssl_legacy (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self (ignored)

Return Type: void

RPC name: get_all

Overview:

Return a list of all the pools known to the system.

Signature:

pool ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of pool references to pool records for all pools known to the system.

Signature:

(pool ref -> pool record) map get_all_records (session ref session_id)

RPC name: get_allowed_operations

Overview:

Get the allowed_operations field of the given pool.

Signature:

pool_allowed_operations set get_allowed_operations (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: pool_allowed_operations set

value of the field

RPC name: get_blobs

Overview:

Get the blobs field of the given pool.

Signature:

(string -> blob ref) map get_blobs (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> blob ref) map

value of the field

RPC name: get_by_uuid

Overview:

Get a reference to the pool instance with the specified UUID.

Signature:

pool ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: pool ref

reference to the object

RPC name: get_cpu_info

Overview:

Get the cpu_info field of the given pool.

Signature:

(string -> string) map get_cpu_info (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_crash_dump_SR

Overview:

Get the crash_dump_SR field of the given pool.

Signature:

SR ref get_crash_dump_SR (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_current_operations

Overview:

Get the current_operations field of the given pool.

Signature:

(string -> pool_allowed_operations) map get_current_operations (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> pool_allowed_operations) map

value of the field

RPC name: get_default_SR

Overview:

Get the default_SR field of the given pool.

Signature:

SR ref get_default_SR (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_guest_agent_config

Overview:

Get the guest_agent_config field of the given pool.

Signature:

(string -> string) map get_guest_agent_config (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_gui_config

Overview:

Get the gui_config field of the given pool.

Signature:

(string -> string) map get_gui_config (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_ha_allow_overcommit

Overview:

Get the ha_allow_overcommit field of the given pool.

Signature:

bool get_ha_allow_overcommit (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_ha_cluster_stack

Overview:

Get the ha_cluster_stack field of the given pool.

Signature:

string get_ha_cluster_stack (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string

value of the field

RPC name: get_ha_configuration

Overview:

Get the ha_configuration field of the given pool.

Signature:

(string -> string) map get_ha_configuration (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_ha_enabled

Overview:

Get the ha_enabled field of the given pool.

Signature:

bool get_ha_enabled (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_ha_host_failures_to_tolerate

Overview:

Get the ha_host_failures_to_tolerate field of the given pool.

Signature:

int get_ha_host_failures_to_tolerate (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: int

value of the field

RPC name: get_ha_overcommitted

Overview:

Get the ha_overcommitted field of the given pool.

Signature:

bool get_ha_overcommitted (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_ha_plan_exists_for

Overview:

Get the ha_plan_exists_for field of the given pool.

Signature:

int get_ha_plan_exists_for (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: int

value of the field

RPC name: get_ha_statefiles

Overview:

Get the ha_statefiles field of the given pool.

Signature:

string set get_ha_statefiles (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string set

value of the field

RPC name: get_health_check_config

Overview:

Get the health_check_config field of the given pool.

Signature:

(string -> string) map get_health_check_config (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_igmp_snooping_enabled

Overview:

Get the igmp_snooping_enabled field of the given pool.

Signature:

bool get_igmp_snooping_enabled (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_license_state

Overview:

This call returns the license state for the pool

Signature:

(string -> string) map get_license_state (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self Reference to the pool

Return Type: (string -> string) map

The pool's license state

RPC name: get_live_patching_disabled

Overview:

Get the live_patching_disabled field of the given pool.

Signature:

bool get_live_patching_disabled (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_master

Overview:

Get the master field of the given pool.

Signature:

host ref get_master (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_metadata_VDIs

Overview:

Get the metadata_VDIs field of the given pool.

Signature:

VDI ref set get_metadata_VDIs (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: VDI ref set

value of the field

RPC name: get_name_description

Overview:

Get the name_description field of the given pool.

Signature:

string get_name_description (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name_label field of the given pool.

Signature:

string get_name_label (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given pool.

Signature:

(string -> string) map get_other_config (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_policy_no_vendor_device

Overview:

Get the policy_no_vendor_device field of the given pool.

Signature:

bool get_policy_no_vendor_device (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given pool.

Signature:

pool record get_record (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: pool record

all fields from the object

RPC name: get_redo_log_enabled

Overview:

Get the redo_log_enabled field of the given pool.

Signature:

bool get_redo_log_enabled (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_redo_log_vdi

Overview:

Get the redo_log_vdi field of the given pool.

Signature:

VDI ref get_redo_log_vdi (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: VDI ref

value of the field

RPC name: get_restrictions

Overview:

Get the restrictions field of the given pool.

Signature:

(string -> string) map get_restrictions (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_suspend_image_SR

Overview:

Get the suspend_image_SR field of the given pool.

Signature:

SR ref get_suspend_image_SR (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_tags

Overview:

Get the tags field of the given pool.

Signature:

string set get_tags (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given pool.

Signature:

string get_uuid (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string

value of the field

RPC name: get_vswitch_controller

This message is deprecated.

Overview:

Get the vswitch_controller field of the given pool.

Signature:

string get_vswitch_controller (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string

value of the field

RPC name: get_wlb_enabled

Overview:

Get the wlb_enabled field of the given pool.

Signature:

bool get_wlb_enabled (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: get_wlb_url

Overview:

Get the wlb_url field of the given pool.

Signature:

string get_wlb_url (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string

value of the field

RPC name: get_wlb_username

Overview:

Get the wlb_username field of the given pool.

Signature:

string get_wlb_username (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: string

value of the field

RPC name: get_wlb_verify_cert

Overview:

Get the wlb_verify_cert field of the given pool.

Signature:

bool get_wlb_verify_cert (session ref session_id, pool ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object

Return Type: bool

value of the field

RPC name: ha_compute_hypothetical_max_host_failures_to_tolerate

Overview:

Returns the maximum number of host failures we could tolerate before we would be unable to restart the provided VMs

Signature:

int ha_compute_hypothetical_max_host_failures_to_tolerate (session ref session_id, (VM ref -> string) map configuration)

Arguments:

type name description
session ref session_id Reference to a valid session
(VM ref -> string) map configuration Map of protected VM reference to restart priority

Return Type: int

maximum value for ha_host_failures_to_tolerate given provided configuration

RPC name: ha_compute_max_host_failures_to_tolerate

Overview:

Returns the maximum number of host failures we could tolerate before we would be unable to restart configured VMs

Signature:

int ha_compute_max_host_failures_to_tolerate (session ref session_id)

RPC name: ha_compute_vm_failover_plan

Overview:

Return a VM failover plan assuming a given subset of hosts fail

Signature:

(VM ref -> (string -> string) map) map ha_compute_vm_failover_plan (session ref session_id, host ref set failed_hosts, VM ref set failed_vms)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref set failed_hosts The set of hosts to assume have failed
VM ref set failed_vms The set of VMs to restart

Return Type: (VM ref -> (string -> string) map) map

VM failover plan: a map of VM to host to restart the host on

RPC name: ha_failover_plan_exists

Overview:

Returns true if a VM failover plan exists for up to 'n' host failures

Signature:

bool ha_failover_plan_exists (session ref session_id, int n)

Arguments:

type name description
session ref session_id Reference to a valid session
int n The number of host failures to plan for

Return Type: bool

true if a failover plan exists for the supplied number of host failures

RPC name: ha_prevent_restarts_for

Overview:

When this call returns the VM restart logic will not run for the requested number of seconds. If the argument is zero then the restart thread is immediately unblocked

Signature:

void ha_prevent_restarts_for (session ref session_id, int seconds)

Arguments:

type name description
session ref session_id Reference to a valid session
int seconds The number of seconds to block the restart thread for

Return Type: void

RPC name: has_extension

Overview:

Return true if the extension is available on the pool

Signature:

bool has_extension (session ref session_id, pool ref self, string name)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self The pool
string name The name of the API call

Return Type: bool

True if the extension exists, false otherwise

RPC name: initialize_wlb

Overview:

Initializes workload balancing monitoring on this pool with the specified wlb server

Signature:

void initialize_wlb (session ref session_id, string wlb_url, string wlb_username, string wlb_password, string xenserver_username, string xenserver_password)

Arguments:

type name description
session ref session_id Reference to a valid session
string wlb_url The ip address and port to use when accessing the wlb server
string wlb_username The username used to authenticate with the wlb server
string wlb_password The password used to authenticate with the wlb server
string xenserver_username The username used by the wlb server to authenticate with the xenserver
string xenserver_password The password used by the wlb server to authenticate with the xenserver

Return Type: void

RPC name: join

Overview:

Instruct host to join a new pool

Signature:

void join (session ref session_id, string master_address, string master_username, string master_password)

Arguments:

type name description
session ref session_id Reference to a valid session
string master_address The hostname of the master of the pool to join
string master_username The username of the master (for initial authentication)
string master_password The password for the master (for initial authentication)

Return Type: void

Possible Error Codes: JOINING_HOST_CANNOT_CONTAIN_SHARED_SRS

RPC name: join_force

Overview:

Instruct host to join a new pool

Signature:

void join_force (session ref session_id, string master_address, string master_username, string master_password)

Arguments:

type name description
session ref session_id Reference to a valid session
string master_address The hostname of the master of the pool to join
string master_username The username of the master (for initial authentication)
string master_password The password for the master (for initial authentication)

Return Type: void

RPC name: management_reconfigure

Overview:

Reconfigure the management network interface for all Hosts in the Pool

Signature:

void management_reconfigure (session ref session_id, network ref network)

Arguments:

type name description
session ref session_id Reference to a valid session
network ref network The network

Return Type: void

Possible Error Codes: HA_IS_ENABLED, PIF_NOT_PRESENT, CANNOT_PLUG_BOND_SLAVE, PIF_INCOMPATIBLE_PRIMARY_ADDRESS_TYPE, PIF_HAS_NO_NETWORK_CONFIGURATION, PIF_HAS_NO_V6_NETWORK_CONFIGURATION

RPC name: recover_slaves

Overview:

Instruct a pool master, M, to try and contact its slaves and, if slaves are in emergency mode, reset their master address to M.

Signature:

host ref set recover_slaves (session ref session_id)

RPC name: remove_from_guest_agent_config

Overview:

Remove a key-value pair from the pool-wide guest agent configuration

Signature:

void remove_from_guest_agent_config (session ref session_id, pool ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self The pool
string key The key to remove

Return Type: void

RPC name: remove_from_gui_config

Overview:

Remove the given key and its corresponding value from the gui_config field of the given pool. If the key is not in that Map, then do nothing.

Signature:

void remove_from_gui_config (session ref session_id, pool ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_from_health_check_config

Overview:

Remove the given key and its corresponding value from the health_check_config field of the given pool. If the key is not in that Map, then do nothing.

Signature:

void remove_from_health_check_config (session ref session_id, pool ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given pool. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, pool ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_tags

Overview:

Remove the given value from the tags field of the given pool. If the value is not in that Set, then do nothing.

Signature:

void remove_tags (session ref session_id, pool ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string value Value to remove

Return Type: void

RPC name: retrieve_wlb_configuration

Overview:

Retrieves the pool optimization criteria from the workload balancing server

Signature:

(string -> string) map retrieve_wlb_configuration (session ref session_id)

RPC name: retrieve_wlb_recommendations

Overview:

Retrieves vm migrate recommendations for the pool from the workload balancing server

Signature:

(VM ref -> string set) map retrieve_wlb_recommendations (session ref session_id)

RPC name: send_test_post

Overview:

Send the given body to the given host and port, using HTTPS, and print the response. This is used for debugging the SSL layer.

Signature:

string send_test_post (session ref session_id, string host, int port, string body)

Arguments:

type name description
session ref session_id Reference to a valid session
string host
int port
string body

Return Type: string

The response

RPC name: send_wlb_configuration

Overview:

Sets the pool optimization criteria for the workload balancing server

Signature:

void send_wlb_configuration (session ref session_id, (string -> string) map config)

Arguments:

type name description
session ref session_id Reference to a valid session
(string -> string) map config The configuration to use in optimizing this pool

Return Type: void

RPC name: set_crash_dump_SR

Overview:

Set the crash_dump_SR field of the given pool.

Signature:

void set_crash_dump_SR (session ref session_id, pool ref self, SR ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
SR ref value New value to set

Return Type: void

RPC name: set_default_SR

Overview:

Set the default_SR field of the given pool.

Signature:

void set_default_SR (session ref session_id, pool ref self, SR ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
SR ref value New value to set

Return Type: void

RPC name: set_gui_config

Overview:

Set the gui_config field of the given pool.

Signature:

void set_gui_config (session ref session_id, pool ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_ha_allow_overcommit

Overview:

Set the ha_allow_overcommit field of the given pool.

Signature:

void set_ha_allow_overcommit (session ref session_id, pool ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
bool value New value to set

Return Type: void

RPC name: set_ha_host_failures_to_tolerate

Overview:

Set the maximum number of host failures to consider in the HA VM restart planner

Signature:

void set_ha_host_failures_to_tolerate (session ref session_id, pool ref self, int value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self The pool
int value New number of host failures to consider

Return Type: void

RPC name: set_health_check_config

Overview:

Set the health_check_config field of the given pool.

Signature:

void set_health_check_config (session ref session_id, pool ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_igmp_snooping_enabled

Overview:

Enable or disable IGMP Snooping on the pool.

Signature:

void set_igmp_snooping_enabled (session ref session_id, pool ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self The pool
bool value Enable or disable IGMP Snooping on the pool

Return Type: void

RPC name: set_live_patching_disabled

Overview:

Set the live_patching_disabled field of the given pool.

Signature:

void set_live_patching_disabled (session ref session_id, pool ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
bool value New value to set

Return Type: void

RPC name: set_name_description

Overview:

Set the name_description field of the given pool.

Signature:

void set_name_description (session ref session_id, pool ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_name_label

Overview:

Set the name_label field of the given pool.

Signature:

void set_name_label (session ref session_id, pool ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given pool.

Signature:

void set_other_config (session ref session_id, pool ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_policy_no_vendor_device

Overview:

Set the policy_no_vendor_device field of the given pool.

Signature:

void set_policy_no_vendor_device (session ref session_id, pool ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
bool value New value to set

Return Type: void

RPC name: set_suspend_image_SR

Overview:

Set the suspend_image_SR field of the given pool.

Signature:

void set_suspend_image_SR (session ref session_id, pool ref self, SR ref value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
SR ref value New value to set

Return Type: void

RPC name: set_tags

Overview:

Set the tags field of the given pool.

Signature:

void set_tags (session ref session_id, pool ref self, string set value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
string set value New value to set

Return Type: void

RPC name: set_vswitch_controller

This message is deprecated.

Overview:

Set the IP address of the vswitch controller.

Signature:

void set_vswitch_controller (session ref session_id, string address)

Arguments:

type name description
session ref session_id Reference to a valid session
string address IP address of the vswitch controller.

Return Type: void

RPC name: set_wlb_enabled

Overview:

Set the wlb_enabled field of the given pool.

Signature:

void set_wlb_enabled (session ref session_id, pool ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
bool value New value to set

Return Type: void

RPC name: set_wlb_verify_cert

Overview:

Set the wlb_verify_cert field of the given pool.

Signature:

void set_wlb_verify_cert (session ref session_id, pool ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self reference to the object
bool value New value to set

Return Type: void

RPC name: sync_database

Overview:

Forcibly synchronise the database now

Signature:

void sync_database (session ref session_id)

RPC name: test_archive_target

Overview:

This call tests if a location is valid

Signature:

string test_archive_target (session ref session_id, pool ref self, (string -> string) map config)

Arguments:

type name description
session ref session_id Reference to a valid session
pool ref self Reference to the pool
(string -> string) map config Location config settings to test

Return Type: string

An XMLRPC result

Class: pool_patch

This class is deprecated.

Pool-wide patches

Fields for class: pool_patch

Field Type Qualifier Description
after_apply_guidance after_apply_guidance set RO/runtime Deprecated. What the client should do after this patch has been applied.
host_patches host_patch ref set RO/runtime Deprecated. This hosts this patch is applied to.
name_description string RO/constructor Deprecated. a notes field containing human-readable description
name_label string RO/constructor Deprecated. a human-readable name
other_config (string -> string) map RW Deprecated. additional configuration
pool_applied bool RO/runtime Deprecated. This patch should be applied across the entire pool
pool_update pool_update ref RO/constructor Deprecated. A reference to the associated pool_update object
size int RO/runtime Deprecated. Size of the patch
uuid string RO/runtime Deprecated. Unique identifier/object reference
version string RO/constructor Deprecated. Patch version number

RPCs associated with class: pool_patch

RPC name: add_to_other_config

This message is deprecated.

Overview:

Add the given key-value pair to the other_config field of the given pool_patch.

Signature:

void add_to_other_config (session ref session_id, pool_patch ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: apply

This message is deprecated.

Overview:

Apply the selected patch to a host and return its output

Signature:

string apply (session ref session_id, pool_patch ref self, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self The patch to apply
host ref host The host to apply the patch too

Return Type: string

the output of the patch application process

RPC name: clean

This message is deprecated.

Overview:

Removes the patch's files from the server

Signature:

void clean (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self The patch to clean up

Return Type: void

RPC name: clean_on_host

This message is deprecated.

Overview:

Removes the patch's files from the specified host

Signature:

void clean_on_host (session ref session_id, pool_patch ref self, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self The patch to clean up
host ref host The host on which to clean the patch

Return Type: void

RPC name: destroy

This message is deprecated.

Overview:

Removes the patch's files from all hosts in the pool, and removes the database entries. Only works on unapplied patches.

Signature:

void destroy (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self The patch to destroy

Return Type: void

RPC name: get_after_apply_guidance

This message is deprecated.

Overview:

Get the after_apply_guidance field of the given pool_patch.

Signature:

after_apply_guidance set get_after_apply_guidance (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: after_apply_guidance set

value of the field

RPC name: get_all

This message is deprecated.

Overview:

Return a list of all the pool_patchs known to the system.

Signature:

pool_patch ref set get_all (session ref session_id)

RPC name: get_all_records

This message is deprecated.

Overview:

Return a map of pool_patch references to pool_patch records for all pool_patchs known to the system.

Signature:

(pool_patch ref -> pool_patch record) map get_all_records (session ref session_id)

RPC name: get_by_name_label

This message is deprecated.

Overview:

Get all the pool_patch instances with the given label.

Signature:

pool_patch ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: pool_patch ref set

references to objects with matching names

RPC name: get_by_uuid

This message is deprecated.

Overview:

Get a reference to the pool_patch instance with the specified UUID.

Signature:

pool_patch ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: pool_patch ref

reference to the object

RPC name: get_host_patches

This message is deprecated.

Overview:

Get the host_patches field of the given pool_patch.

Signature:

host_patch ref set get_host_patches (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: host_patch ref set

value of the field

RPC name: get_name_description

This message is deprecated.

Overview:

Get the name/description field of the given pool_patch.

Signature:

string get_name_description (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

This message is deprecated.

Overview:

Get the name/label field of the given pool_patch.

Signature:

string get_name_label (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

This message is deprecated.

Overview:

Get the other_config field of the given pool_patch.

Signature:

(string -> string) map get_other_config (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_pool_applied

This message is deprecated.

Overview:

Get the pool_applied field of the given pool_patch.

Signature:

bool get_pool_applied (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: bool

value of the field

RPC name: get_pool_update

This message is deprecated.

Overview:

Get the pool_update field of the given pool_patch.

Signature:

pool_update ref get_pool_update (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: pool_update ref

value of the field

RPC name: get_record

This message is deprecated.

Overview:

Get a record containing the current state of the given pool_patch.

Signature:

pool_patch record get_record (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: pool_patch record

all fields from the object

RPC name: get_size

This message is deprecated.

Overview:

Get the size field of the given pool_patch.

Signature:

int get_size (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: int

value of the field

RPC name: get_uuid

This message is deprecated.

Overview:

Get the uuid field of the given pool_patch.

Signature:

string get_uuid (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: string

value of the field

RPC name: get_version

This message is deprecated.

Overview:

Get the version field of the given pool_patch.

Signature:

string get_version (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object

Return Type: string

value of the field

RPC name: pool_apply

This message is deprecated.

Overview:

Apply the selected patch to all hosts in the pool and return a map of host_ref -> patch output

Signature:

void pool_apply (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self The patch to apply

Return Type: void

RPC name: pool_clean

This message is deprecated.

Overview:

Removes the patch's files from all hosts in the pool, but does not remove the database entries

Signature:

void pool_clean (session ref session_id, pool_patch ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self The patch to clean up

Return Type: void

RPC name: precheck

This message is deprecated.

Overview:

Execute the precheck stage of the selected patch on a host and return its output

Signature:

string precheck (session ref session_id, pool_patch ref self, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self The patch whose prechecks will be run
host ref host The host to run the prechecks on

Return Type: string

the output of the patch prechecks

RPC name: remove_from_other_config

This message is deprecated.

Overview:

Remove the given key and its corresponding value from the other_config field of the given pool_patch. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, pool_patch ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

This message is deprecated.

Overview:

Set the other_config field of the given pool_patch.

Signature:

void set_other_config (session ref session_id, pool_patch ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_patch ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: pool_update

Pool-wide updates to the host software

Fields for class: pool_update

Field Type Qualifier Description
after_apply_guidance update_after_apply_guidance set RO/constructor What the client should do after this update has been applied.
enforce_homogeneity bool RO/constructor Flag - if true, all hosts in a pool must apply this update
hosts host ref set RO/runtime The hosts that have applied this update.
installation_size int RO/constructor Size of the update in bytes
key string RO/constructor GPG key of the update
name_description string RO/constructor a notes field containing human-readable description
name_label string RO/constructor a human-readable name
other_config (string -> string) map RW additional configuration
uuid string RO/runtime Unique identifier/object reference
vdi VDI ref RO/constructor VDI the update was uploaded to
version string RO/constructor Update version number

RPCs associated with class: pool_update

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given pool_update.

Signature:

void add_to_other_config (session ref session_id, pool_update ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: apply

Overview:

Apply the selected update to a host

Signature:

void apply (session ref session_id, pool_update ref self, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self The update to apply
host ref host The host to apply the update to.

Return Type: void

RPC name: destroy

Overview:

Removes the database entry. Only works on unapplied update.

Signature:

void destroy (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self The update to destroy

Return Type: void

RPC name: get_after_apply_guidance

Overview:

Get the after_apply_guidance field of the given pool_update.

Signature:

update_after_apply_guidance set get_after_apply_guidance (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: update_after_apply_guidance set

value of the field

RPC name: get_all

Overview:

Return a list of all the pool_updates known to the system.

Signature:

pool_update ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of pool_update references to pool_update records for all pool_updates known to the system.

Signature:

(pool_update ref -> pool_update record) map get_all_records (session ref session_id)

RPC name: get_by_name_label

Overview:

Get all the pool_update instances with the given label.

Signature:

pool_update ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: pool_update ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the pool_update instance with the specified UUID.

Signature:

pool_update ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: pool_update ref

reference to the object

RPC name: get_enforce_homogeneity

Overview:

Get the enforce_homogeneity field of the given pool_update.

Signature:

bool get_enforce_homogeneity (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: bool

value of the field

RPC name: get_hosts

Overview:

Get the hosts field of the given pool_update.

Signature:

host ref set get_hosts (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: host ref set

value of the field

RPC name: get_installation_size

Overview:

Get the installation_size field of the given pool_update.

Signature:

int get_installation_size (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: int

value of the field

RPC name: get_key

Overview:

Get the key field of the given pool_update.

Signature:

string get_key (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given pool_update.

Signature:

string get_name_description (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given pool_update.

Signature:

string get_name_label (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given pool_update.

Signature:

(string -> string) map get_other_config (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given pool_update.

Signature:

pool_update record get_record (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: pool_update record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given pool_update.

Signature:

string get_uuid (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: string

value of the field

RPC name: get_vdi

Overview:

Get the vdi field of the given pool_update.

Signature:

VDI ref get_vdi (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: VDI ref

value of the field

RPC name: get_version

Overview:

Get the version field of the given pool_update.

Signature:

string get_version (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object

Return Type: string

value of the field

RPC name: introduce

Overview:

Introduce update VDI

Signature:

pool_update ref introduce (session ref session_id, VDI ref vdi)

Arguments:

type name description
session ref session_id Reference to a valid session
VDI ref vdi The VDI which contains a software update.

Return Type: pool_update ref

the introduced pool update

RPC name: pool_apply

Overview:

Apply the selected update to all hosts in the pool

Signature:

void pool_apply (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self The update to apply

Return Type: void

RPC name: pool_clean

Overview:

Removes the update's files from all hosts in the pool, but does not revert the update

Signature:

void pool_clean (session ref session_id, pool_update ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self The update to clean up

Return Type: void

RPC name: precheck

Overview:

Execute the precheck stage of the selected update on a host

Signature:

livepatch_status precheck (session ref session_id, pool_update ref self, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self The update whose prechecks will be run
host ref host The host to run the prechecks on.

Return Type: livepatch_status

The precheck pool update

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given pool_update. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, pool_update ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given pool_update.

Signature:

void set_other_config (session ref session_id, pool_update ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
pool_update ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: probe_result

A set of properties that describe one result element of SR.probe. Result elements and properties can change dynamically based on changes to the the SR.probe input-parameters or the target.

Fields for class: probe_result

Field Type Qualifier Description
complete bool RO/runtime True if this configuration is complete and can be used to call SR.create. False if it requires further iterative calls to SR.probe, to potentially narrow down on a configuration that can be used.
configuration (string -> string) map RO/runtime Plugin-specific configuration which describes where and how to locate the storage repository. This may include the physical block device name, a remote NFS server and path or an RBD storage pool.
extra_info (string -> string) map RO/runtime Additional plugin-specific information about this configuration, that might be of use for an API user. This can for example include the LUN or the WWPN.
sr sr_stat record option RO/runtime Existing SR found for this configuration

RPCs associated with class: probe_result

Class probe_result has no additional RPCs associated with it.

Class: PUSB

A physical USB device

Fields for class: PUSB

Field Type Qualifier Description
description string RO/constructor USB device description
host host ref RO/constructor Physical machine that owns the USB device
other_config (string -> string) map RW additional configuration
passthrough_enabled bool RO/runtime enabled for passthrough
path string RO/constructor port path of USB device
product_desc string RO/constructor product description of the USB device
product_id string RO/constructor product id of the USB device
serial string RO/constructor serial of the USB device
USB_group USB_group ref RO/constructor USB group the PUSB is contained in
uuid string RO/runtime Unique identifier/object reference
vendor_desc string RO/constructor vendor description of the USB device
vendor_id string RO/constructor vendor id of the USB device
version string RO/constructor USB device version

RPCs associated with class: PUSB

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given PUSB.

Signature:

void add_to_other_config (session ref session_id, PUSB ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: get_all

Overview:

Return a list of all the PUSBs known to the system.

Signature:

PUSB ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PUSB references to PUSB records for all PUSBs known to the system.

Signature:

(PUSB ref -> PUSB record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PUSB instance with the specified UUID.

Signature:

PUSB ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PUSB ref

reference to the object

RPC name: get_description

Overview:

Get the description field of the given PUSB.

Signature:

string get_description (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_host

Overview:

Get the host field of the given PUSB.

Signature:

host ref get_host (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given PUSB.

Signature:

(string -> string) map get_other_config (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_passthrough_enabled

Overview:

Get the passthrough_enabled field of the given PUSB.

Signature:

bool get_passthrough_enabled (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: bool

value of the field

RPC name: get_path

Overview:

Get the path field of the given PUSB.

Signature:

string get_path (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_product_desc

Overview:

Get the product_desc field of the given PUSB.

Signature:

string get_product_desc (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_product_id

Overview:

Get the product_id field of the given PUSB.

Signature:

string get_product_id (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PUSB.

Signature:

PUSB record get_record (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: PUSB record

all fields from the object

RPC name: get_serial

Overview:

Get the serial field of the given PUSB.

Signature:

string get_serial (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_USB_group

Overview:

Get the USB_group field of the given PUSB.

Signature:

USB_group ref get_USB_group (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: USB_group ref

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PUSB.

Signature:

string get_uuid (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_vendor_desc

Overview:

Get the vendor_desc field of the given PUSB.

Signature:

string get_vendor_desc (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_vendor_id

Overview:

Get the vendor_id field of the given PUSB.

Signature:

string get_vendor_id (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: get_version

Overview:

Get the version field of the given PUSB.

Signature:

string get_version (session ref session_id, PUSB ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given PUSB. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, PUSB ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object
string key Key to remove

Return Type: void

RPC name: scan

Overview:

Signature:

void scan (session ref session_id, host ref host)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given PUSB.

Signature:

void set_other_config (session ref session_id, PUSB ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_passthrough_enabled

Overview:

Signature:

void set_passthrough_enabled (session ref session_id, PUSB ref self, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
PUSB ref self this PUSB
bool value passthrough is enabled when true and disabled with false

Return Type: void

Class: PVS_cache_storage

Describes the storage that is available to a PVS site for caching purposes

Fields for class: PVS_cache_storage

Field Type Qualifier Description
host host ref RO/constructor The host on which this object defines PVS cache storage
site PVS_site ref RO/constructor The PVS_site for which this object defines the storage
size int RO/constructor The size of the cache VDI (in bytes)
SR SR ref RO/constructor SR providing storage for the PVS cache
uuid string RO/runtime Unique identifier/object reference
VDI VDI ref RO/runtime The VDI used for caching

RPCs associated with class: PVS_cache_storage

RPC name: create

Overview:

Create a new PVS_cache_storage instance, and return its handle.

Signature:

PVS_cache_storage ref create (session ref session_id, PVS_cache_storage record args)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage record args All constructor arguments

Return Type: PVS_cache_storage ref

reference to the newly created object

RPC name: destroy

Overview:

Destroy the specified PVS_cache_storage instance.

Signature:

void destroy (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: void

RPC name: get_all

Overview:

Return a list of all the PVS_cache_storages known to the system.

Signature:

PVS_cache_storage ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PVS_cache_storage references to PVS_cache_storage records for all PVS_cache_storages known to the system.

Signature:

(PVS_cache_storage ref -> PVS_cache_storage record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PVS_cache_storage instance with the specified UUID.

Signature:

PVS_cache_storage ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PVS_cache_storage ref

reference to the object

RPC name: get_host

Overview:

Get the host field of the given PVS_cache_storage.

Signature:

host ref get_host (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PVS_cache_storage.

Signature:

PVS_cache_storage record get_record (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: PVS_cache_storage record

all fields from the object

RPC name: get_site

Overview:

Get the site field of the given PVS_cache_storage.

Signature:

PVS_site ref get_site (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: PVS_site ref

value of the field

RPC name: get_size

Overview:

Get the size field of the given PVS_cache_storage.

Signature:

int get_size (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: int

value of the field

RPC name: get_SR

Overview:

Get the SR field of the given PVS_cache_storage.

Signature:

SR ref get_SR (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: SR ref

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PVS_cache_storage.

Signature:

string get_uuid (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: string

value of the field

RPC name: get_VDI

Overview:

Get the VDI field of the given PVS_cache_storage.

Signature:

VDI ref get_VDI (session ref session_id, PVS_cache_storage ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_cache_storage ref self reference to the object

Return Type: VDI ref

value of the field

Class: PVS_proxy

a proxy connects a VM/VIF with a PVS site

Fields for class: PVS_proxy

Field Type Qualifier Description
currently_attached bool RO/runtime true = VM is currently proxied
site PVS_site ref RO/constructor PVS site this proxy is part of
status pvs_proxy_status RO/runtime The run-time status of the proxy
uuid string RO/runtime Unique identifier/object reference
VIF VIF ref RO/constructor VIF of the VM using the proxy

RPCs associated with class: PVS_proxy

RPC name: create

Overview:

Configure a VM/VIF to use a PVS proxy

Signature:

PVS_proxy ref create (session ref session_id, PVS_site ref site, VIF ref VIF)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref site PVS site that we proxy for
VIF ref VIF VIF for the VM that needs to be proxied

Return Type: PVS_proxy ref

the new PVS proxy

RPC name: destroy

Overview:

remove (or switch off) a PVS proxy for this VM

Signature:

void destroy (session ref session_id, PVS_proxy ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_proxy ref self this PVS proxy

Return Type: void

RPC name: get_all

Overview:

Return a list of all the PVS_proxys known to the system.

Signature:

PVS_proxy ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PVS_proxy references to PVS_proxy records for all PVS_proxys known to the system.

Signature:

(PVS_proxy ref -> PVS_proxy record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PVS_proxy instance with the specified UUID.

Signature:

PVS_proxy ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PVS_proxy ref

reference to the object

RPC name: get_currently_attached

Overview:

Get the currently_attached field of the given PVS_proxy.

Signature:

bool get_currently_attached (session ref session_id, PVS_proxy ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_proxy ref self reference to the object

Return Type: bool

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PVS_proxy.

Signature:

PVS_proxy record get_record (session ref session_id, PVS_proxy ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_proxy ref self reference to the object

Return Type: PVS_proxy record

all fields from the object

RPC name: get_site

Overview:

Get the site field of the given PVS_proxy.

Signature:

PVS_site ref get_site (session ref session_id, PVS_proxy ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_proxy ref self reference to the object

Return Type: PVS_site ref

value of the field

RPC name: get_status

Overview:

Get the status field of the given PVS_proxy.

Signature:

pvs_proxy_status get_status (session ref session_id, PVS_proxy ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_proxy ref self reference to the object

Return Type: pvs_proxy_status

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PVS_proxy.

Signature:

string get_uuid (session ref session_id, PVS_proxy ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_proxy ref self reference to the object

Return Type: string

value of the field

RPC name: get_VIF

Overview:

Get the VIF field of the given PVS_proxy.

Signature:

VIF ref get_VIF (session ref session_id, PVS_proxy ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_proxy ref self reference to the object

Return Type: VIF ref

value of the field

Class: PVS_server

individual machine serving provisioning (block) data

Fields for class: PVS_server

Field Type Qualifier Description
addresses string set RO/constructor IPv4 addresses of this server
first_port int RO/constructor First UDP port accepted by this server
last_port int RO/constructor Last UDP port accepted by this server
site PVS_site ref RO/constructor PVS site this server is part of
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: PVS_server

RPC name: forget

Overview:

forget a PVS server

Signature:

void forget (session ref session_id, PVS_server ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_server ref self this PVS server

Return Type: void

RPC name: get_addresses

Overview:

Get the addresses field of the given PVS_server.

Signature:

string set get_addresses (session ref session_id, PVS_server ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_server ref self reference to the object

Return Type: string set

value of the field

RPC name: get_all

Overview:

Return a list of all the PVS_servers known to the system.

Signature:

PVS_server ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PVS_server references to PVS_server records for all PVS_servers known to the system.

Signature:

(PVS_server ref -> PVS_server record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the PVS_server instance with the specified UUID.

Signature:

PVS_server ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PVS_server ref

reference to the object

RPC name: get_first_port

Overview:

Get the first_port field of the given PVS_server.

Signature:

int get_first_port (session ref session_id, PVS_server ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_server ref self reference to the object

Return Type: int

value of the field

RPC name: get_last_port

Overview:

Get the last_port field of the given PVS_server.

Signature:

int get_last_port (session ref session_id, PVS_server ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_server ref self reference to the object

Return Type: int

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PVS_server.

Signature:

PVS_server record get_record (session ref session_id, PVS_server ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_server ref self reference to the object

Return Type: PVS_server record

all fields from the object

RPC name: get_site

Overview:

Get the site field of the given PVS_server.

Signature:

PVS_site ref get_site (session ref session_id, PVS_server ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_server ref self reference to the object

Return Type: PVS_site ref

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PVS_server.

Signature:

string get_uuid (session ref session_id, PVS_server ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_server ref self reference to the object

Return Type: string

value of the field

RPC name: introduce

Overview:

introduce new PVS server

Signature:

PVS_server ref introduce (session ref session_id, string set addresses, int first_port, int last_port, PVS_site ref site)

Arguments:

type name description
session ref session_id Reference to a valid session
string set addresses IPv4 addresses of the server
int first_port first UDP port accepted by this server
int last_port last UDP port accepted by this server
PVS_site ref site PVS site this server is a part of

Return Type: PVS_server ref

the new PVS server

Class: PVS_site

machines serving blocks of data for provisioning VMs

Fields for class: PVS_site

Field Type Qualifier Description
cache_storage PVS_cache_storage ref set RO/runtime The SR used by PVS proxy for the cache
name_description string RW a notes field containing human-readable description
name_label string RW a human-readable name
proxies PVS_proxy ref set RO/runtime The set of proxies associated with the site
PVS_uuid string RO/constructor Unique identifier of the PVS site, as configured in PVS
servers PVS_server ref set RO/runtime The set of PVS servers in the site
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: PVS_site

RPC name: forget

Overview:

Remove a site's meta data

Signature:

void forget (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self this PVS site

Return Type: void

Possible Error Codes: PVS_SITE_CONTAINS_RUNNING_PROXIES, PVS_SITE_CONTAINS_SERVERS

RPC name: get_all

Overview:

Return a list of all the PVS_sites known to the system.

Signature:

PVS_site ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of PVS_site references to PVS_site records for all PVS_sites known to the system.

Signature:

(PVS_site ref -> PVS_site record) map get_all_records (session ref session_id)

RPC name: get_by_name_label

Overview:

Get all the PVS_site instances with the given label.

Signature:

PVS_site ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: PVS_site ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the PVS_site instance with the specified UUID.

Signature:

PVS_site ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: PVS_site ref

reference to the object

RPC name: get_cache_storage

Overview:

Get the cache_storage field of the given PVS_site.

Signature:

PVS_cache_storage ref set get_cache_storage (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: PVS_cache_storage ref set

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given PVS_site.

Signature:

string get_name_description (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given PVS_site.

Signature:

string get_name_label (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: string

value of the field

RPC name: get_proxies

Overview:

Get the proxies field of the given PVS_site.

Signature:

PVS_proxy ref set get_proxies (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: PVS_proxy ref set

value of the field

RPC name: get_PVS_uuid

Overview:

Get the PVS_uuid field of the given PVS_site.

Signature:

string get_PVS_uuid (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: string

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given PVS_site.

Signature:

PVS_site record get_record (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: PVS_site record

all fields from the object

RPC name: get_servers

Overview:

Get the servers field of the given PVS_site.

Signature:

PVS_server ref set get_servers (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: PVS_server ref set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given PVS_site.

Signature:

string get_uuid (session ref session_id, PVS_site ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object

Return Type: string

value of the field

RPC name: introduce

Overview:

Introduce new PVS site

Signature:

PVS_site ref introduce (session ref session_id, string name_label, string name_description, string PVS_uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string name_label name of the PVS site
string name_description description of the PVS site
string PVS_uuid unique identifier of the PVS site

Return Type: PVS_site ref

the new PVS site

RPC name: set_name_description

Overview:

Set the name/description field of the given PVS_site.

Signature:

void set_name_description (session ref session_id, PVS_site ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_name_label

Overview:

Set the name/label field of the given PVS_site.

Signature:

void set_name_label (session ref session_id, PVS_site ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self reference to the object
string value New value to set

Return Type: void

RPC name: set_PVS_uuid

Overview:

Update the PVS UUID of the PVS site

Signature:

void set_PVS_uuid (session ref session_id, PVS_site ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
PVS_site ref self this PVS site
string value PVS UUID to be used

Return Type: void

Class: role

A set of permissions associated with a subject

Fields for class: role

Field Type Qualifier Description
name_description string RO/constructor what this role is for
name_label string RO/constructor a short user-friendly name for the role
subroles role ref set RO/constructor a list of pointers to other roles or permissions
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: role

RPC name: get_all

Overview:

Return a list of all the roles known to the system.

Signature:

role ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of role references to role records for all roles known to the system.

Signature:

(role ref -> role record) map get_all_records (session ref session_id)

RPC name: get_by_name_label

Overview:

Get all the role instances with the given label.

Signature:

role ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: role ref set

references to objects with matching names

RPC name: get_by_permission

Overview:

This call returns a list of roles given a permission

Signature:

role ref set get_by_permission (session ref session_id, role ref permission)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref permission a reference to a permission

Return Type: role ref set

a list of references to roles

RPC name: get_by_permission_name_label

Overview:

This call returns a list of roles given a permission name

Signature:

role ref set get_by_permission_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label The short friendly name of the role

Return Type: role ref set

a list of references to roles

RPC name: get_by_uuid

Overview:

Get a reference to the role instance with the specified UUID.

Signature:

role ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: role ref

reference to the object

RPC name: get_name_description

Overview:

Get the name/description field of the given role.

Signature:

string get_name_description (session ref session_id, role ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given role.

Signature:

string get_name_label (session ref session_id, role ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref self reference to the object

Return Type: string

value of the field

RPC name: get_permissions

Overview:

This call returns a list of permissions given a role

Signature:

role ref set get_permissions (session ref session_id, role ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref self a reference to a role

Return Type: role ref set

a list of permissions

RPC name: get_permissions_name_label

Overview:

This call returns a list of permission names given a role

Signature:

string set get_permissions_name_label (session ref session_id, role ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref self a reference to a role

Return Type: string set

a list of permission names

RPC name: get_record

Overview:

Get a record containing the current state of the given role.

Signature:

role record get_record (session ref session_id, role ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref self reference to the object

Return Type: role record

all fields from the object

RPC name: get_subroles

Overview:

Get the subroles field of the given role.

Signature:

role ref set get_subroles (session ref session_id, role ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref self reference to the object

Return Type: role ref set

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given role.

Signature:

string get_uuid (session ref session_id, role ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
role ref self reference to the object

Return Type: string

value of the field

Class: SDN_controller

Describes the SDN controller that is to connect with the pool

Fields for class: SDN_controller

Field Type Qualifier Description
address string RO/constructor IP address of the controller
port int RO/constructor TCP port of the controller
protocol sdn_controller_protocol RO/constructor Protocol to connect with SDN controller
uuid string RO/runtime Unique identifier/object reference

RPCs associated with class: SDN_controller

RPC name: forget

Overview:

Remove the OVS manager of the pool and destroy the db record.

Signature:

void forget (session ref session_id, SDN_controller ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SDN_controller ref self this SDN controller

Return Type: void

RPC name: get_address

Overview:

Get the address field of the given SDN_controller.

Signature:

string get_address (session ref session_id, SDN_controller ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SDN_controller ref self reference to the object

Return Type: string

value of the field

RPC name: get_all

Overview:

Return a list of all the SDN_controllers known to the system.

Signature:

SDN_controller ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of SDN_controller references to SDN_controller records for all SDN_controllers known to the system.

Signature:

(SDN_controller ref -> SDN_controller record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the SDN_controller instance with the specified UUID.

Signature:

SDN_controller ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: SDN_controller ref

reference to the object

RPC name: get_port

Overview:

Get the port field of the given SDN_controller.

Signature:

int get_port (session ref session_id, SDN_controller ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SDN_controller ref self reference to the object

Return Type: int

value of the field

RPC name: get_protocol

Overview:

Get the protocol field of the given SDN_controller.

Signature:

sdn_controller_protocol get_protocol (session ref session_id, SDN_controller ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SDN_controller ref self reference to the object

Return Type: sdn_controller_protocol

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given SDN_controller.

Signature:

SDN_controller record get_record (session ref session_id, SDN_controller ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SDN_controller ref self reference to the object

Return Type: SDN_controller record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given SDN_controller.

Signature:

string get_uuid (session ref session_id, SDN_controller ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SDN_controller ref self reference to the object

Return Type: string

value of the field

RPC name: introduce

Overview:

Introduce an SDN controller to the pool.

Signature:

SDN_controller ref introduce (session ref session_id, sdn_controller_protocol protocol, string address, int port)

Arguments:

type name description
session ref session_id Reference to a valid session
sdn_controller_protocol protocol Protocol to connect with the controller.
string address IP address of the controller.
int port TCP port of the controller.

Return Type: SDN_controller ref

the introduced SDN controller

Class: secret

A secret

Fields for class: secret

Field Type Qualifier Description
other_config (string -> string) map RW other_config
uuid string RO/runtime Unique identifier/object reference
value string RW the secret

RPCs associated with class: secret

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given secret.

Signature:

void add_to_other_config (session ref session_id, secret ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: create

Overview:

Create a new secret instance, and return its handle.

Signature:

secret ref create (session ref session_id, secret record args)

Arguments:

type name description
session ref session_id Reference to a valid session
secret record args All constructor arguments

Return Type: secret ref

reference to the newly created object

RPC name: destroy

Overview:

Destroy the specified secret instance.

Signature:

void destroy (session ref session_id, secret ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object

Return Type: void

RPC name: get_all

Overview:

Return a list of all the secrets known to the system.

Signature:

secret ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of secret references to secret records for all secrets known to the system.

Signature:

(secret ref -> secret record) map get_all_records (session ref session_id)

RPC name: get_by_uuid

Overview:

Get a reference to the secret instance with the specified UUID.

Signature:

secret ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: secret ref

reference to the object

RPC name: get_other_config

Overview:

Get the other_config field of the given secret.

Signature:

(string -> string) map get_other_config (session ref session_id, secret ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given secret.

Signature:

secret record get_record (session ref session_id, secret ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object

Return Type: secret record

all fields from the object

RPC name: get_uuid

Overview:

Get the uuid field of the given secret.

Signature:

string get_uuid (session ref session_id, secret ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object

Return Type: string

value of the field

RPC name: get_value

Overview:

Get the value field of the given secret.

Signature:

string get_value (session ref session_id, secret ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given secret. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, secret ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given secret.

Signature:

void set_other_config (session ref session_id, secret ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_value

Overview:

Set the value field of the given secret.

Signature:

void set_value (session ref session_id, secret ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
secret ref self reference to the object
string value New value to set

Return Type: void

Class: session

A session

Fields for class: session

Field Type Qualifier Description
auth_user_name string RO/runtime the subject name of the user that was externally authenticated. If a session instance has is_local_superuser set, then the value of this field is undefined.
auth_user_sid string RO/runtime the subject identifier of the user that was externally authenticated. If a session instance has is_local_superuser set, then the value of this field is undefined.
is_local_superuser bool RO/runtime true iff this session was created using local superuser credentials
last_active datetime RO/runtime Timestamp for last time session was active
originator string RO/runtime a key string provided by a API user to distinguish itself from other users sharing the same login name
other_config (string -> string) map RW additional configuration
parent session ref RO/constructor references the parent session that created this session
pool bool RO/runtime True if this session relates to a intra-pool login, false otherwise
rbac_permissions string set RO/constructor list with all RBAC permissions for this session
subject subject ref RO/runtime references the subject instance that created the session. If a session instance has is_local_superuser set, then the value of this field is undefined.
tasks task ref set RO/runtime list of tasks created using the current session
this_host host ref RO/runtime Currently connected host
this_user user ref RO/runtime Currently connected user
uuid string RO/runtime Unique identifier/object reference
validation_time datetime RO/runtime time when session was last validated

RPCs associated with class: session

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given session.

Signature:

void add_to_other_config (session ref session_id, session ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: change_password

Overview:

Change the account password; if your session is authenticated with root priviledges then the old_pwd is validated and the new_pwd is set regardless

Signature:

void change_password (session ref session_id, string old_pwd, string new_pwd)

Arguments:

type name description
session ref session_id Reference to a valid session
string old_pwd Old password for account
string new_pwd New password for account

Return Type: void

RPC name: create_from_db_file

Overview:

Signature:

session ref create_from_db_file (session ref session_id, string filename)

Arguments:

type name description
session ref session_id Reference to a valid session
string filename Database dump filename.

Return Type: session ref

ID of newly created session

RPC name: get_all_subject_identifiers

Overview:

Return a list of all the user subject-identifiers of all existing sessions

Signature:

string set get_all_subject_identifiers (session ref session_id)

RPC name: get_auth_user_name

Overview:

Get the auth_user_name field of the given session.

Signature:

string get_auth_user_name (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: string

value of the field

RPC name: get_auth_user_sid

Overview:

Get the auth_user_sid field of the given session.

Signature:

string get_auth_user_sid (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: string

value of the field

RPC name: get_by_uuid

Overview:

Get a reference to the session instance with the specified UUID.

Signature:

session ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: session ref

reference to the object

RPC name: get_is_local_superuser

Overview:

Get the is_local_superuser field of the given session.

Signature:

bool get_is_local_superuser (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: bool

value of the field

RPC name: get_last_active

Overview:

Get the last_active field of the given session.

Signature:

datetime get_last_active (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: datetime

value of the field

RPC name: get_originator

Overview:

Get the originator field of the given session.

Signature:

string get_originator (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given session.

Signature:

(string -> string) map get_other_config (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_parent

Overview:

Get the parent field of the given session.

Signature:

session ref get_parent (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: session ref

value of the field

RPC name: get_pool

Overview:

Get the pool field of the given session.

Signature:

bool get_pool (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: bool

value of the field

RPC name: get_rbac_permissions

Overview:

Get the rbac_permissions field of the given session.

Signature:

string set get_rbac_permissions (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: string set

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given session.

Signature:

session record get_record (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: session record

all fields from the object

RPC name: get_subject

Overview:

Get the subject field of the given session.

Signature:

subject ref get_subject (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: subject ref

value of the field

RPC name: get_tasks

Overview:

Get the tasks field of the given session.

Signature:

task ref set get_tasks (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: task ref set

value of the field

RPC name: get_this_host

Overview:

Get the this_host field of the given session.

Signature:

host ref get_this_host (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: host ref

value of the field

RPC name: get_this_user

Overview:

Get the this_user field of the given session.

Signature:

user ref get_this_user (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: user ref

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given session.

Signature:

string get_uuid (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: string

value of the field

RPC name: get_validation_time

Overview:

Get the validation_time field of the given session.

Signature:

datetime get_validation_time (session ref session_id, session ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object

Return Type: datetime

value of the field

RPC name: local_logout

Overview:

Log out of local session.

Signature:

void local_logout (session ref session_id)

RPC name: login_with_password

Overview:

Attempt to authenticate the user, returning a session reference if successful

Signature:

session ref login_with_password (string uname, string pwd, string version, string originator)

Arguments:

type name description
string uname Username for login.
string pwd Password for login.
string version Client API version.
string originator Key string for distinguishing different API users sharing the same login name.

Return Type: session ref

reference of newly created session

Possible Error Codes: SESSION_AUTHENTICATION_FAILED, HOST_IS_SLAVE

RPC name: logout

Overview:

Log out of a session

Signature:

void logout (session ref session_id)

RPC name: logout_subject_identifier

Overview:

Log out all sessions associated to a user subject-identifier, except the session associated with the context calling this function

Signature:

void logout_subject_identifier (session ref session_id, string subject_identifier)

Arguments:

type name description
session ref session_id Reference to a valid session
string subject_identifier User subject-identifier of the sessions to be destroyed

Return Type: void

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given session. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, session ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given session.

Signature:

void set_other_config (session ref session_id, session ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
session ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: slave_local_login_with_password

Overview:

Authenticate locally against a slave in emergency mode. Note the resulting sessions are only good for use on this host.

Signature:

session ref slave_local_login_with_password (string uname, string pwd)

Arguments:

type name description
string uname Username for login.
string pwd Password for login.

Return Type: session ref

ID of newly created session

Class: SM

A storage manager plugin

Fields for class: SM

Field Type Qualifier Description
capabilities string set RO/runtime Deprecated. capabilities of the SM plugin
configuration (string -> string) map RO/runtime names and descriptions of device config keys
copyright string RO/runtime Entity which owns the copyright of this plugin
driver_filename string RO/runtime filename of the storage driver
features (string -> int) map RO/runtime capabilities of the SM plugin, with capability version numbers
name_description string RO/runtime a notes field containing human-readable description
name_label string RO/runtime a human-readable name
other_config (string -> string) map RW additional configuration
required_api_version string RO/runtime Minimum SM API version required on the server
required_cluster_stack string set RO/runtime The storage plugin requires that one of these cluster stacks is configured and running.
type string RO/runtime SR.type
uuid string RO/runtime Unique identifier/object reference
vendor string RO/runtime Vendor who created this plugin
version string RO/runtime Version of the plugin

RPCs associated with class: SM

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given SM.

Signature:

void add_to_other_config (session ref session_id, SM ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: get_all

Overview:

Return a list of all the SMs known to the system.

Signature:

SM ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of SM references to SM records for all SMs known to the system.

Signature:

(SM ref -> SM record) map get_all_records (session ref session_id)

RPC name: get_by_name_label

Overview:

Get all the SM instances with the given label.

Signature:

SM ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: SM ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the SM instance with the specified UUID.

Signature:

SM ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: SM ref

reference to the object

RPC name: get_capabilities

This message is deprecated.

Overview:

Get the capabilities field of the given SM.

Signature:

string set get_capabilities (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string set

value of the field

RPC name: get_configuration

Overview:

Get the configuration field of the given SM.

Signature:

(string -> string) map get_configuration (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_copyright

Overview:

Get the copyright field of the given SM.

Signature:

string get_copyright (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_driver_filename

Overview:

Get the driver_filename field of the given SM.

Signature:

string get_driver_filename (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_features

Overview:

Get the features field of the given SM.

Signature:

(string -> int) map get_features (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: (string -> int) map

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given SM.

Signature:

string get_name_description (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given SM.

Signature:

string get_name_label (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given SM.

Signature:

(string -> string) map get_other_config (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given SM.

Signature:

SM record get_record (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: SM record

all fields from the object

RPC name: get_required_api_version

Overview:

Get the required_api_version field of the given SM.

Signature:

string get_required_api_version (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_required_cluster_stack

Overview:

Get the required_cluster_stack field of the given SM.

Signature:

string set get_required_cluster_stack (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string set

value of the field

RPC name: get_type

Overview:

Get the type field of the given SM.

Signature:

string get_type (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given SM.

Signature:

string get_uuid (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_vendor

Overview:

Get the vendor field of the given SM.

Signature:

string get_vendor (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: get_version

Overview:

Get the version field of the given SM.

Signature:

string get_version (session ref session_id, SM ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object

Return Type: string

value of the field

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given SM. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, SM ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object
string key Key to remove

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given SM.

Signature:

void set_other_config (session ref session_id, SM ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
SM ref self reference to the object
(string -> string) map value New value to set

Return Type: void

Class: SR

A storage repository

Fields for class: SR

Field Type Qualifier Description
allowed_operations storage_operations set RO/runtime 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.
blobs (string -> blob ref) map RO/runtime Binary blobs associated with this SR
clustered bool RO/runtime True if the SR is using aggregated local storage
content_type string RO/constructor the type of the SR's content, if required (e.g. ISOs)
current_operations (string -> storage_operations) map RO/runtime links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
introduced_by DR_task ref RO/runtime The disaster recovery task which introduced this SR
is_tools_sr bool RO/runtime True if this is the SR that contains the Tools ISO VDIs
local_cache_enabled bool RO/runtime True if this SR is assigned to be the local cache for its host
name_description string RO/constructor a notes field containing human-readable description
name_label string RO/constructor a human-readable name
other_config (string -> string) map RW additional configuration
PBDs PBD ref set RO/runtime describes how particular hosts can see this storage repository
physical_size int RO/constructor total physical size of the repository (in bytes)
physical_utilisation int RO/runtime physical space currently utilised on this storage repository (in bytes). Note that for sparse disk formats, physical_utilisation may be less than virtual_allocation
shared bool RO/runtime true if this SR is (capable of being) shared between multiple hosts
sm_config (string -> string) map RW SM dependent data
tags string set RW user-specified tags for categorization purposes
type string RO/constructor type of the storage repository
uuid string RO/runtime Unique identifier/object reference
VDIs VDI ref set RO/runtime all virtual disks known to this storage repository
virtual_allocation int RO/runtime sum of virtual_sizes of all VDIs in this storage repository (in bytes)

RPCs associated with class: SR

RPC name: add_tags

Overview:

Add the given value to the tags field of the given SR. If the value is already in that Set, then do nothing.

Signature:

void add_tags (session ref session_id, SR ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
string value New value to add

Return Type: void

RPC name: add_to_other_config

Overview:

Add the given key-value pair to the other_config field of the given SR.

Signature:

void add_to_other_config (session ref session_id, SR ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: add_to_sm_config

Overview:

Add the given key-value pair to the sm_config field of the given SR.

Signature:

void add_to_sm_config (session ref session_id, SR ref self, string key, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
string key Key to add
string value Value to add

Return Type: void

RPC name: assert_can_host_ha_statefile

Overview:

Returns successfully if the given SR can host an HA statefile. Otherwise returns an error to explain why not

Signature:

void assert_can_host_ha_statefile (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to query

Return Type: void

RPC name: assert_supports_database_replication

Overview:

Returns successfully if the given SR supports database replication. Otherwise returns an error to explain why not.

Signature:

void assert_supports_database_replication (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to query

Return Type: void

RPC name: create

Overview:

Create a new Storage Repository and introduce it into the managed system, creating both SR record and PBD record to attach it to current host (with specified device_config parameters)

Signature:

SR ref create (session ref session_id, host ref host, (string -> string) map device_config, int physical_size, string name_label, string name_description, string type, string content_type, bool shared, (string -> string) map sm_config)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to create/make the SR on
(string -> string) map device_config The device config string that will be passed to backend SR driver
int physical_size The physical size of the new storage repository
string name_label The name of the new storage repository
string name_description The description of the new storage repository
string type The type of the SR; used to specify the SR backend driver to use
string content_type The type of the new SRs content, if required (e.g. ISOs)
bool shared True if the SR (is capable of) being shared by multiple hosts
(string -> string) map sm_config Storage backend specific configuration options

Return Type: SR ref

The reference of the newly created Storage Repository.

Possible Error Codes: SR_UNKNOWN_DRIVER

RPC name: create_new_blob

Overview:

Create a placeholder for a named binary blob of data that is associated with this SR

Signature:

blob ref create_new_blob (session ref session_id, SR ref sr, string name, string mime_type, bool public)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR
string name The name associated with the blob
string mime_type The mime type for the data. Empty string translates to application/octet-stream
bool public True if the blob should be publicly available

Return Type: blob ref

The reference of the blob, needed for populating its data

RPC name: destroy

Overview:

Destroy specified SR, removing SR-record from database and remove SR from disk. (In order to affect this operation the appropriate device_config is read from the specified SR's PBD on current host)

Signature:

void destroy (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to destroy

Return Type: void

Possible Error Codes: SR_HAS_PBD

RPC name: disable_database_replication

Overview:

Signature:

void disable_database_replication (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to which metadata should be no longer replicated

Return Type: void

RPC name: enable_database_replication

Overview:

Signature:

void enable_database_replication (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to which metadata should be replicated

Return Type: void

RPC name: forget

Overview:

Removing specified SR-record from database, without attempting to remove SR from disk

Signature:

void forget (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to destroy

Return Type: void

Possible Error Codes: SR_HAS_PBD

RPC name: forget_data_source_archives

Overview:

Forget the recorded statistics related to the specified data source

Signature:

void forget_data_source_archives (session ref session_id, SR ref sr, string data_source)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR
string data_source The data source whose archives are to be forgotten

Return Type: void

RPC name: get_all

Overview:

Return a list of all the SRs known to the system.

Signature:

SR ref set get_all (session ref session_id)

RPC name: get_all_records

Overview:

Return a map of SR references to SR records for all SRs known to the system.

Signature:

(SR ref -> SR record) map get_all_records (session ref session_id)

RPC name: get_allowed_operations

Overview:

Get the allowed_operations field of the given SR.

Signature:

storage_operations set get_allowed_operations (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: storage_operations set

value of the field

RPC name: get_blobs

Overview:

Get the blobs field of the given SR.

Signature:

(string -> blob ref) map get_blobs (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: (string -> blob ref) map

value of the field

RPC name: get_by_name_label

Overview:

Get all the SR instances with the given label.

Signature:

SR ref set get_by_name_label (session ref session_id, string label)

Arguments:

type name description
session ref session_id Reference to a valid session
string label label of object to return

Return Type: SR ref set

references to objects with matching names

RPC name: get_by_uuid

Overview:

Get a reference to the SR instance with the specified UUID.

Signature:

SR ref get_by_uuid (session ref session_id, string uuid)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid UUID of object to return

Return Type: SR ref

reference to the object

RPC name: get_clustered

Overview:

Get the clustered field of the given SR.

Signature:

bool get_clustered (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: bool

value of the field

RPC name: get_content_type

Overview:

Get the content_type field of the given SR.

Signature:

string get_content_type (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: string

value of the field

RPC name: get_current_operations

Overview:

Get the current_operations field of the given SR.

Signature:

(string -> storage_operations) map get_current_operations (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: (string -> storage_operations) map

value of the field

RPC name: get_data_sources

Overview:

Signature:

data_source record set get_data_sources (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to interrogate

Return Type: data_source record set

A set of data sources

RPC name: get_introduced_by

Overview:

Get the introduced_by field of the given SR.

Signature:

DR_task ref get_introduced_by (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: DR_task ref

value of the field

RPC name: get_is_tools_sr

Overview:

Get the is_tools_sr field of the given SR.

Signature:

bool get_is_tools_sr (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: bool

value of the field

RPC name: get_local_cache_enabled

Overview:

Get the local_cache_enabled field of the given SR.

Signature:

bool get_local_cache_enabled (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: bool

value of the field

RPC name: get_name_description

Overview:

Get the name/description field of the given SR.

Signature:

string get_name_description (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: string

value of the field

RPC name: get_name_label

Overview:

Get the name/label field of the given SR.

Signature:

string get_name_label (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: string

value of the field

RPC name: get_other_config

Overview:

Get the other_config field of the given SR.

Signature:

(string -> string) map get_other_config (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_PBDs

Overview:

Get the PBDs field of the given SR.

Signature:

PBD ref set get_PBDs (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: PBD ref set

value of the field

RPC name: get_physical_size

Overview:

Get the physical_size field of the given SR.

Signature:

int get_physical_size (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: int

value of the field

RPC name: get_physical_utilisation

Overview:

Get the physical_utilisation field of the given SR.

Signature:

int get_physical_utilisation (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: int

value of the field

RPC name: get_record

Overview:

Get a record containing the current state of the given SR.

Signature:

SR record get_record (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: SR record

all fields from the object

RPC name: get_shared

Overview:

Get the shared field of the given SR.

Signature:

bool get_shared (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: bool

value of the field

RPC name: get_sm_config

Overview:

Get the sm_config field of the given SR.

Signature:

(string -> string) map get_sm_config (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: (string -> string) map

value of the field

RPC name: get_supported_types

Overview:

Return a set of all the SR types supported by the system

Signature:

string set get_supported_types (session ref session_id)

RPC name: get_tags

Overview:

Get the tags field of the given SR.

Signature:

string set get_tags (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: string set

value of the field

RPC name: get_type

Overview:

Get the type field of the given SR.

Signature:

string get_type (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: string

value of the field

RPC name: get_uuid

Overview:

Get the uuid field of the given SR.

Signature:

string get_uuid (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: string

value of the field

RPC name: get_VDIs

Overview:

Get the VDIs field of the given SR.

Signature:

VDI ref set get_VDIs (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: VDI ref set

value of the field

RPC name: get_virtual_allocation

Overview:

Get the virtual_allocation field of the given SR.

Signature:

int get_virtual_allocation (session ref session_id, SR ref self)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object

Return Type: int

value of the field

RPC name: introduce

Overview:

Introduce a new Storage Repository into the managed system

Signature:

SR ref introduce (session ref session_id, string uuid, string name_label, string name_description, string type, string content_type, bool shared, (string -> string) map sm_config)

Arguments:

type name description
session ref session_id Reference to a valid session
string uuid The uuid assigned to the introduced SR
string name_label The name of the new storage repository
string name_description The description of the new storage repository
string type The type of the SR; used to specify the SR backend driver to use
string content_type The type of the new SRs content, if required (e.g. ISOs)
bool shared True if the SR (is capable of) being shared by multiple hosts
(string -> string) map sm_config Storage backend specific configuration options

Return Type: SR ref

The reference of the newly introduced Storage Repository.

RPC name: make

This message is deprecated.

Overview:

Create a new Storage Repository on disk. This call is deprecated: use SR.create instead.

Signature:

string make (session ref session_id, host ref host, (string -> string) map device_config, int physical_size, string name_label, string name_description, string type, string content_type, (string -> string) map sm_config)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to create/make the SR on
(string -> string) map device_config The device config string that will be passed to backend SR driver
int physical_size The physical size of the new storage repository
string name_label The name of the new storage repository
string name_description The description of the new storage repository
string type The type of the SR; used to specify the SR backend driver to use
string content_type The type of the new SRs content, if required (e.g. ISOs)
(string -> string) map sm_config Storage backend specific configuration options

Return Type: string

The uuid of the newly created Storage Repository.

RPC name: probe

Overview:

Perform a backend-specific scan, using the given device_config. If the device_config is complete, then this will return a list of the SRs present of this type on the device, if any. If the device_config is partial, then a backend-specific scan will be performed, returning results that will guide the user in improving the device_config.

Signature:

string probe (session ref session_id, host ref host, (string -> string) map device_config, string type, (string -> string) map sm_config)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to create/make the SR on
(string -> string) map device_config The device config string that will be passed to backend SR driver
string type The type of the SR; used to specify the SR backend driver to use
(string -> string) map sm_config Storage backend specific configuration options

Return Type: string

An XML fragment containing the scan results. These are specific to the scan being performed, and the backend.

RPC name: probe_ext

Overview:

Perform a backend-specific scan, using the given device_config. If the device_config is complete, then this will return a list of the SRs present of this type on the device, if any. If the device_config is partial, then a backend-specific scan will be performed, returning results that will guide the user in improving the device_config.

Signature:

probe_result record set probe_ext (session ref session_id, host ref host, (string -> string) map device_config, string type, (string -> string) map sm_config)

Arguments:

type name description
session ref session_id Reference to a valid session
host ref host The host to create/make the SR on
(string -> string) map device_config The device config string that will be passed to backend SR driver
string type The type of the SR; used to specify the SR backend driver to use
(string -> string) map sm_config Storage backend specific configuration options

Return Type: probe_result record set

A set of records containing the scan results.

RPC name: query_data_source

Overview:

Query the latest value of the specified data source

Signature:

float query_data_source (session ref session_id, SR ref sr, string data_source)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR
string data_source The data source to query

Return Type: float

The latest value, averaged over the last 5 seconds

RPC name: record_data_source

Overview:

Start recording the specified data source

Signature:

void record_data_source (session ref session_id, SR ref sr, string data_source)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR
string data_source The data source to record

Return Type: void

RPC name: remove_from_other_config

Overview:

Remove the given key and its corresponding value from the other_config field of the given SR. If the key is not in that Map, then do nothing.

Signature:

void remove_from_other_config (session ref session_id, SR ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_from_sm_config

Overview:

Remove the given key and its corresponding value from the sm_config field of the given SR. If the key is not in that Map, then do nothing.

Signature:

void remove_from_sm_config (session ref session_id, SR ref self, string key)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
string key Key to remove

Return Type: void

RPC name: remove_tags

Overview:

Remove the given value from the tags field of the given SR. If the value is not in that Set, then do nothing.

Signature:

void remove_tags (session ref session_id, SR ref self, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
string value Value to remove

Return Type: void

RPC name: scan

Overview:

Refreshes the list of VDIs associated with an SR

Signature:

void scan (session ref session_id, SR ref sr)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR to scan

Return Type: void

RPC name: set_name_description

Overview:

Set the name description of the SR

Signature:

void set_name_description (session ref session_id, SR ref sr, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR
string value The name description for the SR

Return Type: void

RPC name: set_name_label

Overview:

Set the name label of the SR

Signature:

void set_name_label (session ref session_id, SR ref sr, string value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR
string value The name label for the SR

Return Type: void

RPC name: set_other_config

Overview:

Set the other_config field of the given SR.

Signature:

void set_other_config (session ref session_id, SR ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_physical_size

Overview:

Sets the SR's physical_size field

Signature:

void set_physical_size (session ref session_id, SR ref self, int value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self The SR to modify
int value The new value of the SR's physical_size

Return Type: void

RPC name: set_shared

Overview:

Sets the shared flag on the SR

Signature:

void set_shared (session ref session_id, SR ref sr, bool value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref sr The SR
bool value True if the SR is shared

Return Type: void

RPC name: set_sm_config

Overview:

Set the sm_config field of the given SR.

Signature:

void set_sm_config (session ref session_id, SR ref self, (string -> string) map value)

Arguments:

type name description
session ref session_id Reference to a valid session
SR ref self reference to the object
(string -> string) map value New value to set

Return Type: void

RPC name: set_tags

Overview:

Set the tags field of the given SR.

Signature: