This Page

Psst... hey. You're reading the latest content, but it might be out of sync with code. You can read Nova 2011.1 docs or all OpenStack docs too.

The nova.virt.xenapi.volume_utils Module

Helper methods for operations related to the management of volumes, and storage repositories

exception nova.virt.xenapi.volume_utils.StorageError(message=None)

Bases: exceptions.Exception

To raise errors related to SR, VDI, PBD, and VBD commands

class nova.virt.xenapi.volume_utils.VolumeHelper

Bases: nova.virt.xenapi.HelperBase

The class that wraps the helper methods together.

classmethod create_iscsi_storage(session, info, label, description)

Create an iSCSI storage repository that will be used to mount the volume for the specified instance

classmethod destroy_iscsi_storage(session, sr_ref)

Forget the SR whilst preserving the state of the disk

classmethod find_sr_from_vbd(session, vbd_ref)

Find the SR reference from the VBD reference

classmethod introduce_vdi(session, sr_ref)

Introduce VDI in the host

classmethod mountpoint_to_number(mountpoint)

Translate a mountpoint like /dev/sdc into a numeric

classmethod parse_volume_info(device_path, mountpoint)

Parse device_path and mountpoint as they can be used by XenAPI. In particular, the mountpoint (e.g. /dev/sdc) must be translated into a numeric literal. FIXME(armando): As for device_path, currently cannot be used as it is, because it does not contain target information. As for interim solution, target details are passed either via Flags or obtained by iscsiadm. Long-term solution is to add a few more fields to the db in the iscsi_target table with the necessary info and modify the iscsi driver to set them.