Part of libcloud.compute.drivers.ec2 View Source View In Hierarchy
Known subclasses: libcloud.compute.drivers.ec2.EC2APNENodeDriver, libcloud.compute.drivers.ec2.EC2APSENodeDriver, libcloud.compute.drivers.ec2.EC2EUNodeDriver, libcloud.compute.drivers.ec2.EC2USWestNodeDriver, libcloud.compute.drivers.ec2.EucNodeDriver, libcloud.compute.drivers.ec2.NimbusNodeDriver
Amazon EC2 node driver
Method | list_nodes | List all nodes @return: C{list} of L{Node} objects |
Method | list_sizes | List sizes on a provider @return: C{list} of L{NodeSize} objects |
Method | list_images | List images on a provider @return: C{list} of L{NodeImage} objects |
Method | list_locations | List data centers for a provider @return: C{list} of L{NodeLocation} objects |
Method | ex_create_keypair | Creates a new keypair |
Method | ex_import_keypair | imports a new public key |
Method | ex_describe_keypairs | Describes a keypiar by name |
Method | ex_create_security_group | Creates a new Security Group |
Method | ex_authorize_security_group_permissive | Edit a Security Group to allow all traffic. |
Method | ex_list_availability_zones | Return a list of L{ExEC2AvailabilityZone} objects for the current region. |
Method | ex_describe_tags | Return a dictionary of tags for this instance. |
Method | ex_create_tags | Create tags for an instance. |
Method | ex_delete_tags | Delete tags from an instance. |
Method | ex_describe_addresses | Return Elastic IP addresses for all the nodes in the provided list. |
Method | ex_describe_addresses_for_node | Return a list of Elastic IP addresses associated with this node. |
Method | ex_modify_instance_attribute | Modify node attributes. A list of valid attributes can be found at http://goo.gl/gxcj8 |
Method | ex_change_node_size | Change the node size. Note: Node must be turned of before changing the size. |
Method | create_node | Create a new EC2 node |
Method | reboot_node | Reboot the node by passing in the node object |
Method | destroy_node | Destroy node by passing in the node object |
Method | _pathlist | Converts a key and an array of values into AWS query param format. |
Method | _get_boolean | Undocumented |
Method | _get_terminate_boolean | Undocumented |
Method | _to_nodes | Undocumented |
Method | _to_node | Undocumented |
Method | _to_images | Undocumented |
Method | _to_image | Undocumented |
Method | _get_sizes | Undocumented |
Inherited from NodeDriver:
Method | __init__ | @keyword key: API key or username to used @type key: str |
Method | deploy_node | Create a new node, and start deployment. |
Method | _get_size_price | Undocumented |
Converts a key and an array of values into AWS query param format.
List sizes on a provider @return: C{list} of L{NodeSize} objects
List images on a provider @return: C{list} of L{NodeImage} objects
List data centers for a provider @return: C{list} of L{NodeLocation} objects
Creates a new keypair @note: This is a non-standard extension API, and only works for EC2. @type name: C{str} @param name: The name of the keypair to Create. This must be unique, otherwise an InvalidKeyPair.Duplicate exception is raised.
imports a new public key @note: This is a non-standard extension API, and only works for EC2. @type name: C{str} @param name: The name of the public key to import. This must be unique, otherwise an InvalidKeyPair.Duplicate exception is raised. @type keyfile: C{str} @param keyfile: The filename with path of the public key to import.
Describes a keypiar by name @note: This is a non-standard extension API, and only works for EC2. @type name: C{str} @param name: The name of the keypair to describe.
Creates a new Security Group @note: This is a non-standard extension API, and only works for EC2. @type name: C{str} @param name: The name of the security group to Create. This must be unique. @type description: C{str} @param description: Human readable description of a Security Group.
Edit a Security Group to allow all traffic. @note: This is a non-standard extension API, and only works for EC2. @type name: C{str} @param name: The name of the security group to edit
Return a list of L{ExEC2AvailabilityZone} objects for the current region. Note: This is an extension method and is only available for EC2 driver. @keyword only_available: If true, return only availability zones with state 'available' @type only_available: C{string}
Return a dictionary of tags for this instance. @type node: C{Node} @param node: Node instance @return dict Node tags
Create tags for an instance. @type node: C{Node} @param node: Node instance @param tags: A dictionary or other mapping of strings to strings, associating tag names with tag values.
Delete tags from an instance. @type node: C{Node} @param node: Node instance @param tags: A dictionary or other mapping of strings to strings, specifying the tag names and tag values to be deleted.
Return Elastic IP addresses for all the nodes in the provided list. @type nodes: C{list} @param nodes: List of C{Node} instances @return dict Dictionary where a key is a node ID and the value is a list with the Elastic IP addresses associated with this node.
Return a list of Elastic IP addresses associated with this node. @type node: C{Node} @param node: Node instance @return list Elastic IP addresses attached to this node.
Modify node attributes. A list of valid attributes can be found at http://goo.gl/gxcj8 @type node: C{Node} @param node: Node instance @type attributes: C{dict} @param attributes: Dictionary with node attributes @return bool True on success, False otherwise.
Change the node size. Note: Node must be turned of before changing the size. @type node: C{Node} @param node: Node instance @type new_size: C{NodeSize} @param new_size: NodeSize intance @return bool True on success, False otherwise.
Create a new EC2 node See L{NodeDriver.create_node} for more keyword args. Reference: http://bit.ly/8ZyPSy [docs.amazonwebservices.com] @keyword ex_mincount: Minimum number of instances to launch @type ex_mincount: C{int} @keyword ex_maxcount: Maximum number of instances to launch @type ex_maxcount: C{int} @keyword ex_securitygroup: Name of security group @type ex_securitygroup: C{str} @keyword ex_keyname: The name of the key pair @type ex_keyname: C{str} @keyword ex_userdata: User data @type ex_userdata: C{str} @keyword ex_clienttoken: Unique identifier to ensure idempotency @type ex_clienttoken: C{str}