Part of libcloud.compute.drivers.opennebula View Source View In Hierarchy
Known subclasses: libcloud.compute.drivers.opennebula.OpenNebula_3_0_NodeDriver
OpenNebula.org node driver for OpenNebula.org v2.0 through OpenNebula.org v2.2.
Method | create_node | Create a new OpenNebula node. |
Method | destroy_node | Destroy a node. |
Method | list_sizes | Return list of sizes on a provider. |
Method | _to_images | Request a list of images and convert that list to a list of NodeImage objects. |
Method | _to_image | Take XML object containing an image description and convert to NodeImage object. |
Method | _to_node | Take XML object containing a compute node description and convert to Node object. |
Method | _extract_networks | Extract networks from a compute node XML representation. |
Method | _extract_images | Extract image disks from a compute node XML representation. |
Method | _extract_size | Extract size, or node type, from a compute node XML representation. |
Method | _extract_context | Extract size, or node type, from a compute node XML representation. |
Inherited from OpenNebulaNodeDriver:
Method | __new__ | Undocumented |
Method | list_nodes | List all nodes @return: list of node objects @rtype: C{list} of L{Node} |
Method | list_images | List images on a provider |
Method | list_locations | List data centers for a provider |
Method | ex_list_networks | List virtual networks on a provider. |
Method | ex_node_action | Build action representation and instruct node to commit action. |
Method | _to_networks | Request a list of networks and convert that list to a list of OpenNebulaNetwork objects. |
Method | _to_network | Take XML object containing a network description and convert to OpenNebulaNetwork object. |
Method | _to_nodes | Request a list of compute nodes and convert that list to a list of Node objects. |
Inherited from NodeDriver (via OpenNebulaNodeDriver):
Method | __init__ | @param key: API key or username to be used (required) @type key: C{str} |
Method | reboot_node | Reboot a node. |
Method | deploy_node | Create a new node, and start deployment. |
Method | create_volume | Create a new volume. |
Method | destroy_volume | Destroys a storage volume. |
Method | attach_volume | Attaches volume to node. |
Method | detach_volume | Detaches a volume from a node. |
Method | wait_until_running | Block until the given nodes are fully booted and have an IP address assigned. |
Method | _wait_until_running | Undocumented |
Method | _ssh_client_connect | Try to connect to the remote SSH server. If a connection times out or is refused it is retried up to timeout number of seconds. |
Method | _run_deployment_script | Run the deployment script on the provided node. At this point it is assumed that SSH connection has already been established. |
Method | _get_size_price | Undocumented |
Inherited from BaseDriver (via OpenNebulaNodeDriver, NodeDriver):
Method | _ex_connection_class_kwargs | Return extra connection keyword arguments which are passed to the Connection class constructor. |
Create a new OpenNebula node. @inherits: L{NodeDriver.create_node} @keyword networks: List of virtual networks to which this node should connect. (optional) @type networks: L{OpenNebulaNetwork} or C{list} of L{OpenNebulaNetwork} @keyword context: Custom (key, value) pairs to be injected into compute node XML description. (optional) @type context: C{dict} @return: Instance of a newly created node. @rtype: L{Node}
Destroy a node. Depending upon the provider, this may destroy all data associated with the node, including backups. @param node: The node to be destroyed @type node: L{Node} @return: True if the destroy was successful, otherwise False @rtype: C{bool}
Return list of sizes on a provider. @inherits: L{NodeDriver.list_sizes} @return: List of compute node sizes supported by the cloud provider. @rtype: C{list} of L{OpenNebulaNodeSize}
Request a list of images and convert that list to a list of NodeImage objects. Request a list of images from the OpenNebula web interface, and issue a request to convert each XML object representation of an image to a NodeImage object. @rtype: C{list} of L{NodeImage} @return: List of images.
Take XML object containing an image description and convert to NodeImage object. @type image: L{ElementTree} @param image: XML representation of an image. @rtype: L{NodeImage} @return: The newly extracted L{NodeImage}.
Take XML object containing a compute node description and convert to Node object. Take XML representation containing a compute node description and convert to Node object. @type compute: L{ElementTree} @param compute: XML representation of a compute node. @rtype: L{Node} @return: The newly extracted L{Node}.
Extract networks from a compute node XML representation. Extract network descriptions from a compute node XML representation, converting each network to an OpenNebulaNetwork object. @type compute: L{ElementTree} @param compute: XML representation of a compute node. @rtype: C{list} of L{OpenNebulaNetwork} @return: List of virtual networks attached to the compute node.
Extract image disks from a compute node XML representation. Extract image disk descriptions from a compute node XML representation, converting the disks to an NodeImage object. @type compute: L{ElementTree} @param compute: XML representation of a compute node. @rtype: L{NodeImage} @return: First disk attached to a compute node.
Extract size, or node type, from a compute node XML representation. Extract node size, or node type, description from a compute node XML representation, converting the node size to a NodeSize object. @type compute: L{ElementTree} @param compute: XML representation of a compute node. @rtype: L{OpenNebulaNodeSize} @return: Node type of compute node.
Extract size, or node type, from a compute node XML representation. Extract node size, or node type, description from a compute node XML representation, converting the node size to a NodeSize object. @type compute: L{ElementTree} @param compute: XML representation of a compute node. @rtype: C{dict} @return: Dictionary containing (key, value) pairs related to compute node context.