l.c.d.c.CloudStackNodeDriver(CloudStackDriverMixIn, NodeDriver) : class documentation

Part of libcloud.compute.drivers.cloudstack View Source View In Hierarchy

Known subclasses: libcloud.compute.drivers.ninefold.NinefoldNodeDriver

Driver for the CloudStack API.
Class Variable host The host where the API can be reached.
Class Variable path The path where the API can be reached.
Class Variable async_poll_frequency How often (in seconds) to poll for async job completion. (type: int)
Method __init__
Method list_images List images on a provider @return: list of NodeImage objects
Method list_locations List data centers for a provider @return: list of NodeLocation objects
Method list_nodes List all nodes @return: list of Node objects
Method list_sizes List sizes on a provider @return: list of NodeSize objects
Method create_node Create a new node instance.
Method destroy_node Destroy a node.
Method reboot_node Reboot a node. @return: bool True if the reboot was successful, otherwise False
Method ex_allocate_public_ip Allocate a public IP and bind it to a node.
Method ex_release_public_ip Release a public IP.
Method ex_add_ip_forwarding_rule Add a NAT/firewall forwarding rule.
Method ex_delete_ip_forwarding_rule Remove a NAT/firewall forwading rule.

Inherited from CloudStackDriverMixIn:

Method _sync_request Undocumented
Method _async_request Undocumented

Inherited from NodeDriver:

Method deploy_node Create a new node, and start deployment.
Method _wait_until_running Block until node is fully booted and has an IP address assigned.
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 NodeDriver):

Method _ex_connection_class_kwargs Return extra connection keyword arguments which are passed to the Connection class constructor.
host =
The host where the API can be reached.
path =
The path where the API can be reached.
async_poll_frequency =
How often (in seconds) to poll for async job completion. (type: int)
def __init__(self, key, *args, secret=None, secure=True, host=None, path=None, port=None, **kwargs): (source)
ParameterskeyAPI key or username to used (type: str)
secretSecret password to be used (type: str)
secureWeither to use HTTPS or HTTP. Note: Some providers only support HTTPS, and it is on by default. (type: bool)
hostOverride hostname used for connections. (type: str)
portOverride port used for connections. (type: int)
api_versionOptional API version. Only used by drivers which support multiple API versions. (type: str)
def list_images(self, location=None): (source)
List images on a provider
Returnslist of NodeImage objects
def list_locations(self): (source)
List data centers for a provider
Returnslist of NodeLocation objects
def list_nodes(self): (source)
List all nodes
Returnslist of Node objects
def list_sizes(self, location=None): (source)
List sizes on a provider
Returnslist of NodeSize objects
def create_node(self, name, size, image, location=None, **kwargs): (source)
Create a new node instance.
ParametersnameString with a name for this new node (required) (type: str)
sizeThe size of resources allocated to this node. (required) (type: NodeSize)
imageOS Image to boot on node. (required) (type: NodeImage)
locationWhich data center to create a node in. If empty, undefined behavoir will be selected. (optional) (type: NodeLocation)
authInitial authentication information for the node (optional) (type: NodeAuthSSHKey or NodeAuthPassword)
ReturnsThe newly created Node.
def destroy_node(self, node): (source)
Destroy a node.

Depending upon the provider, this may destroy all data associated with the node, including backups.

Returnsbool True if the destroy was successful, otherwise False
def reboot_node(self, node): (source)
Reboot a node.
Returnsbool True if the reboot was successful, otherwise False
def ex_allocate_public_ip(self, node): (source)
Allocate a public IP and bind it to a node.
def ex_release_public_ip(self, node, address): (source)
Release a public IP.
def ex_add_ip_forwarding_rule(self, node, address, protocol, start_port, end_port=None): (source)
Add a NAT/firewall forwarding rule.
def ex_delete_ip_forwarding_rule(self, node, rule): (source)
Remove a NAT/firewall forwading rule.
API Documentation for libcloud, generated by pydoctor at 2012-07-15 18:46:59.