Class: VBD
A virtual block device
| Published in: | XenServer 4.0 (rio) | A virtual block device |
Enums
vbd_operations
| Values: | attach | Attempting to attach this VBD to a VM |
| eject | Attempting to eject the media from this VBD | |
| insert | Attempting to insert new media into this VBD | |
| plug | Attempting to hotplug this VBD | |
| unplug | Attempting to hot unplug this VBD | |
| unplug_force | Attempting to forcibly unplug this VBD | |
| pause | Attempting to pause a block device backend | |
| unpause | Attempting to unpause a block device backend |
vbd_type
| Values: | CD | VBD will appear to guest as CD |
| Disk | VBD will appear to guest as disk | |
| Floppy | VBD will appear as a floppy |
vbd_mode
| Values: | RO | only read-only access will be allowed |
| RW | read-write access will be allowed |
Fields
VDI ref
VDI
[RO/constructor]
the virtual disk
| Published in: | XenServer 4.0 (rio) | the virtual disk |
VM ref
VM
[RO/constructor]
the virtual machine
| Published in: | XenServer 4.0 (rio) | the virtual machine |
enum vbd_operations set
allowed_operations
[RO/runtime]
list of the operations allowed in this state. This list is advisory only and the server state may have changed by the time this field is read by a client.
| Default value: | {} | |
| Published in: | XenServer 4.0 (rio) | list of the operations allowed in this state. This list is advisory only and the server state may have changed by the time this field is read by a client. |
bool
bootable
[RW]
true if this VBD is bootable
| Published in: | XenServer 4.0 (rio) | true if this VBD is bootable |
(string → enum vbd_operations) map
current_operations
[RO/runtime]
links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task.
| Default value: | {} | |
| Published in: | XenServer 4.0 (rio) | links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task. |
bool
currently_attached
[RO/constructor]
is the device currently attached (erased on reboot)
| Default value: | false | |
| Published in: | XenServer 4.0 (rio) | |
| Changed in: | XAPI 1.257.0 (1.257.0) | Made StaticRO to allow plugged VIF and VBD creation for Suspended VM |
string
device
[RO/constructor]
device seen by the guest e.g. hda1
| Default value: | "" | |
| Published in: | XenServer 4.0 (rio) | |
| Changed in: | XAPI 1.257.0 (1.257.0) | Become static to allow plugged VBD creation for Suspended VM |
bool
empty
[RO/constructor]
if true this represents an empty drive
| Published in: | XenServer 4.0 (rio) | if true this represents an empty drive |
Removed
VBD_metrics ref
metrics
[RO/runtime]
metrics associated with this VBD
| Default value: | OpaqueRef:NULL | |
| Published in: | XenServer 4.0 (rio) | |
| Deprecated in: | XenServer 6.1 (tampa) | Dummy transition |
| Removed in: | XenServer 6.1 (tampa) | Disabled in favour of RRDs |
enum vbd_mode
mode
[RO/constructor]
the mode the VBD should be mounted with
| Published in: | XenServer 4.0 (rio) | the mode the VBD should be mounted with |
(string → string) map
other_config
[RW]
additional configuration
| Published in: | XenServer 4.0 (rio) | additional configuration |
(string → string) map
qos_algorithm_params
[RW]
parameters for chosen QoS algorithm
| Published in: | XenServer 4.0 (rio) | parameters for chosen QoS algorithm |
string
qos_algorithm_type
[RW]
QoS algorithm to use
| Published in: | XenServer 4.0 (rio) | QoS algorithm to use |
string set
qos_supported_algorithms
[RO/runtime]
supported QoS algorithms for this VBD
| Published in: | XenServer 4.0 (rio) | supported QoS algorithms for this VBD |
(string → string) map
runtime_properties
[RO/runtime]
Device runtime properties
| Published in: | XenServer 4.0 (rio) | Device runtime properties |
int
status_code
[RO/runtime]
error/success code associated with last attach-operation (erased on reboot)
| Published in: | XenServer 4.0 (rio) | error/success code associated with last attach-operation (erased on reboot) |
string
status_detail
[RO/runtime]
error/success information associated with last attach-operation status (erased on reboot)
| Published in: | XenServer 4.0 (rio) | error/success information associated with last attach-operation status (erased on reboot) |
bool
storage_lock
[RO/runtime]
true if a storage level lock was acquired
| Published in: | XenServer 4.0 (rio) | true if a storage level lock was acquired |
enum vbd_type
type
[RW]
how the VBD will appear to the guest (e.g. disk or CD)
| Published in: | XenServer 4.0 (rio) | how the VBD will appear to the guest (e.g. disk or CD) |
bool
unpluggable
[RW]
true if this VBD will support hot-unplug
| Default value: | true | |
| Published in: | XenServer 4.1 (miami) | true if this VBD will support hot-unplug |
string
userdevice
[RW]
user-friendly device name e.g. 0,1,2,etc.
| Published in: | XenServer 4.0 (rio) | user-friendly device name e.g. 0,1,2,etc. |
string
uuid
[RO/runtime]
Unique identifier/object reference
| Published in: | XenServer 4.0 (rio) | Unique identifier/object reference |
Messages
void
add_to_other_config
(session ref, VBD ref, string, string)
Add the given key-value pair to the other_config field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| string key | Key to add | |
| string value | Value to add | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | additional configuration |
void
add_to_qos_algorithm_params
(session ref, VBD ref, string, string)
Add the given key-value pair to the qos/algorithm_params field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| string key | Key to add | |
| string value | Value to add | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | parameters for chosen QoS algorithm |
void
assert_attachable
(session ref, VBD ref)
Throws an error if this VBD could not be attached to this VM if the VM were running. Intended for debugging.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | The VBD to query | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | Throws an error if this VBD could not be attached to this VM if the VM were running. Intended for debugging. |
VBD ref
create
(session ref, VBD record)
Create a new VBD instance, and return its handle.
The constructor args are: VM*, VDI*, device, userdevice*, bootable*, mode*, type*, unpluggable, empty*, other_config*, currently_attached, qos_algorithm_type*, qos_algorithm_params* (* = non-optional).
| Parameters: | session ref session_id | Reference to a valid session |
| VBD record args | All constructor arguments | |
| Minimum role: | vm-admin | |
| Result: | reference to the newly created object | |
| Published in: | XenServer 4.0 (rio) | A virtual block device |
void
destroy
(session ref, VBD ref)
Destroy the specified VBD instance.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | A virtual block device |
void
eject
(session ref, VBD ref)
Remove the media from the device and leave it empty
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref vbd | The vbd representing the CDROM-like device | |
| Minimum role: | vm-operator | |
| Errors: | VBD_NOT_REMOVABLE_MEDIA | Media could not be ejected because it is not removable |
| VBD_IS_EMPTY | Operation could not be performed because the drive is empty | |
| Published in: | XenServer 4.0 (rio) | Remove the media from the device and leave it empty |
VDI ref
get_VDI
(session ref, VBD ref)
Get the VDI field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | the virtual disk |
VM ref
get_VM
(session ref, VBD ref)
Get the VM field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | the virtual machine |
VBD ref set
get_all
(session ref)
Return a list of all the VBDs known to the system.
| Parameters: | session ref session_id | Reference to a valid session |
| Minimum role: | read-only | |
| Result: | references to all objects | |
| Published in: | XenServer 4.0 (rio) | A virtual block device |
(VBD ref → VBD record) map
get_all_records
(session ref)
Return a map of VBD references to VBD records for all VBDs known to the system.
| Parameters: | session ref session_id | Reference to a valid session |
| Minimum role: | read-only | |
| Result: | records of all objects | |
| Published in: | XenServer 4.0 (rio) | A virtual block device |
enum vbd_operations set
get_allowed_operations
(session ref, VBD ref)
Get the allowed_operations field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | list of the operations allowed in this state. This list is advisory only and the server state may have changed by the time this field is read by a client. |
bool
get_bootable
(session ref, VBD ref)
Get the bootable field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | true if this VBD is bootable |
VBD ref
get_by_uuid
(session ref, string)
Get a reference to the VBD instance with the specified UUID.
| Parameters: | session ref session_id | Reference to a valid session |
| string uuid | UUID of object to return | |
| Minimum role: | read-only | |
| Result: | reference to the object | |
| Published in: | XenServer 4.0 (rio) | A virtual block device |
(string → enum vbd_operations) map
get_current_operations
(session ref, VBD ref)
Get the current_operations field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | links each of the running tasks using this object (by reference) to a current_operation enum which describes the nature of the task. |
bool
get_currently_attached
(session ref, VBD ref)
Get the currently_attached field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | |
| Changed in: | XAPI 1.257.0 (1.257.0) | Made StaticRO to allow plugged VIF and VBD creation for Suspended VM |
string
get_device
(session ref, VBD ref)
Get the device field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | |
| Changed in: | XAPI 1.257.0 (1.257.0) | Become static to allow plugged VBD creation for Suspended VM |
bool
get_empty
(session ref, VBD ref)
Get the empty field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | if true this represents an empty drive |
Removed
VBD_metrics ref
get_metrics
(session ref, VBD ref)
Get the metrics field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | |
| Deprecated in: | XenServer 6.1 (tampa) | Dummy transition |
| Removed in: | XenServer 6.1 (tampa) | Disabled in favour of RRDs |
enum vbd_mode
get_mode
(session ref, VBD ref)
Get the mode field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | the mode the VBD should be mounted with |
(string → string) map
get_other_config
(session ref, VBD ref)
Get the other_config field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | additional configuration |
(string → string) map
get_qos_algorithm_params
(session ref, VBD ref)
Get the qos/algorithm_params field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | parameters for chosen QoS algorithm |
string
get_qos_algorithm_type
(session ref, VBD ref)
Get the qos/algorithm_type field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | QoS algorithm to use |
string set
get_qos_supported_algorithms
(session ref, VBD ref)
Get the qos/supported_algorithms field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | supported QoS algorithms for this VBD |
VBD record
get_record
(session ref, VBD ref)
Get a record containing the current state of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | all fields from the object | |
| Published in: | XenServer 4.0 (rio) | A virtual block device |
(string → string) map
get_runtime_properties
(session ref, VBD ref)
Get the runtime_properties field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | Device runtime properties |
int
get_status_code
(session ref, VBD ref)
Get the status_code field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | error/success code associated with last attach-operation (erased on reboot) |
string
get_status_detail
(session ref, VBD ref)
Get the status_detail field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | error/success information associated with last attach-operation status (erased on reboot) |
bool
get_storage_lock
(session ref, VBD ref)
Get the storage_lock field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | true if a storage level lock was acquired |
enum vbd_type
get_type
(session ref, VBD ref)
Get the type field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | how the VBD will appear to the guest (e.g. disk or CD) |
bool
get_unpluggable
(session ref, VBD ref)
Get the unpluggable field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.1 (miami) | true if this VBD will support hot-unplug |
string
get_userdevice
(session ref, VBD ref)
Get the userdevice field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | user-friendly device name e.g. 0,1,2,etc. |
string
get_uuid
(session ref, VBD ref)
Get the uuid field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| Minimum role: | read-only | |
| Result: | value of the field | |
| Published in: | XenServer 4.0 (rio) | Unique identifier/object reference |
void
insert
(session ref, VBD ref, VDI ref)
Insert new media into the device
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref vbd | The vbd representing the CDROM-like device | |
| VDI ref vdi | The new VDI to 'insert' | |
| Minimum role: | vm-operator | |
| Errors: | VBD_NOT_REMOVABLE_MEDIA | Media could not be ejected because it is not removable |
| VBD_NOT_EMPTY | Operation could not be performed because the drive is not empty | |
| Published in: | XenServer 4.0 (rio) | Insert new media into the device |
void
plug
(session ref, VBD ref)
Hotplug the specified VBD, dynamically attaching it to the running VM
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | The VBD to hotplug | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | Hotplug the specified VBD, dynamically attaching it to the running VM |
void
remove_from_other_config
(session ref, VBD ref, string)
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.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| string key | Key to remove | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | additional configuration |
void
remove_from_qos_algorithm_params
(session ref, VBD ref, string)
Remove the given key and its corresponding value from the qos/algorithm_params field of the given VBD. If the key is not in that Map, then do nothing.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| string key | Key to remove | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | parameters for chosen QoS algorithm |
void
set_bootable
(session ref, VBD ref, bool)
Set the bootable field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| bool value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | true if this VBD is bootable |
void
set_mode
(session ref, VBD ref, enum vbd_mode)
Sets the mode of the VBD. The power_state of the VM must be halted.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | Reference to the object | |
| enum vbd_mode value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | Sets the mode of the VBD. The power_state of the VM must be halted. |
void
set_other_config
(session ref, VBD ref, (string → string) map)
Set the other_config field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| (string → string) map value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | additional configuration |
void
set_qos_algorithm_params
(session ref, VBD ref, (string → string) map)
Set the qos/algorithm_params field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| (string → string) map value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | parameters for chosen QoS algorithm |
void
set_qos_algorithm_type
(session ref, VBD ref, string)
Set the qos/algorithm_type field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| string value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | QoS algorithm to use |
void
set_type
(session ref, VBD ref, enum vbd_type)
Set the type field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| enum vbd_type value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | how the VBD will appear to the guest (e.g. disk or CD) |
void
set_unpluggable
(session ref, VBD ref, bool)
Set the unpluggable field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| bool value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.1 (miami) | true if this VBD will support hot-unplug |
void
set_userdevice
(session ref, VBD ref, string)
Set the userdevice field of the given VBD.
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | reference to the object | |
| string value | New value to set | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | user-friendly device name e.g. 0,1,2,etc. |
void
unplug
(session ref, VBD ref)
Hot-unplug the specified VBD, dynamically unattaching it from the running VM
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | The VBD to hot-unplug | |
| Minimum role: | vm-admin | |
| Errors: | DEVICE_DETACH_REJECTED | The VM rejected the attempt to detach the device. |
| DEVICE_ALREADY_DETACHED | The device is not currently attached | |
| Published in: | XenServer 4.0 (rio) | Hot-unplug the specified VBD, dynamically unattaching it from the running VM |
void
unplug_force
(session ref, VBD ref)
Forcibly unplug the specified VBD
| Parameters: | session ref session_id | Reference to a valid session |
| VBD ref self | The VBD to forcibly unplug | |
| Minimum role: | vm-admin | |
| Published in: | XenServer 4.0 (rio) | Forcibly unplug the specified VBD |