Do you have a question about the DL385 - ProLiant - G5 and is the answer not in the manual?
Questions and answers
Summary of Contents for XenSource DL385 - ProLiant - G5
Page 1
XenEnterprise Management API API Revision 1.1 XenEnterprise Management API Version: API Revision 1.1 Date: 16th August 2007 Copyright c 2007 XenSource Inc, All Rights Reserved.
Chapter 1 Introduction This document defines the XenEnterprise Management API—an API for remotely configuring and controlling virtualised guests running on a Xen-enabled cluster. The API is presented here as a set of Remote Procedure Calls, with a wire format based upon XML-RPC.
1.1. RPCS ASSOCIATED WITH FIELDS CHAPTER 1. INTRODUCTION RPCs associated with fields Each field, f, has an RPC accessor associated with it that returns f’s value: • “get f(Ref x)”: takes a Ref that refers to an object and returns the value of f. Each field, f, with attribute RW and whose outermost type is Set has the following additional RPCs associated with it: •...
1.3. WIRE PROTOCOL FOR REMOTE API CALLS CHAPTER 1. INTRODUCTION Wire Protocol for Remote API Calls API calls are sent over a network to a Xen-enabled host using the XML-RPC protocol. In this Section we describe how the higher-level types used in our API Reference are mapped to primitive XML-RPC types.
1.3. WIRE PROTOCOL FOR REMOTE API CALLS CHAPTER 1. INTRODUCTION <name>John</name> <value><double>1.2</double></value> </member> </struct> </value> • our Void type is transmitted as an empty string. 1.3.1 Note on References vs UUIDs References are opaque types — encoded as XML-RPC strings on the wire — understood only by the particular server which generated them.
1.4. MAKING XML-RPC CALLS CHAPTER 1. INTRODUCTION <member> <name>Value</name> <value> <array> <data> <value>81547a35-205c-a551-c577-00b982c5fe00</value> <value>61c85a22-05da-b8a2-2e55-06b0847da503</value> <value>1d401ec4-3c17-35a6-fc79-cee6bd9811fe</value> </data> </array> </value> </member> </struct> Making XML-RPC Calls 1.4.1 Transport Layer The following transport layers are currently supported: • HTTP/S for remote administration • HTTP over Unix domain sockets for local administration 1.4.2 Session Layer The XML-RPC interface is session-based;...
1.5. EXAMPLE INTERACTIVE SESSION CHAPTER 1. INTRODUCTION returns a set of all task IDs known to the system. The status (including any returned result and error codes) of these tasks can then be queried by accessing the fields of the Task object in the usual way.
Page 11
1.5. EXAMPLE INTERACTIVE SESSION CHAPTER 1. INTRODUCTION In this case the start message has been rejected, because the VM is a template, and so an error response has been returned. These high-level errors are returned as structured data (rather than as XML-RPC faults), allowing them to be internationalised.
1.6. VM LIFECYCLE CHAPTER 1. INTRODUCTION powered down start(paused=true) cleanShutdown / paused start(paused=false) hardShutdown resume pause suspend resume(paused=true) running suspend resume(paused=false) suspended Figure 1.1: VM Lifecycle VM Lifecycle Figure 1.1 shows the states that a VM can be in and the API calls that can be used to move the VM between these states.
Page 13
1.7. VM BOOT PARAMETERS CHAPTER 1. INTRODUCTION Only one policy is currently defined: “BIOS order”. In this case, HVM/boot params should contain one key-value pair “order” = “N” where N is the string that will be passed to QEMU.
Chapter 2 API Reference Classes The following classes are defined: Name Description A session session A long-running asynchronous task task Asynchronous event registration and handling event Pool-wide information pool Pool-wide patches pool patch A virtual machine (or ’guest’) The metrics associated with a VM VM metrics The metrics reported by the guest (as opposed to inferred from VM guest metrics...
2.2. RELATIONSHIPS BETWEEN CLASSES CHAPTER 2. API REFERENCE Relationships Between Classes Fields that are bound together are shown in the following table: object.field object.field relationship PIF.bond slave of Bond.slaves one-to-many PIF.bond master of Bond.master many-to-one PIF.VLAN slave of VLAN.tagged PIF many-to-one host.PBDs PBD.host...
2.3. TYPES CHAPTER 2. API REFERENCE 2.2.1 List of bound fields Types 2.3.1 Primitives The following primitive types are used to specify methods and fields in the API Reference: Type Description String text strings 64-bit integers Float IEEE double-precision floating-point numbers Bool boolean DateTime...
Page 17
2.3. TYPES CHAPTER 2. API REFERENCE enum vdi operations Scanning backends for new or deleted VDIs scan Cloning the VDI clone Copying the VDI copy Resizing the VDI resize Snapshotting the VDI snapshot Destroying the VDI destroy Forget about the VDI forget Forcibly unlocking the VDI force unlock...
Page 18
2.3. TYPES CHAPTER 2. API REFERENCE VM is offline and not using any resources Halted All resources have been allocated but the VM itself is paused and its vCPUs are not running Paused Running Running Suspended VM state has been saved to disk and it is nolonger running. Note that disks remain in-use while t Some other unknown state Unknown enum after apply guidance...
Page 19
2.3. TYPES CHAPTER 2. API REFERENCE refers to the operation “migrate” migrate refers to the operation “statistics” statistics refers to the operation “get boot record” get boot record refers to the operation “send sysrq” send sysrq refers to the operation “send trigger” send trigger Changing the memory settings changing memory live...
Page 20
2.3. TYPES CHAPTER 2. API REFERENCE enum vbd mode only read-only access will be allowed read-write access will be allowed enum vbd type VBD will appear to guest as CD VBD will appear to guest as disk Disk...
2.4. CLASS: SESSION CHAPTER 2. API REFERENCE Class: session 2.4.1 Fields for class: session Name session Description A session. Quals Field Type Description string unique identifier/object reference uuid host ref Currently connected host this host user ref Currently connected user this user datetime Timestamp for last time session was...
Page 22
2.4. CLASS: SESSION CHAPTER 2. API REFERENCE void change_password (session_id s, string old_pwd, string new_pwd) Arguments: type name description old pwd Old password for account string new pwd New password for account string Return Type: void RPC name: get uuid Overview: Get the uuid field of the given session.
Page 23
2.4. CLASS: SESSION CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object session ref Return Type: user ref 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_id s, session ref self) Arguments:...
Page 24
2.4. CLASS: SESSION CHAPTER 2. API REFERENCE Return Type: (string → string) Map value of the field RPC name: set other config Overview: Set the other config field of the given session. Signature: void set_other_config (session_id s, session ref self, (string -> string) Map value) Arguments: type name...
Page 25
2.4. CLASS: SESSION CHAPTER 2. API REFERENCE RPC name: get by uuid Overview: Get a reference to the session instance with the specified UUID. Signature: (session ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: session ref reference to the object...
2.5. CLASS: TASK CHAPTER 2. API REFERENCE string Set if the task has failed, this field error info contains the set of associated error strings. Undefined otherwise. (string → string) Map additional configuration other config 2.5.2 RPCs associated with class: task RPC name: create Overview: Create a new task object which must be manually destroyed.
Page 28
2.5. CLASS: TASK CHAPTER 2. API REFERENCE Possible Error Codes: OPERATION NOT ALLOWED RPC name: get all Overview: Return a list of all the tasks known to the system. Signature: ((task ref) Set) get_all (session_id s) Return Type: (task ref) Set references to all objects RPC name: get all records Overview:...
Page 29
2.5. CLASS: TASK CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object task ref Return Type: string value of the field RPC name: get name description Overview: Get the name/description field of the given task. Signature: string get_name_description (session_id s, task ref self) Arguments: type...
Page 30
2.5. CLASS: TASK CHAPTER 2. API REFERENCE Return Type: (string → task allowed operations) Map value of the field RPC name: get created Overview: Get the created field of the given task. Signature: datetime get_created (session_id s, task ref self) Arguments: type name...
Page 31
2.5. CLASS: TASK CHAPTER 2. API REFERENCE RPC name: get resident on Overview: Get the resident on field of the given task. Signature: (host ref) get_resident_on (session_id s, task ref self) Arguments: type name description self reference to the object task ref Return Type: host ref value of the field...
Page 32
2.5. CLASS: TASK CHAPTER 2. API REFERENCE RPC name: get result Overview: Get the result field of the given task. Signature: string get_result (session_id s, task ref self) Arguments: type name description self reference to the object task ref Return Type: string value of the field RPC name: get error info Overview:...
Page 33
2.5. CLASS: TASK CHAPTER 2. API REFERENCE RPC name: set other config Overview: Set the other config field of the given task. Signature: void set_other_config (session_id s, task ref self, (string -> string) Map value) Arguments: type name description self reference to the object task ref (string →...
Page 34
2.5. CLASS: TASK CHAPTER 2. API REFERENCE RPC name: get by uuid Overview: Get a reference to the task instance with the specified UUID. Signature: (task ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: task ref reference to the object...
2.6. CLASS: EVENT CHAPTER 2. API REFERENCE Class: event 2.6.1 Fields for class: event Name event Description Asynchronous event registration and handling. Quals Field Type Description An ID, monotonically increasing, and local to the current session datetime The time at which the event occurred timestamp string The name of the class of the object...
Page 36
2.6. CLASS: EVENT CHAPTER 2. API REFERENCE RPC name: next Overview: Blocking call which returns a (possibly empty) batch of events. Signature: ((event record) Set) next (session_id s) Return Type: (event record) Set the batch of 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.
2.7. CLASS: POOL CHAPTER 2. API REFERENCE Class: pool 2.7.1 Fields for class: pool Name pool Description Pool-wide information. Quals Field Type Description string unique identifier/object reference uuid string Short name name label string Description name description host ref The host that is pool master master SR ref Default SR for VDIs...
Page 38
2.7. CLASS: POOL CHAPTER 2. API REFERENCE Return Type: void RPC name: eject Overview: Instruct a pool master to eject a host from the pool. Signature: void eject (session_id s, host ref host) Arguments: type name description host The host to eject host ref Return Type: void RPC name: emergency transition to master...
Page 39
2.7. CLASS: POOL CHAPTER 2. API REFERENCE Return Type: (host ref) Set list of hosts whose master address were succesfully reset RPC name: create VLAN Overview: Create PIFs, mapping a network to the same physical interface/VLAN on each host. Signature: ((PIF ref) Set) create_VLAN (session_id s, string device, network ref network, int VLAN) Arguments: type...
Page 40
2.7. CLASS: POOL CHAPTER 2. API REFERENCE RPC name: sync database Overview: Forcibly synchronise the database now. Signature: void sync_database (session_id s) Return Type: void 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_id s, host ref host) Arguments:...
Page 41
2.7. CLASS: POOL CHAPTER 2. API REFERENCE RPC name: get uuid Overview: Get the uuid field of the given pool. Signature: string get_uuid (session_id s, pool ref self) Arguments: type name description self reference to the object pool ref Return Type: string value of the field RPC name: get name label Overview:...
Page 42
2.7. CLASS: POOL CHAPTER 2. API REFERENCE RPC name: get name description Overview: Get the name description field of the given pool. Signature: string get_name_description (session_id s, pool ref self) Arguments: type name description self reference to the object pool ref Return Type: string value of the field RPC name: set name description...
Page 43
2.7. CLASS: POOL CHAPTER 2. API REFERENCE RPC name: get default SR Overview: Get the default SR field of the given pool. Signature: (SR ref) get_default_SR (session_id s, pool ref self) Arguments: type name description self reference to the object pool ref Return Type: SR ref value of the field...
Page 44
2.7. CLASS: POOL CHAPTER 2. API REFERENCE RPC name: set suspend image SR Overview: Set the suspend image SR field of the given pool. Signature: void set_suspend_image_SR (session_id s, pool ref self, SR ref value) Arguments: type name description self reference to the object pool ref value...
Page 45
2.7. CLASS: POOL CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given pool. Signature: ((string -> string) Map) get_other_config (session_id s, pool ref self) Arguments: type name description self reference to the object pool ref Return Type: (string →...
Page 46
2.7. CLASS: POOL CHAPTER 2. API REFERENCE 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_id s, pool ref self, string key) Arguments:...
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE Class: pool patch 2.8.1 Fields for class: pool patch Name pool patch Description Pool-wide patches. Quals Field Type Description string unique identifier/object reference uuid string a human-readable name name/label string notes field containg human- name/description...
Page 48
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE RPC name: precheck Overview: Execute the precheck stage of the selected patch on a host and return its output. Signature: string precheck (session_id s, pool_patch ref self, host ref host) Arguments: type name description self...
Page 49
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE RPC name: get all Overview: Return a list of all the pool patchs known to the system. Signature: ((pool_patch ref) Set) get_all (session_id s) Return Type: (pool patch ref) Set references to all objects RPC name: get all records Overview: Return a map of pool patch references to pool patch records for all pool patchs known to the...
Page 50
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE Return Type: string value of the field RPC name: get name description Overview: Get the name/description field of the given pool patch. Signature: string get_name_description (session_id s, pool_patch ref self) Arguments: type name description self...
Page 51
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE RPC name: get pool applied Overview: Get the pool applied field of the given pool patch. Signature: bool get_pool_applied (session_id s, pool_patch ref self) Arguments: type name description self reference to the object pool patch ref Return Type: bool value of the field...
Page 52
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given pool patch. Signature: ((string -> string) Map) get_other_config (session_id s, pool_patch ref self) Arguments: type name description self reference to the object pool patch ref Return Type: (string →...
Page 53
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE RPC name: remove from other config 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_id s, pool_patch ref self, string key) Arguments:...
Page 54
2.8. CLASS: POOL PATCH CHAPTER 2. API REFERENCE RPC name: get by name label Overview: Get all the pool patch instances with the given label. Signature: ((pool_patch ref) Set) get_by_name_label (session_id s, string label) Arguments: type name description label label of object to return string Return Type: (pool patch ref) Set references to objects with matching names...
2.9. CLASS: VM CHAPTER 2. API REFERENCE Class: VM 2.9.1 Fields for class: VM Name Description A virtual machine (or ’guest’). Quals Field Type Description string unique identifier/object reference uuid (vm operations) Set list of the operations allowed in this allowed operations state.
2.9. CLASS: VM CHAPTER 2. API REFERENCE Max number of VCPUs VCPUs/max Boot number of VCPUs VCPUs/at startup on normal exit action to take after the guest has actions/after shutdown shutdown itself on normal exit action to take after the guest has re- actions/after reboot booted itself on crash behaviour...
Page 57
2.9. CLASS: VM CHAPTER 2. API REFERENCE Clones the specified VM, making a new VM. Clone automatically exploits the capabilities of the underlying storage repository in which the VM’s disk images are stored (e.g. Copy on Write). This function can only be called when the VM is in the Halted State. Signature: (VM ref) clone (session_id s, VM ref vm, string new_name) Arguments:...
Page 58
2.9. CLASS: VM CHAPTER 2. API REFERENCE Return Type: void Possible Error Codes: VM BAD POWER STATE, SR FULL, OPERATION NOT ALLOWED RPC name: start Overview: Start the specified VM. This function can only be called with the VM is in the Halted State. Signature: void start (session_id s, VM ref vm, bool start_paused, bool force) Arguments:...
Page 59
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: pause Overview: Pause the specified VM. This can only be called when the specified VM is in the Running state. Signature: void pause (session_id s, VM ref vm) Arguments: type name description The VM to pause VM ref...
Page 60
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: clean reboot Overview: Attempt to cleanly shutdown the specified VM (Note: this may not be supported—e.g. if a guest agent is not installed). This can only be called when the specified VM is in the Running state. Signature: void clean_reboot (session_id s, VM ref vm) Arguments:...
Page 61
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: hard reboot Overview: Stop executing the specified VM without attempting a clean shutdown and immediately restart the VM. Signature: void hard_reboot (session_id s, VM ref vm) Arguments: type name description The VM to reboot VM ref Return Type: void Possible Error Codes: VM BAD POWER STATE, OTHER OPERATION IN PROGRESS, OPERATION NOT ALLOWED,...
Page 62
2.9. CLASS: VM CHAPTER 2. API REFERENCE Return Type: void Possible Error Codes: VM BAD POWER STATE, OPERATION NOT ALLOWED, VM IS TEMPLATE RPC name: resume on Overview: Awaken the specified VM and resume it on a particular Host. This can only be called when the specified VM is in the Suspended state.
Page 63
2.9. CLASS: VM CHAPTER 2. API REFERENCE void set_VCPUs_number_live (session_id s, VM ref self, int nvcpu) Arguments: type name description self The VM VM ref nvcpu The number of VCPUs Return Type: void RPC name: add to VCPUs params live Overview: Add the given key-value pair to VM.VCPUs params, and apply that value on the running VM.
Page 64
2.9. CLASS: VM CHAPTER 2. API REFERENCE Arguments: type name description self The VM VM ref multiplier The new shadow multiplier to set float Return Type: void RPC name: send sysrq Overview: Send the given key as a sysrq to this VM. The key is specified as a single character (a String of length 1).
Page 65
2.9. CLASS: VM CHAPTER 2. API REFERENCE int maximise_memory (session_id s, VM ref self, int total, bool approximate) Arguments: type name description self The VM VM ref total Total amount of physical RAM to fit within approximate If false the limit is calculated with the guest’s bool current exact configuration.
Page 66
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: update allowed operations Overview: Recomputes the list of acceptable operations. Signature: void update_allowed_operations (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: void RPC name: get allowed VBD devices Overview: Returns a list of the allowed values that a VBD device field can take.
Page 67
2.9. CLASS: VM CHAPTER 2. API REFERENCE ((host ref) Set) get_possible_hosts (session_id s, VM ref vm) Arguments: type name description The VM VM ref Return Type: (host ref) Set The possible hosts RPC name: assert can boot here Overview: Returns an error if the VM could not boot on this host for some reason. Signature: void assert_can_boot_here (session_id s, VM ref self, host ref host) Arguments:...
Page 68
2.9. CLASS: VM CHAPTER 2. API REFERENCE Return Type: (VM ref) Set references to all objects RPC name: get all records Overview: Return a map of VM references to VM records for all VMs known to the system. Signature: ((VM ref -> VM record) Map) get_all_records (session_id s) Return Type: (VM ref →...
Page 69
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get current operations Overview: Get the current operations field of the given VM. Signature: ((string -> vm_operations) Map) get_current_operations (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: (string →...
Page 70
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set name label Overview: Set the name/label field of the given VM. Signature: void set_name_label (session_id s, VM ref self, string value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 71
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get user version Overview: Get the user version field of the given VM. Signature: int get_user_version (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: int value of the field RPC name: set user version...
Page 72
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set is a template Overview: Set the is a template field of the given VM. Signature: void set_is_a_template (session_id s, VM ref self, bool value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 73
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get affinity Overview: Get the affinity field of the given VM. Signature: (host ref) get_affinity (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: host ref value of the field RPC name: set affinity...
Page 74
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set memory static max Overview: Set the memory/static max field of the given VM. Signature: void set_memory_static_max (session_id s, VM ref self, int value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 75
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get memory dynamic min Overview: Get the memory/dynamic min field of the given VM. Signature: int get_memory_dynamic_min (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: int value of the field...
Page 76
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set memory static min Overview: Set the memory/static min field of the given VM. Signature: void set_memory_static_min (session_id s, VM ref self, int value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 77
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: add to VCPUs params Overview: Add the given key-value pair to the VCPUs/params field of the given VM. Signature: void add_to_VCPUs_params (session_id s, VM ref self, string key, string value) Arguments: type name description...
Page 78
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set VCPUs max Overview: Set the VCPUs/max field of the given VM. Signature: void set_VCPUs_max (session_id s, VM ref self, int value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 79
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get actions after shutdown Overview: Get the actions/after shutdown field of the given VM. Signature: (on_normal_exit) get_actions_after_shutdown (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: on normal exit value of the field...
Page 80
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set actions after reboot Overview: Set the actions/after reboot field of the given VM. Signature: void set_actions_after_reboot (session_id s, VM ref self, on_normal_exit value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 81
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get consoles Overview: Get the consoles field of the given VM. Signature: ((console ref) Set) get_consoles (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: (console ref) Set value of the field RPC name: get VIFs...
Page 82
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get crash dumps Overview: Get the crash dumps field of the given VM. Signature: ((crashdump ref) Set) get_crash_dumps (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: (crashdump ref) Set value of the field...
Page 83
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set PV bootloader Overview: Set the PV/bootloader field of the given VM. Signature: void set_PV_bootloader (session_id s, VM ref self, string value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 84
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get PV ramdisk Overview: Get the PV/ramdisk field of the given VM. Signature: string get_PV_ramdisk (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: string value of the field RPC name: set PV ramdisk...
Page 85
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set PV args Overview: Set the PV/args field of the given VM. Signature: void set_PV_args (session_id s, VM ref self, string value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 86
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get PV legacy args Overview: Get the PV/legacy args field of the given VM. Signature: string get_PV_legacy_args (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: string value of the field...
Page 87
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set HVM boot policy Overview: Set the HVM/boot policy field of the given VM. Signature: void set_HVM_boot_policy (session_id s, VM ref self, string value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 88
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: add to HVM boot params Overview: Add the given key-value pair to the HVM/boot params field of the given VM. Signature: void add_to_HVM_boot_params (session_id s, VM ref self, string key, string value) Arguments: type name...
Page 89
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set HVM shadow multiplier Overview: Set the HVM/shadow multiplier field of the given VM. Signature: void set_HVM_shadow_multiplier (session_id s, VM ref self, float value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 90
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: add to platform Overview: Add the given key-value pair to the platform field of the given VM. Signature: void add_to_platform (session_id s, VM ref self, string key, string value) Arguments: type name description self...
Page 91
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set PCI bus Overview: Set the PCI bus field of the given VM. Signature: void set_PCI_bus (session_id s, VM ref self, string value) Arguments: type name description self reference to the object VM ref value New value to set...
Page 92
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: add to other config Overview: Add the given key-value pair to the other config field of the given VM. Signature: void add_to_other_config (session_id s, VM ref self, string key, string value) Arguments: type name...
Page 93
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get domarch Overview: Get the domarch field of the given VM. Signature: string get_domarch (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: string value of the field RPC name: get last boot CPU flags Overview:...
Page 94
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get metrics Overview: Get the metrics field of the given VM. Signature: (VM_metrics ref) get_metrics (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: VM metrics ref value of the field RPC name: get guest metrics...
Page 95
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get recommendations Overview: Get the recommendations field of the given VM. Signature: string get_recommendations (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: string value of the field RPC name: set recommendations Overview:...
Page 96
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: set xenstore data Overview: Set the xenstore data field of the given VM. Signature: void set_xenstore_data (session_id s, VM ref self, (string -> string) Map value) Arguments: type name description self reference to the object VM ref (string →...
Page 97
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: create Overview: Create a new VM instance, and return its handle. Signature: (VM ref) create (session_id s, VM record args) Arguments: type name description args All constructor arguments VM record Return Type: VM ref reference to the newly created object RPC name: destroy Overview:...
Page 98
2.9. CLASS: VM CHAPTER 2. API REFERENCE RPC name: get record Overview: Get a record containing the current state of the given VM. Signature: (VM record) get_record (session_id s, VM ref self) Arguments: type name description self reference to the object VM ref Return Type: VM record all fields from the object...
2.10. CLASS: VM METRICS CHAPTER 2. API REFERENCE 2.10 Class: VM metrics 2.10.1 Fields for class: VM metrics Name VM metrics Description The metrics associated with a VM. Quals Field Type Description string unique identifier/object reference uuid Guest’s actual memory (bytes) memory/actual Current number of VCPUs VCPUs/number...
Page 100
2.10. CLASS: VM METRICS CHAPTER 2. API REFERENCE RPC name: get uuid Overview: Get the uuid field of the given VM metrics. Signature: string get_uuid (session_id s, VM_metrics ref self) Arguments: type name description self reference to the object VM metrics ref Return Type: string value of the field RPC name: get memory actual...
Page 101
2.10. CLASS: VM METRICS CHAPTER 2. API REFERENCE RPC name: get VCPUs utilisation Overview: Get the VCPUs/utilisation field of the given VM metrics. Signature: ((int -> float) Map) get_VCPUs_utilisation (session_id s, VM_metrics ref self) Arguments: type name description self reference to the object VM metrics ref Return Type: (int →...
Page 102
2.10. CLASS: VM METRICS CHAPTER 2. API REFERENCE RPC name: get VCPUs flags Overview: Get the VCPUs/flags field of the given VM metrics. Signature: ((int -> string Set) Map) get_VCPUs_flags (session_id s, VM_metrics ref self) Arguments: type name description self reference to the object VM metrics ref Return Type: (int →...
Page 103
2.10. CLASS: VM METRICS CHAPTER 2. API REFERENCE RPC name: get install time Overview: Get the install time field of the given VM metrics. Signature: datetime get_install_time (session_id s, VM_metrics ref self) Arguments: type name description self reference to the object VM metrics ref Return Type: datetime value of the field...
Page 104
2.10. CLASS: VM METRICS CHAPTER 2. API REFERENCE RPC name: get record Overview: Get a record containing the current state of the given VM metrics. Signature: (VM_metrics record) get_record (session_id s, VM_metrics ref self) Arguments: type name description self reference to the object VM metrics ref Return Type: VM metrics record all fields from the object...
2.11. CLASS: VM GUEST METRICS CHAPTER 2. API REFERENCE 2.11 Class: VM guest metrics 2.11.1 Fields for class: VM guest metrics Name VM guest metrics Description The metrics reported by the guest (as opposed to inferred from outside). Quals Field Type Description string...
Page 106
2.11. CLASS: VM GUEST METRICS CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object VM guest metrics ref Return Type: string value of the field RPC name: get os version Overview: Get the os version field of the given VM guest metrics. Signature: ((string ->...
Page 107
2.11. CLASS: VM GUEST METRICS CHAPTER 2. API REFERENCE Return Type: bool value of the field RPC name: get memory Overview: Get the memory field of the given VM guest metrics. Signature: ((string -> string) Map) get_memory (session_id s, VM_guest_metrics ref self) Arguments: type name...
Page 108
2.11. CLASS: VM GUEST METRICS CHAPTER 2. API REFERENCE RPC name: get other Overview: Get the other field of the given VM guest metrics. Signature: ((string -> string) Map) get_other (session_id s, VM_guest_metrics ref self) Arguments: type name description self reference to the object VM guest metrics ref Return Type: (string →...
Page 109
2.11. CLASS: VM GUEST METRICS CHAPTER 2. API REFERENCE RPC name: get record Overview: Get a record containing the current state of the given VM guest metrics. Signature: (VM_guest_metrics record) get_record (session_id s, VM_guest_metrics ref self) Arguments: type name description self reference to the object VM guest metrics ref...
2.12. CLASS: HOST CHAPTER 2. API REFERENCE 2.12 Class: host 2.12.1 Fields for class: host Name host Description A physical host. Quals Field Type Description string unique identifier/object uuid string a human-readable name name/label string notes field contai name/description readable description (host allowed operations) Set list of the operations al allowed operations...
2.12. CLASS: HOST CHAPTER 2. API REFERENCE Free memory on host at boot free mem 2.12.2 RPCs associated with class: host 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.
Page 112
2.12. CLASS: HOST CHAPTER 2. API REFERENCE 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_id s, host ref host) Arguments: type name...
Page 113
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get log Overview: Get the host’s log file. Signature: string get_log (session_id s, host ref host) Arguments: type name description host The Host to query host ref Return Type: string The contents of the host’s primary log file RPC name: send debug keys Overview: Inject the given string as debugging keys into Xen.
Page 114
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: list methods Overview: List all supported methods. Signature: (string Set) list_methods (session_id s) Return Type: string Set The name of every supported method. RPC name: license apply Overview: Apply a new license to a host. Signature: void license_apply (session_id s, host ref host, string contents) Arguments:...
Page 115
2.12. CLASS: HOST CHAPTER 2. API REFERENCE Arguments: type name description host The host to evacuate host ref Return Type: void RPC name: evacuate Overview: Disable the host and Migrate all VMs off of it, where possible. Signature: void evacuate (session_id s, host ref host) Arguments: type name...
Page 116
2.12. CLASS: HOST CHAPTER 2. API REFERENCE 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_id s, string interface) Arguments: type name...
Page 117
2.12. CLASS: HOST CHAPTER 2. API REFERENCE Arguments: type name description host The host whose host name to set host ref hostname The new host name string Return Type: void RPC name: get all Overview: Return a list of all the hosts known to the system. Signature: ((host ref) Set) get_all (session_id s) Return Type: (host ref) Set...
Page 118
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get name label Overview: Get the name/label field of the given host. Signature: string get_name_label (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: string value of the field RPC name: set name label...
Page 119
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: set name description Overview: Set the name/description field of the given host. Signature: void set_name_description (session_id s, host ref self, string value) Arguments: type name description self reference to the object host ref value New value to set...
Page 120
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get API version major Overview: Get the API version/major field of the given host. Signature: int get_API_version_major (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: int value of the field...
Page 121
2.12. CLASS: HOST CHAPTER 2. API REFERENCE 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_id s, host ref self) Arguments: type name description self reference to the object host ref...
Page 122
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given host. Signature: ((string -> string) Map) get_other_config (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: (string →...
Page 123
2.12. CLASS: HOST CHAPTER 2. API REFERENCE 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_id s, host ref self, string key) Arguments:...
Page 124
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get sched policy Overview: Get the sched policy field of the given host. Signature: string get_sched_policy (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: string value of the field RPC name: get supported bootloaders...
Page 125
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get logging Overview: Get the logging field of the given host. Signature: ((string -> string) Map) get_logging (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: (string →...
Page 126
2.12. CLASS: HOST CHAPTER 2. API REFERENCE 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_id s, host ref self, string key) Arguments:...
Page 127
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: set suspend image sr Overview: Set the suspend image sr field of the given host. Signature: void set_suspend_image_sr (session_id s, host ref self, SR ref value) Arguments: type name description self reference to the object host ref value...
Page 128
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get crashdumps Overview: Get the crashdumps field of the given host. Signature: ((host_crashdump ref) Set) get_crashdumps (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: (host crashdump ref) Set value of the field RPC name: get patches...
Page 129
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get host CPUs Overview: Get the host CPUs field of the given host. Signature: ((host_cpu ref) Set) get_host_CPUs (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: (host cpu ref) Set value of the field...
Page 130
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get address Overview: Get the address field of the given host. Signature: string get_address (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: string value of the field RPC name: set address Overview:...
Page 131
2.12. CLASS: HOST CHAPTER 2. API REFERENCE RPC name: get license params Overview: Get the license params field of the given host. Signature: ((string -> string) Map) get_license_params (session_id s, host ref self) Arguments: type name description self reference to the object host ref Return Type: (string →...
Page 132
2.12. CLASS: HOST CHAPTER 2. API REFERENCE 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_id s, string label) Arguments: type name description label label of object to return string Return Type: (host ref) Set references to objects with matching names...
2.13. CLASS: HOST CRASHDUMP CHAPTER 2. API REFERENCE 2.13 Class: host crashdump 2.13.1 Fields for class: host crashdump Name host crashdump Description Represents a host crash dump. Quals Field Type Description string unique identifier/object reference uuid host ref Host the crashdump relates to host datetime Time the crash happened...
Page 134
2.13. CLASS: HOST CRASHDUMP CHAPTER 2. API REFERENCE ((host_crashdump ref) Set) get_all (session_id s) Return Type: (host crashdump ref) Set references to all objects 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.
Page 135
2.13. CLASS: HOST CRASHDUMP CHAPTER 2. API REFERENCE RPC name: get timestamp Overview: Get the timestamp field of the given host crashdump. Signature: datetime get_timestamp (session_id s, host_crashdump ref self) Arguments: type name description self reference to the object host crashdump ref Return Type: datetime value of the field RPC name: get size...
Page 136
2.13. CLASS: HOST CRASHDUMP CHAPTER 2. API REFERENCE RPC name: set other config Overview: Set the other config field of the given host crashdump. Signature: void set_other_config (session_id s, host_crashdump ref self, (string -> string) Map value) Arguments: type name description self reference to the object...
Page 137
2.13. CLASS: HOST CRASHDUMP CHAPTER 2. API REFERENCE 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_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: host crashdump ref reference to the object...
2.14. CLASS: HOST PATCH CHAPTER 2. API REFERENCE 2.14 Class: host patch 2.14.1 Fields for class: host patch Name host patch Description Represents a patch stored on a server. Quals Field Type Description string unique identifier/object reference uuid string a human-readable name name/label string notes...
Page 139
2.14. CLASS: HOST PATCH CHAPTER 2. API REFERENCE RPC name: get all Overview: Return a list of all the host patchs known to the system. Signature: ((host_patch ref) Set) get_all (session_id s) Return Type: (host patch ref) Set references to all objects RPC name: get all records Overview: Return a map of host patch references to host patch records for all host patchs known to the...
Page 140
2.14. CLASS: HOST PATCH CHAPTER 2. API REFERENCE Return Type: string value of the field RPC name: get name description Overview: Get the name/description field of the given host patch. Signature: string get_name_description (session_id s, host_patch ref self) Arguments: type name description self...
Page 141
2.14. CLASS: HOST PATCH CHAPTER 2. API REFERENCE RPC name: get applied Overview: Get the applied field of the given host patch. Signature: bool get_applied (session_id s, host_patch ref self) Arguments: type name description self reference to the object host patch ref Return Type: bool value of the field RPC name: get timestamp applied...
Page 142
2.14. CLASS: HOST PATCH CHAPTER 2. API REFERENCE RPC name: get pool patch Overview: Get the pool patch field of the given host patch. Signature: (pool_patch ref) get_pool_patch (session_id s, host_patch ref self) Arguments: type name description self reference to the object host patch ref Return Type: pool patch ref value of the field...
Page 143
2.14. CLASS: HOST PATCH CHAPTER 2. API REFERENCE RPC name: add to other config Overview: Add the given key-value pair to the other config field of the given host patch. Signature: void add_to_other_config (session_id s, host_patch ref self, string key, string value) Arguments: type name...
Page 144
2.14. CLASS: HOST PATCH CHAPTER 2. API REFERENCE RPC name: get record Overview: Get a record containing the current state of the given host patch. Signature: (host_patch record) get_record (session_id s, host_patch ref self) Arguments: type name description self reference to the object host patch ref Return Type: host patch record all fields from the object...
2.15. CLASS: HOST METRICS CHAPTER 2. API REFERENCE 2.15 Class: host metrics 2.15.1 Fields for class: host metrics Name host metrics Description The metrics associated with a host. Quals Field Type Description string unique identifier/object reference uuid Host’s total memory (bytes) memory/total Host’s free memory (bytes) memory/free...
Page 146
2.15. CLASS: HOST METRICS CHAPTER 2. API REFERENCE Return Type: string 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_id s, host_metrics ref self) Arguments: type name description self...
Page 147
2.15. CLASS: HOST METRICS CHAPTER 2. API REFERENCE RPC name: get last updated Overview: Get the last updated field of the given host metrics. Signature: datetime get_last_updated (session_id s, host_metrics ref self) Arguments: type name description self reference to the object host metrics ref Return Type: datetime value of the field...
2.16. CLASS: HOST CPU CHAPTER 2. API REFERENCE 2.16 Class: host cpu 2.16.1 Fields for class: host cpu Name host cpu Description A physical CPU. Quals Field Type Description string unique identifier/object reference uuid host ref the host the CPU is in host the number of the physical CPU number...
Page 149
2.16. CLASS: HOST CPU CHAPTER 2. API REFERENCE RPC name: get uuid Overview: Get the uuid field of the given host cpu. Signature: string get_uuid (session_id s, host_cpu ref self) Arguments: type name description self reference to the object host cpu ref Return Type: string value of the field RPC name: get host...
Page 150
2.16. CLASS: HOST CPU CHAPTER 2. API REFERENCE RPC name: get vendor Overview: Get the vendor field of the given host cpu. Signature: string get_vendor (session_id s, host_cpu ref self) Arguments: type name description self reference to the object host cpu ref Return Type: string value of the field RPC name: get speed...
Page 151
2.16. CLASS: HOST CPU CHAPTER 2. API REFERENCE RPC name: get family Overview: Get the family field of the given host cpu. Signature: int get_family (session_id s, host_cpu ref self) Arguments: type name description self reference to the object host cpu ref Return Type: int value of the field RPC name: get model...
Page 152
2.16. CLASS: HOST CPU CHAPTER 2. API REFERENCE RPC name: get flags Overview: Get the flags field of the given host cpu. Signature: string get_flags (session_id s, host_cpu ref self) Arguments: type name description self reference to the object host cpu ref Return Type: string value of the field RPC name: get features...
Page 153
2.16. CLASS: HOST CPU CHAPTER 2. API REFERENCE RPC name: get by uuid Overview: Get a reference to the host cpu instance with the specified UUID. Signature: (host_cpu ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: host cpu ref reference to the object...
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE 2.17 Class: network 2.17.1 Fields for class: network Name network Description A virtual network. Quals Field Type Description string unique identifier/object reference uuid string a human-readable name name/label string notes field containg human- name/description readable description allowed operations...
Page 155
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE RPC name: get uuid Overview: Get the uuid field of the given network. Signature: string get_uuid (session_id s, network ref self) Arguments: type name description self reference to the object network ref Return Type: string value of the field RPC name: get name label Overview:...
Page 156
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE RPC name: get name description Overview: Get the name/description field of the given network. Signature: string get_name_description (session_id s, network ref self) Arguments: type name description self reference to the object network ref Return Type: string value of the field RPC name: set name description...
Page 157
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE RPC name: get current operations Overview: Get the current operations field of the given network. Signature: ((string -> network_operations) Map) get_current_operations (session_id s, network ref self) Arguments: type name description self reference to the object network ref Return Type: (string →...
Page 158
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given network. Signature: ((string -> string) Map) get_other_config (session_id s, network ref self) Arguments: type name description self reference to the object network ref Return Type: (string →...
Page 159
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE 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_id s, network ref self, string key) Arguments:...
Page 160
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE RPC name: destroy Overview: Destroy the specified network instance. Signature: void destroy (session_id s, network ref self) Arguments: type name description self reference to the object network ref Return Type: void RPC name: get by uuid Overview: Get a reference to the network instance with the specified UUID.
Page 161
2.17. CLASS: NETWORK CHAPTER 2. API REFERENCE ((network ref) Set) get_by_name_label (session_id s, string label) Arguments: type name description label label of object to return string Return Type: (network ref) Set references to objects with matching names...
2.18. CLASS: VIF CHAPTER 2. API REFERENCE 2.18 Class: VIF 2.18.1 Fields for class: VIF Name Description A virtual network interface. Quals Field Type Description string unique identifier/object reference uuid (vif operations) Set list of the operations allowed in this allowed operations state.
Page 163
2.18. CLASS: VIF CHAPTER 2. API REFERENCE type name description self The VIF to hotplug VIF ref Return Type: void RPC name: unplug Overview: Hot-unplug the specified VIF, dynamically unattaching it from the running VM. Signature: void unplug (session_id s, VIF ref self) Arguments: type name...
Page 164
2.18. CLASS: VIF CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object VIF ref Return Type: string value of the field RPC name: get allowed operations Overview: Get the allowed operations field of the given VIF. Signature: ((vif_operations) Set) get_allowed_operations (session_id s, VIF ref self) Arguments:...
Page 165
2.18. CLASS: VIF CHAPTER 2. API REFERENCE Return Type: string value of the field RPC name: get network Overview: Get the network field of the given VIF. Signature: (network ref) get_network (session_id s, VIF ref self) Arguments: type name description self reference to the object VIF ref...
Page 166
2.18. CLASS: VIF CHAPTER 2. API REFERENCE RPC name: get MTU Overview: Get the MTU field of the given VIF. Signature: int get_MTU (session_id s, VIF ref self) Arguments: type name description self reference to the object VIF ref Return Type: int value of the field RPC name: get other config Overview:...
Page 167
2.18. CLASS: VIF CHAPTER 2. API REFERENCE RPC name: add to other config Overview: Add the given key-value pair to the other config field of the given VIF. Signature: void add_to_other_config (session_id s, VIF ref self, string key, string value) Arguments: type name...
Page 168
2.18. CLASS: VIF CHAPTER 2. API REFERENCE RPC name: get status code Overview: Get the status code field of the given VIF. Signature: int get_status_code (session_id s, VIF ref self) Arguments: type name description self reference to the object VIF ref Return Type: int value of the field RPC name: get status detail...
Page 169
2.18. CLASS: VIF CHAPTER 2. API REFERENCE RPC name: get qos algorithm type Overview: Get the qos/algorithm type field of the given VIF. Signature: string get_qos_algorithm_type (session_id s, VIF ref self) Arguments: type name description self reference to the object VIF ref Return Type: string value of the field...
Page 170
2.18. CLASS: VIF CHAPTER 2. API REFERENCE RPC name: set qos algorithm params Overview: Set the qos/algorithm params field of the given VIF. Signature: void set_qos_algorithm_params (session_id s, VIF ref self, (string -> string) Map value) Arguments: type name description self reference to the object VIF ref...
Page 171
2.18. CLASS: VIF CHAPTER 2. API REFERENCE RPC name: get qos supported algorithms Overview: Get the qos/supported algorithms field of the given VIF. Signature: (string Set) get_qos_supported_algorithms (session_id s, VIF ref self) Arguments: type name description self reference to the object VIF ref Return Type: string Set value of the field...
Page 172
2.18. CLASS: VIF CHAPTER 2. API REFERENCE RPC name: destroy Overview: Destroy the specified VIF instance. Signature: void destroy (session_id s, VIF ref self) Arguments: type name description self reference to the object VIF ref Return Type: void RPC name: get by uuid Overview: Get a reference to the VIF instance with the specified UUID.
2.19. CLASS: VIF METRICS CHAPTER 2. API REFERENCE 2.19 Class: VIF metrics 2.19.1 Fields for class: VIF metrics Name VIF metrics Description The metrics associated with a virtual network device. Quals Field Type Description string unique identifier/object reference uuid float Read bandwidth (KiB/s) io/read kbs float...
Page 174
2.19. CLASS: VIF METRICS CHAPTER 2. API REFERENCE value of the field RPC name: get io read kbs Overview: Get the io/read kbs field of the given VIF metrics. Signature: float get_io_read_kbs (session_id s, VIF_metrics ref self) Arguments: type name description self reference to the object...
Page 175
2.19. CLASS: VIF METRICS CHAPTER 2. API REFERENCE RPC name: get by uuid Overview: Get a reference to the VIF metrics instance with the specified UUID. Signature: (VIF_metrics ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: VIF metrics ref reference to the object...
2.20. CLASS: PIF CHAPTER 2. API REFERENCE 2.20 Class: PIF 2.20.1 Fields for class: PIF Name A physical network interface (note separate VLANs are represented as Description several PIFs). Quals Field Type Description string unique identifier/object reference uuid string machine-readable name of the inter- device face (e.g.
Page 177
2.20. CLASS: PIF CHAPTER 2. API REFERENCE type name description device physical interface on which to create the string VLAN interface network network to which this interface should be con- network ref nected host physical machine to which this PIF is con- host ref nected VLAN...
Page 178
2.20. CLASS: PIF CHAPTER 2. API REFERENCE RPC name: scan Overview: Scan for physical interfaces on a host and create PIF objects to represent them. Signature: void scan (session_id s, host ref host) Arguments: type name description host The host on which to scan host ref Return Type: void RPC name: introduce...
Page 179
2.20. CLASS: PIF CHAPTER 2. API REFERENCE RPC name: get all Overview: Return a list of all the PIFs known to the system. Signature: ((PIF ref) Set) get_all (session_id s) Return Type: (PIF ref) Set references to all objects RPC name: get all records Overview: Return a map of PIF references to PIF records for all PIFs known to the system.
Page 180
2.20. CLASS: PIF CHAPTER 2. API REFERENCE value of the field RPC name: get network Overview: Get the network field of the given PIF. Signature: (network ref) get_network (session_id s, PIF ref self) Arguments: type name description self reference to the object PIF ref Return Type: network ref value of the field...
Page 181
2.20. CLASS: PIF CHAPTER 2. API REFERENCE RPC name: get MTU Overview: Get the MTU field of the given PIF. Signature: int get_MTU (session_id s, PIF ref self) Arguments: type name description self reference to the object PIF ref Return Type: int value of the field RPC name: get VLAN Overview:...
Page 182
2.20. CLASS: PIF CHAPTER 2. API REFERENCE RPC name: get physical Overview: Get the physical field of the given PIF. Signature: bool get_physical (session_id s, PIF ref self) Arguments: type name description self reference to the object PIF ref Return Type: bool value of the field RPC name: get currently attached Overview:...
Page 183
2.20. CLASS: PIF CHAPTER 2. API REFERENCE RPC name: get IP Overview: Get the IP field of the given PIF. Signature: string get_IP (session_id s, PIF ref self) Arguments: type name description self reference to the object PIF ref Return Type: string value of the field RPC name: get netmask Overview:...
Page 184
2.20. CLASS: PIF CHAPTER 2. API REFERENCE RPC name: get DNS Overview: Get the DNS field of the given PIF. Signature: string get_DNS (session_id s, PIF ref self) Arguments: type name description self reference to the object PIF ref Return Type: string value of the field RPC name: get bond slave of Overview:...
Page 185
2.20. CLASS: PIF CHAPTER 2. API REFERENCE 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_id s, PIF ref self) Arguments: type name description self reference to the object PIF ref Return Type: VLAN ref value of the field...
Page 186
2.20. CLASS: PIF CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given PIF. Signature: ((string -> string) Map) get_other_config (session_id s, PIF ref self) Arguments: type name description self reference to the object PIF ref Return Type: (string →...
Page 187
2.20. CLASS: PIF CHAPTER 2. API REFERENCE 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_id s, PIF ref self, string key) Arguments:...
2.21. CLASS: PIF METRICS CHAPTER 2. API REFERENCE 2.21 Class: PIF metrics 2.21.1 Fields for class: PIF metrics Name PIF metrics Description The metrics associated with a physical network interface. Quals Field Type Description string unique identifier/object reference uuid float Read bandwidth (KiB/s) io/read kbs float...
Page 189
2.21. CLASS: PIF METRICS CHAPTER 2. API REFERENCE RPC name: get uuid Overview: Get the uuid field of the given PIF metrics. Signature: string get_uuid (session_id s, PIF_metrics ref self) Arguments: type name description self reference to the object PIF metrics ref Return Type: string value of the field RPC name: get io read kbs...
Page 190
2.21. CLASS: PIF METRICS CHAPTER 2. API REFERENCE RPC name: get carrier Overview: Get the carrier field of the given PIF metrics. Signature: bool get_carrier (session_id s, PIF_metrics ref self) Arguments: type name description self reference to the object PIF metrics ref Return Type: bool value of the field RPC name: get vendor id...
Page 191
2.21. CLASS: PIF METRICS CHAPTER 2. API REFERENCE RPC name: get device id Overview: Get the device id field of the given PIF metrics. Signature: string get_device_id (session_id s, PIF_metrics ref self) Arguments: type name description self reference to the object PIF metrics ref Return Type: string value of the field...
Page 192
2.21. CLASS: PIF METRICS CHAPTER 2. API REFERENCE RPC name: get duplex Overview: Get the duplex field of the given PIF metrics. Signature: bool get_duplex (session_id s, PIF_metrics ref self) Arguments: type name description self reference to the object PIF metrics ref Return Type: bool value of the field RPC name: get pci bus path...
Page 193
2.21. CLASS: PIF METRICS CHAPTER 2. API REFERENCE 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_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: PIF metrics ref reference to the object...
2.22. CLASS: BOND CHAPTER 2. API REFERENCE 2.22 Class: Bond 2.22.1 Fields for class: Bond Name Bond Description Quals Field Type Description string unique identifier/object reference uuid PIF ref The bonded interface master (PIF ref) Set The interfaces which are part of this slaves bond other config...
Page 195
2.22. CLASS: BOND CHAPTER 2. API REFERENCE RPC name: get all Overview: Return a list of all the Bonds known to the system. Signature: ((Bond ref) Set) get_all (session_id s) Return Type: (Bond ref) Set references to all objects RPC name: get all records Overview: Return a map of Bond references to Bond records for all Bonds known to the system.
Page 196
2.22. CLASS: BOND CHAPTER 2. API REFERENCE value of the field RPC name: get slaves Overview: Get the slaves field of the given Bond. Signature: ((PIF ref) Set) get_slaves (session_id s, Bond ref self) Arguments: type name description self reference to the object Bond ref Return Type: (PIF ref) Set value of the field...
Page 197
2.22. CLASS: BOND CHAPTER 2. API REFERENCE 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_id s, Bond ref self, string key, string value) Arguments: type name...
Page 198
2.22. CLASS: BOND CHAPTER 2. API REFERENCE RPC name: get record Overview: Get a record containing the current state of the given Bond. Signature: (Bond record) get_record (session_id s, Bond ref self) Arguments: type name description self reference to the object Bond ref Return Type: Bond record all fields from the object...
2.23. CLASS: VLAN CHAPTER 2. API REFERENCE 2.23 Class: VLAN 2.23.1 Fields for class: VLAN Name VLAN Description A VLAN mux/demux. Quals Field Type Description string unique identifier/object reference uuid PIF ref interface on which traffic is tagged tagged PIF PIF ref interface on which traffic is untagged untagged PIF...
Page 200
2.23. CLASS: VLAN CHAPTER 2. API REFERENCE ((VLAN ref) Set) get_all (session_id s) Return Type: (VLAN ref) Set references to all objects RPC name: get all records Overview: Return a map of VLAN references to VLAN records for all VLANs known to the system. Signature: ((VLAN ref ->...
Page 201
2.23. CLASS: VLAN CHAPTER 2. API REFERENCE RPC name: get untagged PIF Overview: Get the untagged PIF field of the given VLAN. Signature: (PIF ref) get_untagged_PIF (session_id s, VLAN ref self) Arguments: type name description self reference to the object VLAN ref Return Type: PIF ref value of the field...
Page 202
2.23. CLASS: VLAN CHAPTER 2. API REFERENCE RPC name: set other config Overview: Set the other config field of the given VLAN. Signature: void set_other_config (session_id s, VLAN ref self, (string -> string) Map value) Arguments: type name description self reference to the object VLAN ref (string →...
Page 203
2.23. CLASS: VLAN CHAPTER 2. API REFERENCE RPC name: get by uuid Overview: Get a reference to the VLAN instance with the specified UUID. Signature: (VLAN ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: VLAN ref reference to the object...
2.24. CLASS: SM CHAPTER 2. API REFERENCE 2.24 Class: SM 2.24.1 Fields for class: SM Name Description A storage manager plugin. Quals Field Type Description string unique identifier/object reference uuid string a human-readable name name/label string notes field containg human- name/description readable description type...
Page 205
2.24. CLASS: SM CHAPTER 2. API REFERENCE RPC name: get uuid Overview: Get the uuid field of the given SM. Signature: string get_uuid (session_id s, SM ref self) Arguments: type name description self reference to the object SM ref Return Type: string value of the field RPC name: get name label Overview:...
Page 206
2.24. CLASS: SM CHAPTER 2. API REFERENCE RPC name: get type Overview: Get the type field of the given SM. Signature: string get_type (session_id s, SM ref self) Arguments: type name description self reference to the object SM ref Return Type: string value of the field RPC name: get vendor Overview:...
Page 207
2.24. CLASS: SM CHAPTER 2. API REFERENCE RPC name: get version Overview: Get the version field of the given SM. Signature: string get_version (session_id s, SM ref self) Arguments: type name description self reference to the object SM ref Return Type: string value of the field RPC name: get required api version Overview:...
Page 208
2.24. CLASS: SM CHAPTER 2. API REFERENCE RPC name: get capabilities Overview: Get the capabilities field of the given SM. Signature: (string Set) get_capabilities (session_id s, SM ref self) Arguments: type name description self reference to the object SM ref Return Type: string Set value of the field RPC name: get other config...
Page 209
2.24. CLASS: SM CHAPTER 2. API REFERENCE 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_id s, SM ref self, string key, string value) Arguments: type name...
Page 210
2.24. CLASS: SM CHAPTER 2. API REFERENCE RPC name: get record Overview: Get a record containing the current state of the given SM. Signature: (SM record) get_record (session_id s, SM ref self) Arguments: type name description self reference to the object SM ref Return Type: SM record all fields from the object...
2.25. CLASS: SR CHAPTER 2. API REFERENCE 2.25 Class: SR 2.25.1 Fields for class: SR Name Description A storage repository. Quals Field Type Description string unique identifier/object reference uuid string a human-readable name name/label string notes field containg human- name/description readable description (storage operations) Set list of the operations allowed in this...
Page 212
2.25. CLASS: SR CHAPTER 2. API REFERENCE type name description host The host to create/make the SR on host ref device config The device config string that will be passed to (string → string) Map backend SR driver physical size The physical size of the new storage repository name label The name of the new storage repository...
Page 213
2.25. CLASS: SR CHAPTER 2. API REFERENCE Arguments: type name description host The host to create/make the SR on host ref (string → string) Map device config The device config string that will be passed to backend SR driver physical size The physical size of the new storage repository name label The name of the new storage repository...
Page 214
2.25. CLASS: SR CHAPTER 2. API REFERENCE 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_id s) Return Type: string Set the supported SR types RPC name: scan Overview: Refreshes the list of VDIs associated with an SR.
Page 215
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: set shared Overview: Sets the shared flag on the SR. Signature: void set_shared (session_id s, SR ref sr, bool value) Arguments: type name description The SR SR ref value True if the SR is shared bool Return Type: void RPC name: set physical size...
Page 216
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: set physical utilisation Overview: Sets the SR’s physical utilisation field. Signature: void set_physical_utilisation (session_id s, SR ref self, int value) Arguments: type name description self The SR to modify SR ref value The new value of the SR’s physical utilisation Return Type: void...
Page 217
2.25. CLASS: SR CHAPTER 2. API REFERENCE 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_id s, SR ref self) Arguments: type name description self reference to the object SR ref Return Type: string value of the field...
Page 218
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: set name description Overview: Set the name/description field of the given SR. Signature: void set_name_description (session_id s, SR ref self, string value) Arguments: type name description self reference to the object SR ref value New value to set...
Page 219
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: get VDIs Overview: Get the VDIs field of the given SR. Signature: ((VDI ref) Set) get_VDIs (session_id s, SR ref self) Arguments: type name description self reference to the object SR ref Return Type: (VDI ref) Set value of the field RPC name: get PBDs...
Page 220
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: get physical utilisation Overview: Get the physical utilisation field of the given SR. Signature: int get_physical_utilisation (session_id s, SR ref self) Arguments: type name description self reference to the object SR ref Return Type: int value of the field RPC name: get physical size...
Page 221
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: get content type Overview: Get the content type field of the given SR. Signature: string get_content_type (session_id s, SR ref self) Arguments: type name description self reference to the object SR ref Return Type: string value of the field RPC name: get shared...
Page 222
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: set other config Overview: Set the other config field of the given SR. Signature: void set_other_config (session_id s, SR ref self, (string -> string) Map value) Arguments: type name description self reference to the object SR ref (string →...
Page 223
2.25. CLASS: SR CHAPTER 2. API REFERENCE RPC name: get sm config Overview: Get the sm config field of the given SR. Signature: ((string -> string) Map) get_sm_config (session_id s, SR ref self) Arguments: type name description self reference to the object SR ref Return Type: (string →...
Page 224
2.25. CLASS: SR CHAPTER 2. API REFERENCE 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_id s, SR ref self, string key) Arguments:...
Page 225
2.25. CLASS: SR CHAPTER 2. API REFERENCE 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_id s, string label) Arguments: type name description label label of object to return string Return Type: (SR ref) Set references to objects with matching names...
2.26. CLASS: VDI CHAPTER 2. API REFERENCE 2.26 Class: VDI 2.26.1 Fields for class: VDI Name Description A virtual disk image. Quals Field Type Description string unique identifier/object reference uuid string a human-readable name name/label string notes field containg human- name/description readable description (vdi operations) Set...
2.26. CLASS: VDI CHAPTER 2. API REFERENCE 2.26.2 RPCs associated with class: VDI RPC name: snapshot Overview: Take a read-only snapshot of the VDI, returning a reference to the snapshot. If any driver params are specified then these are passed through to the storage-specific substrate driver that takes the snapshot.
Page 228
2.26. CLASS: VDI CHAPTER 2. API REFERENCE Arguments: type name description The VDI to resize VDI ref size The new size of the VDI Return Type: void RPC name: introduce Overview: Create a new VDI record in the database only. Signature: (VDI ref) introduce (session_id s, string uuid, string name_label, string name_description, SR ref SR, Arguments:...
Page 229
2.26. CLASS: VDI CHAPTER 2. API REFERENCE type name description uuid The uuid of the disk to introduce string name label The name of the disk record string name description The description of the disk record string The SR that the VDI is in SR ref type The type of the VDI...
Page 230
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: set managed Overview: Sets the VDI’s managed field. Signature: void set_managed (session_id s, VDI ref self, bool value) Arguments: type name description self The VDI to modify VDI ref value The new value of the VDI’s managed field bool Return Type: void RPC name: forget...
Page 231
2.26. CLASS: VDI CHAPTER 2. API REFERENCE void set_missing (session_id s, VDI ref self, bool value) Arguments: type name description self The VDI to modify VDI ref value The new value of the VDI’s missing field bool Return Type: void RPC name: set virtual size Overview: Sets the VDI’s virtual size field.
Page 232
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: get all records Overview: Return a map of VDI references to VDI records for all VDIs known to the system. Signature: ((VDI ref -> VDI record) Map) get_all_records (session_id s) Return Type: (VDI ref → VDI record) Map records of all objects RPC name: get uuid Overview:...
Page 233
2.26. CLASS: VDI CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object VDI ref value New value to set string Return Type: void RPC name: get name description Overview: Get the name/description field of the given VDI. Signature: string get_name_description (session_id s, VDI ref self) Arguments:...
Page 234
2.26. CLASS: VDI CHAPTER 2. API REFERENCE Return Type: (vdi operations) Set value of the field RPC name: get current operations Overview: Get the current operations field of the given VDI. Signature: ((string -> vdi_operations) Map) get_current_operations (session_id s, VDI ref self) Arguments: type name...
Page 235
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: get crash dumps Overview: Get the crash dumps field of the given VDI. Signature: ((crashdump ref) Set) get_crash_dumps (session_id s, VDI ref self) Arguments: type name description self reference to the object VDI ref Return Type: (crashdump ref) Set value of the field...
Page 236
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: get type Overview: Get the type field of the given VDI. Signature: (vdi_type) get_type (session_id s, VDI ref self) Arguments: type name description self reference to the object VDI ref Return Type: vdi type value of the field RPC name: get sharable Overview:...
Page 237
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: get read only Overview: Get the read only field of the given VDI. Signature: bool get_read_only (session_id s, VDI ref self) Arguments: type name description self reference to the object VDI ref Return Type: bool value of the field RPC name: get other config...
Page 238
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: add to other config Overview: Add the given key-value pair to the other config field of the given VDI. Signature: void add_to_other_config (session_id s, VDI ref self, string key, string value) Arguments: type name...
Page 239
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: get location Overview: Get the location field of the given VDI. Signature: string get_location (session_id s, VDI ref self) Arguments: type name description self reference to the object VDI ref Return Type: string value of the field RPC name: get managed Overview:...
Page 240
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: get parent Overview: Get the parent field of the given VDI. Signature: (VDI ref) get_parent (session_id s, VDI ref self) Arguments: type name description self reference to the object VDI ref Return Type: VDI ref value of the field RPC name: get xenstore data...
Page 241
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: add to xenstore data Overview: Add the given key-value pair to the xenstore data field of the given VDI. Signature: void add_to_xenstore_data (session_id s, VDI ref self, string key, string value) Arguments: type name...
Page 242
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: set sm config Overview: Set the sm config field of the given VDI. Signature: void set_sm_config (session_id s, VDI ref self, (string -> string) Map value) Arguments: type name description self reference to the object VDI ref (string →...
Page 243
2.26. CLASS: VDI CHAPTER 2. API REFERENCE RPC name: create Overview: Create a new VDI instance, and return its handle. Signature: (VDI ref) create (session_id s, VDI record args) Arguments: type name description args All constructor arguments VDI record Return Type: VDI ref reference to the newly created object RPC name: destroy Overview:...
Page 244
2.26. CLASS: VDI CHAPTER 2. API REFERENCE (VDI record) get_record (session_id s, VDI ref self) Arguments: type name description self reference to the object VDI ref Return Type: VDI record all fields from the object RPC name: get by name label Overview: Get all the VDI instances with the given label.
2.27. CLASS: VBD CHAPTER 2. API REFERENCE 2.27 Class: VBD 2.27.1 Fields for class: VBD Name Description A virtual block device. Quals Field Type Description string unique identifier/object reference uuid (vbd operations) Set list of the operations allowed in this allowed operations state.
Page 246
2.27. CLASS: VBD CHAPTER 2. API REFERENCE Remove the media from the device and leave it empty. Signature: void eject (session_id s, VBD ref vbd) Arguments: type name description The vbd representing the CDROM-like device VBD ref Return Type: void Possible Error Codes: VBD NOT REMOVABLE MEDIA, VBD IS EMPTY RPC name: insert Overview:...
Page 247
2.27. CLASS: VBD CHAPTER 2. API REFERENCE Arguments: type name description self The VBD to hot-unplug VBD ref Return Type: void Possible Error Codes: DEVICE DETACH REJECTED, DEVICE ALREADY DETACHED RPC name: unplug force Overview: Forcibly unplug the specified VBD. Signature: void unplug_force (session_id s, VBD ref self) Arguments:...
Page 248
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: get all records Overview: Return a map of VBD references to VBD records for all VBDs known to the system. Signature: ((VBD ref -> VBD record) Map) get_all_records (session_id s) Return Type: (VBD ref → VBD record) Map records of all objects RPC name: get uuid Overview:...
Page 249
2.27. CLASS: VBD CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object VBD ref Return Type: (string → vbd operations) Map value of the field RPC name: get VM Overview: Get the VM field of the given VBD. Signature: (VM ref) get_VM (session_id s, VBD ref self) Arguments:...
Page 250
2.27. CLASS: VBD CHAPTER 2. API REFERENCE Return Type: string value of the field RPC name: get userdevice Overview: Get the userdevice field of the given VBD. Signature: string get_userdevice (session_id s, VBD ref self) Arguments: type name description self reference to the object VBD ref Return Type: string...
Page 251
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: set bootable Overview: Set the bootable field of the given VBD. Signature: void set_bootable (session_id s, VBD ref self, bool value) Arguments: type name description self reference to the object VBD ref value New value to set bool...
Page 252
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: get type Overview: Get the type field of the given VBD. Signature: (vbd_type) get_type (session_id s, VBD ref self) Arguments: type name description self reference to the object VBD ref Return Type: vbd type value of the field RPC name: set type Overview:...
Page 253
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: set unpluggable Overview: Set the unpluggable field of the given VBD. Signature: void set_unpluggable (session_id s, VBD ref self, bool value) Arguments: type name description self reference to the object VBD ref value New value to set bool...
Page 254
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given VBD. Signature: ((string -> string) Map) get_other_config (session_id s, VBD ref self) Arguments: type name description self reference to the object VBD ref Return Type: (string →...
Page 255
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: remove from other config Overview: Remove the given key and its corresponding value from the other config field of the given VBD. If the key is not in that Map, then do nothing. Signature: void remove_from_other_config (session_id s, VBD ref self, string key) Arguments:...
Page 256
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: get status detail Overview: Get the status detail field of the given VBD. Signature: string get_status_detail (session_id s, VBD ref self) Arguments: type name description self reference to the object VBD ref Return Type: string value of the field RPC name: get runtime properties...
Page 257
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: set qos algorithm type Overview: Set the qos/algorithm type field of the given VBD. Signature: void set_qos_algorithm_type (session_id s, VBD ref self, string value) Arguments: type name description self reference to the object VBD ref value New value to set...
Page 258
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: add to qos algorithm params Overview: Add the given key-value pair to the qos/algorithm params field of the given VBD. Signature: void add_to_qos_algorithm_params (session_id s, VBD ref self, string key, string value) Arguments: type name...
Page 259
2.27. CLASS: VBD CHAPTER 2. API REFERENCE RPC name: get metrics Overview: Get the metrics field of the given VBD. Signature: (VBD_metrics ref) get_metrics (session_id s, VBD ref self) Arguments: type name description self reference to the object VBD ref Return Type: VBD metrics ref value of the field RPC name: create...
Page 260
2.27. CLASS: VBD CHAPTER 2. API REFERENCE (VBD ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: VBD ref reference to the object RPC name: get record Overview: Get a record containing the current state of the given VBD. Signature: (VBD record) get_record (session_id s, VBD ref self) Arguments:...
2.28. CLASS: VBD METRICS CHAPTER 2. API REFERENCE 2.28 Class: VBD metrics 2.28.1 Fields for class: VBD metrics Name VBD metrics Description The metrics associated with a virtual block device. Quals Field Type Description string unique identifier/object reference uuid float Read bandwidth (KiB/s) io/read kbs float...
Page 262
2.28. CLASS: VBD METRICS CHAPTER 2. API REFERENCE value of the field RPC name: get io read kbs Overview: Get the io/read kbs field of the given VBD metrics. Signature: float get_io_read_kbs (session_id s, VBD_metrics ref self) Arguments: type name description self reference to the object...
Page 263
2.28. CLASS: VBD METRICS CHAPTER 2. API REFERENCE RPC name: get by uuid Overview: Get a reference to the VBD metrics instance with the specified UUID. Signature: (VBD_metrics ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: VBD metrics ref reference to the object...
2.29. CLASS: PBD CHAPTER 2. API REFERENCE 2.29 Class: PBD 2.29.1 Fields for class: PBD Name Description The physical block devices through which hosts access SRs. Quals Field Type Description string unique identifier/object reference uuid host ref physical machine on which the pbd is host available SR ref...
Page 265
2.29. CLASS: PBD CHAPTER 2. API REFERENCE RPC name: set device config Overview: Sets the PBD’s device config field. Signature: void set_device_config (session_id s, PBD ref self, (string -> string) Map value) Arguments: type name description self The PBD to modify PBD ref (string →...
Page 266
2.29. CLASS: PBD CHAPTER 2. API REFERENCE value of the field RPC name: get host Overview: Get the host field of the given PBD. Signature: (host ref) get_host (session_id s, PBD ref self) Arguments: type name description self reference to the object PBD ref Return Type: host ref value of the field...
Page 267
2.29. CLASS: PBD CHAPTER 2. API REFERENCE RPC name: get currently attached Overview: Get the currently attached field of the given PBD. Signature: bool get_currently_attached (session_id s, PBD ref self) Arguments: type name description self reference to the object PBD ref Return Type: bool value of the field RPC name: get other config...
Page 268
2.29. CLASS: PBD CHAPTER 2. API REFERENCE 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_id s, PBD ref self, string key, string value) Arguments: type name...
Page 269
2.29. CLASS: PBD CHAPTER 2. API REFERENCE RPC name: destroy Overview: Destroy the specified PBD instance. Signature: void destroy (session_id s, PBD ref self) Arguments: type name description self reference to the object PBD ref Return Type: void RPC name: get by uuid Overview: Get a reference to the PBD instance with the specified UUID.
2.30. CLASS: CRASHDUMP CHAPTER 2. API REFERENCE 2.30 Class: crashdump 2.30.1 Fields for class: crashdump Name crashdump Description A VM crashdump. Quals Field Type Description string unique identifier/object reference uuid VM ref the virtual machine VDI ref the virtual disk (string →...
Page 271
2.30. CLASS: CRASHDUMP CHAPTER 2. API REFERENCE RPC name: get uuid Overview: Get the uuid field of the given crashdump. Signature: string get_uuid (session_id s, crashdump ref self) Arguments: type name description self reference to the object crashdump ref Return Type: string value of the field RPC name: get VM Overview:...
Page 272
2.30. CLASS: CRASHDUMP CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given crashdump. Signature: ((string -> string) Map) get_other_config (session_id s, crashdump ref self) Arguments: type name description self reference to the object crashdump ref Return Type: (string →...
Page 273
2.30. CLASS: CRASHDUMP CHAPTER 2. API REFERENCE RPC name: remove from other config Overview: Remove the given key and its corresponding value from the other config field of the given crash- dump. If the key is not in that Map, then do nothing. Signature: void remove_from_other_config (session_id s, crashdump ref self, string key) Arguments:...
2.31. CLASS: VTPM CHAPTER 2. API REFERENCE 2.31 Class: VTPM 2.31.1 Fields for class: VTPM Name VTPM Description A virtual TPM device. Quals Field Type Description string unique identifier/object reference uuid VM ref the virtual machine VM ref the domain where the backend is lo- backend cated 2.31.2...
Page 275
2.31. CLASS: VTPM CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object VTPM ref Return Type: VM ref value of the field RPC name: create Overview: Create a new VTPM instance, and return its handle. Signature: (VTPM ref) create (session_id s, VTPM record args) Arguments: type...
Page 276
2.31. CLASS: VTPM CHAPTER 2. API REFERENCE reference to the object RPC name: get record Overview: Get a record containing the current state of the given VTPM. Signature: (VTPM record) get_record (session_id s, VTPM ref self) Arguments: type name description self reference to the object VTPM ref...
2.32. CLASS: CONSOLE CHAPTER 2. API REFERENCE 2.32 Class: console 2.32.1 Fields for class: console Name console Description A console. Quals Field Type Description string unique identifier/object reference uuid console protocol the protocol used by this console protocol string URI for the console service location VM ref VM to which this console is attached...
Page 278
2.32. CLASS: CONSOLE CHAPTER 2. API REFERENCE Return Type: string value of the field RPC name: get protocol Overview: Get the protocol field of the given console. Signature: (console_protocol) get_protocol (session_id s, console ref self) Arguments: type name description self reference to the object console ref Return Type: console protocol...
Page 279
2.32. CLASS: CONSOLE CHAPTER 2. API REFERENCE RPC name: get other config Overview: Get the other config field of the given console. Signature: ((string -> string) Map) get_other_config (session_id s, console ref self) Arguments: type name description self reference to the object console ref Return Type: (string →...
Page 280
2.32. CLASS: CONSOLE CHAPTER 2. API REFERENCE 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_id s, console ref self, string key) Arguments:...
Page 281
2.32. CLASS: CONSOLE CHAPTER 2. API REFERENCE RPC name: get by uuid Overview: Get a reference to the console instance with the specified UUID. Signature: (console ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: console ref reference to the object...
2.33. CLASS: USER CHAPTER 2. API REFERENCE 2.33 Class: user 2.33.1 Fields for class: user Name user Description A user of the system. Quals Field Type Description string unique identifier/object reference uuid string short name (e.g. userid) short name string full name fullname 2.33.2...
Page 283
2.33. CLASS: USER CHAPTER 2. API REFERENCE Arguments: type name description self reference to the object user ref Return Type: string value of the field RPC name: set fullname Overview: Set the fullname field of the given user. Signature: void set_fullname (session_id s, user ref self, string value) Arguments: type name...
Page 284
2.33. CLASS: USER CHAPTER 2. API REFERENCE Return Type: void RPC name: get by uuid Overview: Get a reference to the user instance with the specified UUID. Signature: (user ref) get_by_uuid (session_id s, string uuid) Arguments: type name description uuid UUID of object to return string Return Type: user ref...
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE 2.34 Error Handling When a low-level transport error occurs, or a request is malformed at the HTTP or XML-RPC level, the server may send an XML-RPC Fault response, or the client may simulate the same. The client must be prepared to handle these errors, though they may be treated as fatal.
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE 2.34.1 Error Codes BACKUP SCRIPT FAILED The backup could not be performed because the backup script failed. No parameters. BOOTLOADER FAILED The bootloader returned an error Signature: BOOTLOADER_FAILED(vm, msg) CANNOT CONTACT HOST Cannot forward messages because the host cannot be contacted. The host may be switched off or there may be network connectivity problems.
Page 287
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE CANNOT FIND PATCH The requested update could not be found. This can occur when you designate a new master or xe patch-clean. Please upload the update again No parameters. CANNOT FIND STATE PARTITION This operation could not be performed because the state partition could not be found No parameters.
Page 288
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE DEVICE ALREADY ATTACHED The device is already attached to a VM Signature: DEVICE_ALREADY_ATTACHED(device) DEVICE ALREADY DETACHED The device is not currently attached Signature: DEVICE_ALREADY_DETACHED(device) DEVICE ALREADY EXISTS A device with the name given already exists on the selected VM Signature: DEVICE_ALREADY_EXISTS(device) DEVICE ATTACH TIMEOUT...
Page 289
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE DUPLICATE VM Cannot restore this VM because it would create a duplicate Signature: DUPLICATE_VM(vm) EVENTS LOST Some events have been lost from the queue and cannot be retrieved. No parameters. FIELD TYPE ERROR The value specified is of the wrong type Signature: FIELD_TYPE_ERROR(field)
Page 290
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE HA HOST IS ARMED The operation could not be performed while the host is still armed; it must be disarmed first Signature: HA_HOST_IS_ARMED(host) HA IS ENABLED The operation could not be performed because HA is enabled on the Pool No parameters.
Page 291
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE HOSTS NOT HOMOGENEOUS The hosts in this pool are not homogeneous. Signature: HOSTS_NOT_HOMOGENEOUS(reason) HOST BROKEN This host failed in the middle of an automatic failover operation and needs to retry the failover action No parameters.
Page 292
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE HOST IN EMERGENCY MODE Cannot perform operation as the host is running in emergency mode. No parameters. HOST IN USE This operation cannot be completed as the host is in use by (at least) the object of type and ref echoed below.
Page 293
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE HOST OFFLINE You attempted an operation which involves a host which could not be contacted. Signature: HOST_OFFLINE(host) HOST STILL BOOTING The host is still booting. No parameters. HOST UNKNOWN TO MASTER The master says the host is not known to it. Perhaps the Host was deleted from the master’s database? Signature: HOST_UNKNOWN_TO_MASTER(host)
Page 294
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE INTERNAL ERROR The server failed to handle your request, due to an internal error. The given message may give details useful for debugging the problem. Signature: INTERNAL_ERROR(message) INVALID DEVICE The device name is invalid Signature: INVALID_DEVICE(device) INVALID IP ADDRESS SPECIFIED...
Page 295
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE JOINING HOST CANNOT BE MASTER OF OTHER HOSTS The host joining the pool cannot already be a master of another pool. No parameters. JOINING HOST CANNOT CONTAIN SHARED SRS The host joining the pool cannot contain any shared storage. No parameters.
Page 296
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE LICENSE DOES NOT SUPPORT POOLING This host cannot join a pool because it’s license does not support pooling No parameters. LICENSE DOES NOT SUPPORT XHA XHA cannot be enabled because this host’s license does not allow it No parameters.
Page 297
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE MAC STILL EXISTS The MAC address specified still exists on this host. Signature: MAC_STILL_EXISTS(MAC) MAP DUPLICATE KEY You tried to add a key-value pair to a map, but that key is already there. Signature: MAP_DUPLICATE_KEY(type, param_name, uuid, key) MESSAGE DEPRECATED...
Page 298
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE NETWORK CONTAINS PIF The network contains active PIFs and cannot be deleted. Signature: NETWORK_CONTAINS_PIF(pifs) NETWORK CONTAINS VIF The network contains active VIFs and cannot be deleted. Signature: NETWORK_CONTAINS_VIF(vifs) NOT ALLOWED ON OEM EDITION This command is not allowed on the OEM edition.
Page 299
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE OBJECT NOLONGER EXISTS The specified object no longer exists. No parameters. ONLY ALLOWED ON OEM EDITION This command is only allowed on the OEM edition. Signature: ONLY_ALLOWED_ON_OEM_EDITION(command) OPERATION NOT ALLOWED You attempted an operation that was not allowed. Signature: OPERATION_NOT_ALLOWED(reason) OTHER OPERATION IN PROGRESS...
Page 300
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE PATCH APPLY FAILED The patch apply failed. Please see attached output. Signature: PATCH_APPLY_FAILED(output) PATCH IS APPLIED The specified patch is applied and cannot be destroyed. No parameters. PATCH PRECHECK FAILED PREREQUISITE MISSING The patch precheck stage failed: prerequisite patches are missing. Signature: PATCH_PRECHECK_FAILED_PREREQUISITE_MISSING(patch, prerequisite_patch_uuid_list) PATCH PRECHECK FAILED UNKNOWN ERROR...
Page 301
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE PBD EXISTS A PBD already exists connecting the SR to the host Signature: PBD_EXISTS(sr, host, pbd) PERMISSION DENIED Caller not allowed to perform this operation. Signature: PERMISSION_DENIED(message) PIF ALREADY BONDED This operation cannot be performed because the pif is bonded. Signature: PIF_ALREADY_BONDED(PIF) PIF BOND NEEDS MORE MEMBERS...
Page 302
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE PIF HAS NO NETWORK CONFIGURATION PIF has no IP configuration (mode curently set to ’none’) No parameters. PIF IS MANAGEMENT INTERFACE PIF is the management interface. Signature: PIF_IS_MANAGEMENT_INTERFACE(PIF) PIF IS PHYSICAL You tried to destroy a PIF, but it represents an aspect of the physical host configuration, and so cannot be destroyed.
Page 303
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE RESTORE INCOMPATIBLE VERSION The restore could not be performed because this backup has been created by a different (incom- patible) product verion No parameters. RESTORE SCRIPT FAILED The restore could not be performed because the restore script failed. Is the file corrupt? No parameters.
Page 304
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE SESSION NOT REGISTERED This session is not registered to receive events. You must call event.register before event.next. The session handle you are using is echoed. Signature: SESSION_NOT_REGISTERED(handle) SLAVE REQUIRES MANAGEMENT INTERFACE The management interface on a slave cannot be disabled because the slave would enter emergency mode.
Page 305
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE SR HAS NO PBDS The SR has no attached PBDs Signature: SR_HAS_NO_PBDS(sr) SR HAS PBD The SR is still connected to a host via a PBD. It cannot be destroyed. Signature: SR_HAS_PBD(sr) SR NOT EMPTY The SR operation cannot be performed because the SR is not empty.
Page 306
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE SR UUID EXISTS An SR with that uuid already exists. Signature: SR_UUID_EXISTS(uuid) SR VDI LOCKING FAILED The operation could not proceed because necessary VDIs were already locked at the storage level. No parameters. SYSTEM STATUS MUST USE TAR ON OEM You must use tar output to retrieve system status from an OEM host.
Page 307
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE UNKNOWN BOOTLOADER The requested bootloader is unknown Signature: UNKNOWN_BOOTLOADER(vm, bootloader) UUID INVALID The uuid you supplied was invalid. Signature: UUID_INVALID(type, uuid) VALUE NOT SUPPORTED You attempted to set a value that is not supported by this implementation. The fully-qualified field name and the value that you tried to set are returned.
Page 308
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE VBD NOT REMOVABLE MEDIA Media could not be ejected because it is not removable Signature: VBD_NOT_REMOVABLE_MEDIA(vbd) VBD NOT UNPLUGGABLE Drive could not be hot-unplugged because it is not marked as unpluggable Signature: VBD_NOT_UNPLUGGABLE(vbd) VBD TRAY LOCKED This VM has locked the DVD drive tray, so the disk cannot be ejected Signature:...
Page 309
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE VDI LOCATION MISSING This operation cannot be performed because the specified VDI could not be found in the specified Signature: VDI_LOCATION_MISSING(sr, location) VDI MISSING This operation cannot be performed because the specified VDI could not be found on the storage substrate Signature: VDI_MISSING(sr, vdi)
Page 310
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE VM BAD POWER STATE You attempted an operation on a VM that was not in an appropriate power state at the time; for example, you attempted to start a VM that was already running. The parameters returned are the VM’s handle, and the expected and actual VM state at the time of the call.
Page 311
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE VM MEMORY SIZE TOO LOW The specified VM has too little memory to be started. Signature: VM_MEMORY_SIZE_TOO_LOW(vm) VM MIGRATE FAILED An error occurred during the migration process. Signature: VM_MIGRATE_FAILED(vm, source, destination, msg) VM MISSING PV DRIVERS You attempted an operation on a VM which requires PV drivers to be installed but the drivers were not detected.
Page 312
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE VM OLD PV DRIVERS You attempted an operation on a VM which requires a more recent version of the PV drivers. Please upgrade your PV drivers. Signature: VM_OLD_PV_DRIVERS(vm, major, minor) VM REQUIRES NETWORK You attempted to run a VM on a host which doesn’t have a PIF on a Network needed by the VM.
Page 313
2.34. ERROR HANDLING CHAPTER 2. API REFERENCE VM UNSAFE BOOT You attempted an operation on a VM that was judged to be unsafe by the server. This can happen if the VM would run on a CPU that has a potentially incompatable set of feature flags to those the VM requires.
Need help?
Do you have a question about the DL385 - ProLiant - G5 and is the answer not in the manual?
Questions and answers