AuroraCompute Computer Driver Documentation¶
PCextreme B.V. is a Dutch cloud provider. It provides a public cloud offering under the name AuroraCompute. All cloud services are under the family name Aurora.
The datacenters / availability zones are located in:
- Amsterdam (NL)
- Rotterdam (NL)
- Miami (US)
- Los Angelos (US)
- Tokyo (JP)
The AuroraCompute driver is based on the CloudStack driver. Please refer to CloudStack Compute Driver Documentation page for more information.
API Docs¶
-
class
libcloud.compute.drivers.auroracompute.AuroraComputeNodeDriver(key, secret=None, secure=True, host=None, path=None, port=None, url=None, *args, **kwargs)[source]¶ Inherits: NodeDriver.__init__Parameters: - host (
str) – The host where the API can be reached. (required) - path (
str) – The path where the API can be reached. (required) - url (
str) – Full URL to the API endpoint. Mutually exclusive with host and path argument.
-
attach_volume(node, volume, device=None)¶ @inherits:
NodeDriver.attach_volume:type node:CloudStackNodeReturn type: bool
-
copy_image(source_region, node_image, name, description=None)¶ Copies an image from a source region to the current region.
Parameters: - source_region (
str) – Region to copy the node from. - node_image (
NodeImage:) – NodeImage to copy. - name (
str) – name for new image. - description – description for new image.
Return type: Returns: NodeImage instance on success.
- source_region (
-
create_image(node, name, description=None)¶ Creates an image from a node object.
Parameters: - node (
Node) – Node to run the task on. - name (
description) – name for new image. - description – description for new image.
Return type: Returns: NodeImage instance on success.
- node (
-
create_key_pair(name, **kwargs)¶ Create a new key pair object.
Parameters: - name (
str) – Key pair name. - name – Name of the keypair (required)
- projectid (
str) – An optional project for the ssh key - domainid (
str) – An optional domainId for the ssh key. If the account parameter is used, domainId must also be used. - account (
str) – An optional account for the ssh key. Must be used with domainId.
Returns: Created key pair object.
Return type: - name (
-
create_node(**kwargs)¶ Create a new node
@inherits:
NodeDriver.create_nodeParameters: - networks (
listofCloudStackNetwork) – Optional list of networks to launch the server into. - project (
CloudStackProject) – Optional project to create the new node under. - diskoffering (
CloudStackDiskOffering) – Optional disk offering to add to the new node. - ex_keyname (
str) – Name of existing keypair - ex_userdata (
str) – String containing user data - ex_security_groups (
listofstr) – List of security groups to assign to the node - ex_displayname (
str) – String containing instance display name - ex_ip_address (
str) – String with ipaddress for the default nic - ex_start_vm (
bool) – Boolean to specify to start VM after creation Default Cloudstack behaviour is to start a VM, if not specified. - ex_rootdisksize (
str) – String with rootdisksize for the template - ex_affinity_groups (
listofCloudStackAffinityGroup) – List of affinity groups to assign to the node
Return type: - networks (
-
create_volume(size, name, location=None, snapshot=None)¶ Creates a data volume Defaults to the first location
-
create_volume_snapshot(volume, name=None)¶ Create snapshot from volume
Parameters: - volume (
StorageVolume) – Instance ofStorageVolume - name (str) – The name of the snapshot is disregarded by CloudStack drivers
Return type: VolumeSnapshot- volume (
-
delete_image(node_image)¶ Deletes a node image from a provider.
Parameters: node_image ( NodeImage) – Node image object.Returns: Trueif delete_image was successful,Falseotherwise.Return type: bool
-
delete_key_pair(key_pair, **kwargs)¶ Delete an existing key pair.
Parameters: - key_pair (
libcloud.compute.base.KeyPair) – Key pair object. - projectid (
str) – The project associated with keypair - domainid (
str) – The domain ID associated with the keypair - account (
str) – The account associated with the keypair. Must be used with the domainId parameter.
Returns: True of False based on success of Keypair deletion
Return type: bool- key_pair (
-
deploy_node(**kwargs)¶ Create a new node, and start deployment.
In order to be able to SSH into a created node access credentials are required.
A user can pass either a
NodeAuthPasswordorNodeAuthSSHKeyto theauthargument. If thecreate_nodeimplementation supports that kind if credential (as declared inself.features['create_node']) then it is passed on tocreate_node. Otherwise it is not passed on tocreate_nodeand it is only used for authentication.If the
authparameter is not supplied but the driver declares it supportsgenerates_passwordthen the password returned bycreate_nodewill be used to SSH into the server.Finally, if the
ssh_key_fileis supplied that key will be used to SSH into the server.This function may raise a
DeploymentException, if a create_node call was successful, but there is a later error (like SSH failing or timing out). This exception includes a Node object which you may want to destroy if incomplete deployments are not desirable.>>> from libcloud.compute.drivers.dummy import DummyNodeDriver >>> from libcloud.compute.deployment import ScriptDeployment >>> from libcloud.compute.deployment import MultiStepDeployment >>> from libcloud.compute.base import NodeAuthSSHKey >>> driver = DummyNodeDriver(0) >>> key = NodeAuthSSHKey('...') # read from file >>> script = ScriptDeployment("yum -y install emacs strace tcpdump") >>> msd = MultiStepDeployment([key, script]) >>> def d(): ... try: ... driver.deploy_node(deploy=msd) ... except NotImplementedError: ... print ("not implemented for dummy driver") >>> d() not implemented for dummy driver
Deploy node is typically not overridden in subclasses. The existing implementation should be able to handle most such.
Parameters: - deploy (
Deployment) – Deployment to run once machine is online and available to SSH. - ssh_username (
str) – Optional name of the account which is used when connecting to SSH server (default is root) - ssh_alternate_usernames (
list) – Optional list of ssh usernames to try to connect with if using the default one fails - ssh_port (
int) – Optional SSH server port (default is 22) - ssh_timeout (
float) – Optional SSH connection timeout in seconds (default is 10) - auth (
NodeAuthSSHKeyorNodeAuthPassword) – Initial authentication information for the node (optional) - ssh_key (
strorlistofstr) – A path (or paths) to an SSH private key with which to attempt to authenticate. (optional) - timeout (
int) – How many seconds to wait before timing out. (default is 600) - max_tries (
int) – How many times to retry if a deployment fails before giving up (default is 3) - ssh_interface (
str) – The interface to wait for. Default is ‘public_ips’, other option is ‘private_ips’.
- deploy (
-
destroy_node(node, ex_expunge=False)¶ @inherits:
NodeDriver.reboot_node:type node:CloudStackNodeParameters: ex_expunge ( bool) – If true is passed, the vm is expunged immediately. False by default.Return type: bool
-
destroy_volume(volume)¶ Return type: bool
-
detach_volume(volume)¶ Return type: bool
-
ex_allocate_public_ip(vpc_id=None, network_id=None, location=None)¶ Allocate a public IP.
Parameters: - vpc_id (
str) – VPC the ip belongs to - network_id (‘’str’‘) – Network where this IP is connected to.
- location (
NodeLocation) – Zone
Return type: CloudStackAddress- vpc_id (
-
ex_attach_nic_to_node(node, network, ip_address=None)¶ Add an extra Nic to a VM
Parameters: - network (:class:’CloudStackNetwork`) – NetworkOffering object
- node (:class:’CloudStackNode`) – Node Object
- ip_address (
str) – Optional, specific IP for this Nic
Return type: bool
Creates a new Security Group Ingress rule
Parameters: - securitygroupname (
str) – The name of the security group. Mutually exclusive with securitygroupid. - protocol (
str) – Can be TCP, UDP or ICMP. Sometime other protocols can be used like AH, ESP or GRE. - cidrlist (
str) – Source address CIDR for which this rule applies. - startport (
int) – Start port of the range for this ingress rule. Applies to protocols TCP and UDP. - endport (
int) – End port of the range for this ingress rule. It can be None to set only one port. Applies to protocols TCP and UDP. - icmptype (
int) – Type of the ICMP packet (eg: 8 for Echo Request). -1 or None means “all types”. Applies to protocol ICMP. - icmpcode (
int) – Code of the ICMP packet for the specified type. If the specified type doesn’t require a code set this value to 0. -1 or None means “all codes”. Applies to protocol ICMP. - account (
str) – An optional account for the security group. Must be used with domainId. - domainid – An optional domainId for the security group. If the account parameter is used, domainId must also be used.
- projectid (
str) – An optional project of the security group - securitygroupid (
str) – The ID of the security group. Mutually exclusive with securitygroupname - usersecuritygrouplist (
dict) – User to security group mapping
Return type: dict- securitygroupname (
-
ex_create_affinity_group(name, group_type)¶ Creates a new Affinity Group
Parameters: - name (
str) – Name of the affinity group - group_type (
CloudStackAffinityGroupType) – Type of the affinity group from the available affinity/anti-affinity group types - description (
str) – Optional description of the affinity group - domainid (
str) – domain ID of the account owning the affinity group
Return type: CloudStackAffinityGroup- name (
-
ex_create_egress_firewall_rule(network_id, cidr_list, protocol, icmp_code=None, icmp_type=None, start_port=None, end_port=None)¶ Creates a Firewalle Rule
Parameters: - network_id (
str) – the id network network for the egress firwall services - cidr_list (
str) – cidr list - protocol (
str) – TCP/IP Protocol (TCP, UDP) - icmp_code (
int) – Error code for this icmp message - icmp_type (
int) – Type of the icmp message being sent - start_port (
int) – start of port range - end_port (
int) – end of port range
Return type: CloudStackEgressFirewallRule- network_id (
-
ex_create_firewall_rule(address, cidr_list, protocol, icmp_code=None, icmp_type=None, start_port=None, end_port=None)¶ Creates a Firewalle Rule
Parameters: - address (
CloudStackAddress) – External IP address - cidr_list (
str) – cidr list - protocol (
str) – TCP/IP Protocol (TCP, UDP) - icmp_code (
int) – Error code for this icmp message - icmp_type (
int) – Type of the icmp message being sent - start_port (
int) – start of port range - end_port (
int) – end of port range
Return type: CloudStackFirewallRule- address (
-
ex_create_ip_forwarding_rule(node, address, protocol, start_port, end_port=None)¶ “Add a NAT/firewall forwarding rule.
Parameters: - node (
CloudStackNode) – Node which should be used - address (
CloudStackAddress) – CloudStackAddress which should be used - protocol (
str) – Protocol which should be used (TCP or UDP) - start_port (
int) – Start port which should be used - end_port (
int) – End port which should be used
Return type: CloudStackForwardingRule- node (
-
ex_create_keypair(name, **kwargs)¶ Creates a SSH KeyPair, returns fingerprint and private key
Parameters: - name (
str) – Name of the keypair (required) - projectid (
str) – An optional project for the ssh key - domainid (
str) – An optional domainId for the ssh key. If the account parameter is used, domainId must also be used. - account (
str) – An optional account for the ssh key. Must be used with domainId.
Returns: A keypair dictionary
Return type: dict- name (
-
ex_create_network(display_text, name, network_offering, location, gateway=None, netmask=None, network_domain=None, vpc_id=None, project_id=None)¶ Creates a Network, only available in advanced zones.
Parameters: - display_text (
str) – the display text of the network - name (
str) – the name of the network - network_offering (:class:’CloudStackNetworkOffering`) – NetworkOffering object
- location (
NodeLocation) – Zone object - gateway (
str) – Optional, the Gateway of this network - netmask (
str) – Optional, the netmask of this network - network_domain (
str) – Optional, the DNS domain of the network - vpc_id (
str) – Optional, the VPC id the network belongs to - project_id (
str) – Optional, the project id the networks belongs to
Return type: CloudStackNetwork- display_text (
-
ex_create_network_acl(protocol, acl_id, cidr_list, start_port, end_port, action=None, traffic_type=None)¶ Creates an ACL rule in the given network (the network has to belong to VPC)
Parameters: - protocol (
string) – the protocol for the ACL rule. Valid values are TCP/UDP/ICMP/ALL or valid protocol number - acl_id (
str) – Name of the network ACL List - cidr_list (
str) – the cidr list to allow traffic from/to - start_port (
str) – the starting port of ACL - end_port (
str) – the ending port of ACL - action (
str) – scl entry action, allow or deny - traffic_type (
str) – the traffic type for the ACL,can be Ingress or Egress, defaulted to Ingress if not specified
Return type: CloudStackNetworkACL- protocol (
-
ex_create_network_acllist(name, vpc_id, description=None)¶ Create an ACL List for a network within a VPC.
Parameters: - name (
string) – Name of the network ACL List - vpc_id (
string) – Id of the VPC associated with this network ACL List - description (
string) – Description of the network ACL List
Return type: CloudStackNetworkACLList- name (
-
ex_create_port_forwarding_rule(node, address, private_port, public_port, protocol, public_end_port=None, private_end_port=None, openfirewall=True, network_id=None)¶ Creates a Port Forwarding Rule, used for Source NAT
Parameters: - address (
CloudStackAddress) – IP address of the Source NAT - private_port (
int) – Port of the virtual machine - protocol (
str) – Protocol of the rule - public_port (
int) – Public port on the Source NAT address - node (
CloudStackNode) – The virtual machine - network_id (
string) – The network of the vm the Port Forwarding rule will be created for. Required when public Ip address is not associated with any Guest network yet (VPC case)
Return type: CloudStackPortForwardingRule- address (
-
ex_create_security_group(name, **kwargs)¶ Creates a new Security Group
Parameters: - name (
str) – name of the security group (required) - account (
str) – An optional account for the security group. Must be used with domainId. - domainid (
str) – An optional domainId for the security group. If the account parameter is used, domainId must also be used. - description (
str) – The description of the security group - projectid (
str) – Deploy vm for the project
Return type: dict- name (
-
ex_create_snapshot_template(snapshot, name, ostypeid, displaytext=None)¶ Create a template from a snapshot
Parameters: - snapshot – Instance of
VolumeSnapshot - name (
str) – the name of the template - name – the os type id
- name – the display name of the template
Return type: NodeImage- snapshot – Instance of
Create tags for a resource (Node/StorageVolume/etc). A list of resource types can be found at http://goo.gl/6OKphH
Parameters: - resource_ids (
listof resource IDs) – Resource IDs to be tagged. The resource IDs must all be associated with the resource_type. For example, for virtual machines (UserVm) you can only specify a list of virtual machine IDs. - resource_type (
str) – Resource type (eg: UserVm) - tags (
dict) – A dictionary or other mapping of strings to strings, associating tag names with tag values.
Return type: bool- resource_ids (
-
ex_create_vpc(cidr, display_text, name, vpc_offering, zone_id, network_domain=None)¶ Creates a VPC, only available in advanced zones.
Parameters: - cidr – the cidr of the VPC. All VPC guest networks’ cidrs should be within this CIDR
- display_text (
str) – the display text of the VPC - name (
str) – the name of the VPC - vpc_offering (:class:’CloudStackVPCOffering`) – the ID of the VPC offering
- zone_id (
str) – the ID of the availability zone - network_domain (
str) – Optional, the DNS domain of the network
Return type: CloudStackVPC
-
ex_create_vpn_connection(vpn_customer_gateway, vpn_gateway, for_display=None, passive=None)¶ Creates a VPN Connection.
Parameters: - vpn_customer_gateway (
CloudStackVpnCustomerGateway) – The VPN Customer Gateway (required). - vpn_gateway (
CloudStackVpnGateway) – The VPN Gateway (required). - for_display (
str) – Display the Connection to the end user or not. - passive (
bool) – If True, sets the connection to be passive.
Return type: class: CloudStackVpnConnection - vpn_customer_gateway (
-
ex_create_vpn_customer_gateway(cidr_list, esp_policy, gateway, ike_policy, ipsec_psk, account=None, domain_id=None, dpd=None, esp_lifetime=None, ike_lifetime=None, name=None)¶ Creates a VPN Customer Gateway.
Parameters: - cidr_list (
str) – Guest CIDR list of the Customer Gateway (required). - esp_policy (
str) – ESP policy of the Customer Gateway (required). - gateway (
str) – Public IP address of the Customer Gateway (required). - ike_policy (
str) – IKE policy of the Customer Gateway (required). - ipsec_psk (
str) – IPsec preshared-key of the Customer Gateway (required). - account (
str) – The associated account with the Customer Gateway (must be used with the domain_id param). - domain_id (
str) – The domain ID associated with the Customer Gateway. If used with the account parameter returns the gateway associated with the account for the specified domain. - dpd (
bool) – If DPD is enabled for the VPN connection. - esp_lifetime (
int) – Lifetime of phase 2 VPN connection to the Customer Gateway, in seconds. - ike_lifetime (
int) – Lifetime of phase 1 VPN connection to the Customer Gateway, in seconds. - name (
str) – Name of the Customer Gateway.
Return type: class: CloudStackVpnCustomerGateway - cidr_list (
-
ex_create_vpn_gateway(vpc, for_display=None)¶ Creates a VPN Gateway.
Parameters: - vpc – VPC to create the Gateway for (required).
- for_display (
bool) – Display the VPC to the end user or not.
Return type: class: CloudStackVpnGateway
-
ex_delete_affinity_group(affinity_group)¶ Delete an Affinity Group
Parameters: affinity_group ( CloudStackAffinityGroup) – Instance of affinity group:rtype
bool
-
ex_delete_egress_firewall_rule(firewall_rule)¶ Remove a Firewall rule.
Parameters: egress_firewall_rule ( CloudStackEgressFirewallRule) – Firewall rule which should be usedReturn type: bool
-
ex_delete_firewall_rule(firewall_rule)¶ Remove a Firewall rule.
Parameters: firewall_rule ( CloudStackFirewallRule) – Firewall rule which should be usedReturn type: bool
-
ex_delete_ip_forwarding_rule(node, rule)¶ Remove a NAT/firewall forwarding rule.
Parameters: - node (
CloudStackNode) – Node which should be used - rule (
CloudStackForwardingRule) – Forwarding rule which should be used
Return type: bool- node (
-
ex_delete_keypair(keypair, **kwargs)¶ Deletes an existing SSH KeyPair
Parameters: - keypair (
str) – Name of the keypair (required) - projectid (
str) – The project associated with keypair - domainid (
str) – The domain ID associated with the keypair - account (
str) – The account associated with the keypair. Must be used with the domainId parameter.
Returns: True of False based on success of Keypair deletion
Return type: bool- keypair (
-
ex_delete_network(network, force=None)¶ Deletes a Network, only available in advanced zones.
Parameters: - network – The network
- force (
bool) – Force deletion of the network?
Return type: bool
-
ex_delete_port_forwarding_rule(node, rule)¶ Remove a Port forwarding rule.
Parameters: - node (
CloudStackNode) – Node used in the rule - rule (
CloudStackPortForwardingRule) – Forwarding rule which should be used
Return type: bool- node (
-
ex_delete_security_group(name)¶ Deletes a given Security Group
Parameters: - domainid (
str) – The domain ID of account owning the security group - id (
str) – The ID of the security group. Mutually exclusive with name parameter - name (
str) – The ID of the security group. Mutually exclusive with id parameter - account (
str) – The account of the security group. Must be specified with domain ID - projectid (
str) – The project of the security group
Return type: bool- domainid (
Delete tags from a resource.
Parameters: - resource_ids (
listof resource IDs) – Resource IDs to be tagged. The resource IDs must all be associated with the resource_type. For example, for virtual machines (UserVm) you can only specify a list of virtual machine IDs. - resource_type (
str) – Resource type (eg: UserVm) - tag_keys (
list) – A list of keys to delete. CloudStack only requires the keys from the key/value pair.
Return type: bool- resource_ids (
-
ex_delete_vpc(vpc)¶ Deletes a VPC, only available in advanced zones.
Parameters: vpc – The VPC Return type: bool
-
ex_delete_vpn_connection(vpn_connection)¶ Deletes a VPN Connection.
Parameters: vpn_connection ( CloudStackVpnConnection) – The VPN Connection (required).Return type: bool
-
ex_delete_vpn_customer_gateway(vpn_customer_gateway)¶ Deletes a VPN Customer Gateway.
Parameters: vpn_customer_gateway ( CloudStackVpnCustomerGateway) – The VPN Customer Gateway (required).Return type: bool
-
ex_delete_vpn_gateway(vpn_gateway)¶ Deletes a VPN Gateway.
Parameters: vpn_gateway ( CloudStackVpnGateway) – The VPN Gateway (required).Return type: bool
-
ex_detach_nic_from_node(nic, node)¶ Remove Nic from a VM
Parameters: - nic (:class:’CloudStackNetwork`) – Nic object
- node (:class:’CloudStackNode`) – Node Object
Return type: bool
-
ex_get_node(node_id, project=None)¶ Return a Node object based on its ID.
Parameters: - node_id (
str) – The id of the node - project (
CloudStackProject) – Limit node returned to those configured under the defined project.
Return type: CloudStackNode- node_id (
-
ex_get_volume(volume_id, project=None)¶ Return a StorageVolume object based on its ID.
Parameters: - volume_id (
str) – The id of the volume - project (
CloudStackProject) – Limit volume returned to those configured under the defined project.
Return type: CloudStackNode- volume_id (
-
ex_import_keypair(name, keyfile)¶ Imports a new public key where the public key is passed via a filename
Parameters: - name (
str) – The name of the public key to import. - keyfile (
str) – The filename with path of the public key to import.
Return type: dict- name (
-
ex_import_keypair_from_string(name, key_material)¶ Imports a new public key where the public key is passed in as a string
Parameters: - name (
str) – The name of the public key to import. - key_material (
str) – The contents of a public key file.
Return type: dict- name (
-
ex_limits()¶ Extra call to get account’s resource limits, such as the amount of instances, volumes, snapshots and networks.
CloudStack uses integers as the resource type so we will convert them to a more human readable string using the resource map
A list of the resource type mappings can be found at http://goo.gl/17C6Gk
Returns: dict Return type: dict
-
ex_list_affinity_group_types()¶ List Affinity Group Types
:rtype
listofCloudStackAffinityGroupTypes
-
ex_list_affinity_groups()¶ List Affinity Groups
:rtype
listofCloudStackAffinityGroup
-
ex_list_disk_offerings()¶ Fetch a list of all available disk offerings.
Return type: listofCloudStackDiskOffering
-
ex_list_egress_firewall_rules()¶ Lists all agress Firewall Rules
Return type: listofCloudStackEgressFirewallRule
-
ex_list_firewall_rules()¶ Lists all Firewall Rules
Return type: listofCloudStackFirewallRule
-
ex_list_ip_forwarding_rules(account=None, domain_id=None, id=None, ipaddress_id=None, is_recursive=None, keyword=None, list_all=None, page=None, page_size=None, project_id=None, virtualmachine_id=None)¶ Lists all NAT/firewall forwarding rules
Parameters: - account (
str) – List resources by account. Must be used with the domainId parameter - domain_id (
str) – List only resources belonging to the domain specified - id (
str) – Lists rule with the specified ID - ipaddress_id (
str) – list the rule belonging to this public ip address - is_recursive (
bool) – Defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves. - keyword (
str) – List by keyword - list_all (
bool) – If set to false, list only resources belonging to the command’s caller; if set to true - list resources that the caller is authorized to see. Default value is false - page (
int) – The page to list the keypairs from - page_size (
int) – The number of results per page - project_id (
str) – list objects by project - virtualmachine_id (
str) – Lists all rules applied to the specified Vm
Return type: listofCloudStackIPForwardingRule- account (
-
ex_list_keypairs(**kwargs)¶ List Registered SSH Key Pairs
Parameters: - projectid (
str) – list objects by project - page (
int) – The page to list the keypairs from - keyword (
str) – List by keyword - listall (
bool) – If set to false, list only resources belonging to the command’s caller; if set to true - list resources that the caller is authorized to see. Default value is false - pagesize (
int) – The number of results per page - account (
str) – List resources by account. Must be used with the domainId parameter - isrecursive (
bool) – Defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves. - fingerprint (
str) – A public key fingerprint to look for - name (
str) – A key pair name to look for - domainid (
str) – List only resources belonging to the domain specified
Returns: A list of keypair dictionaries
Return type: listofdict- projectid (
-
ex_list_network_acl()¶ Lists all network ACL items
Return type: listofCloudStackNetworkACL
-
ex_list_network_acllists()¶ Lists all network ACLs
Return type: listofCloudStackNetworkACLList
-
ex_list_network_offerings()¶ List the available network offerings
:rtype
listofCloudStackNetworkOffering
-
ex_list_networks(project=None)¶ List the available networks
Parameters: project ( CloudStackProject) – Optional project the networks belongs to.:rtype
listofCloudStackNetwork
-
ex_list_nics(node)¶ List the available networks
Parameters: vm (:class:`CloudStackNode) – Node Object :rtype
listofCloudStackNic
-
ex_list_os_types()¶ List all registered os types (needed for snapshot creation)
Return type: list
-
ex_list_port_forwarding_rules(account=None, domain_id=None, id=None, ipaddress_id=None, is_recursive=None, keyword=None, list_all=None, network_id=None, page=None, page_size=None, project_id=None)¶ Lists all Port Forwarding Rules
Parameters: - account (
str) – List resources by account. Must be used with the domainId parameter - domain_id (
str) – List only resources belonging to the domain specified - for_display (
bool) – List resources by display flag (only root admin is eligible to pass this parameter). - id (
str) – Lists rule with the specified ID - ipaddress_id (
str) – list the rule belonging to this public ip address - is_recursive (
bool) – Defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves. - keyword (
str) – List by keyword - list_all (
bool) – If set to false, list only resources belonging to the command’s caller; if set to true - list resources that the caller is authorized to see. Default value is false - network_id (
string) – list port forwarding rules for ceratin network - page (
int) – The page to list the keypairs from - page_size (
int) – The number of results per page - project_id (
str) – list objects by project
Return type: listofCloudStackPortForwardingRule- account (
-
ex_list_projects()¶ List the available projects
:rtype
listofCloudStackProject
-
ex_list_public_ips()¶ Lists all Public IP Addresses.
Return type: listofCloudStackAddress
-
ex_list_routers(vpc_id=None)¶ List routers
:rtype
listofCloudStackRouter
-
ex_list_security_groups(**kwargs)¶ Lists Security Groups
Parameters: - domainid (
str) – List only resources belonging to the domain specified - account (
str) – List resources by account. Must be used with the domainId parameter. - listall (
bool) – If set to false, list only resources belonging to the command’s caller; if set to true list resources that the caller is authorized to see. Default value is false - pagesize (
int) – Number of entries per page - keyword (
str) – List by keyword - tags (
dict) – List resources by tags (key/value pairs) - id (
str) – list the security group by the id provided - securitygroupname (
str) – lists security groups by name - virtualmachineid (
str) – lists security groups by virtual machine id - projectid (
str) – list objects by project - isrecursive (
bool) – (boolean) defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves. - page (
int) – (integer)
:rtype
list- domainid (
-
ex_list_vpc_offerings()¶ List the available vpc offerings
:rtype
listofCloudStackVPCOffering
-
ex_list_vpcs(project=None)¶ List the available VPCs
Parameters: project ( CloudStackProject) – Optional project under which VPCs are present.:rtype
listofCloudStackVPC
-
ex_list_vpn_connections(account=None, domain_id=None, for_display=None, id=None, is_recursive=None, keyword=None, list_all=None, page=None, page_size=None, project_id=None, vpc_id=None)¶ List VPN Connections.
Parameters: - account (
str) – List resources by account (must be used with the domain_id parameter). - domain_id (
str) – List only resources belonging to the domain specified. - for_display (
bool) – List resources by display flag (only root admin is eligible to pass this parameter). - id (
str) – ID of the VPN Connection. - is_recursive (
bool) – Defaults to False, but if true, lists all resources from the parent specified by the domain_id till leaves. - keyword (
str) – List by keyword. - list_all (
str) – If set to False, list only resources belonging to the command’s caller; if set to True - list resources that the caller is authorized to see. Default value is False. - page (
int) – Start from page. - page_size (
int) – Items per page. - project_id (
str) – List objects by project. - vpc_id (
str) – List objects by VPC.
Return type: listofCloudStackVpnConnection- account (
-
ex_list_vpn_customer_gateways(account=None, domain_id=None, id=None, is_recursive=None, keyword=None, list_all=None, page=None, page_size=None, project_id=None)¶ List VPN Customer Gateways.
Parameters: - account (
str) – List resources by account (must be used with the domain_id parameter). - domain_id (
str) – List only resources belonging to the domain specified. - id (
str) – ID of the VPN Customer Gateway. - is_recursive (
bool) – Defaults to False, but if true, lists all resources from the parent specified by the domain_id till leaves. - keyword (
str) – List by keyword. - list_all (
str) – If set to False, list only resources belonging to the command’s caller; if set to True - list resources that the caller is authorized to see. Default value is False. - page (
int) – Start from page. - page_size (
int) – Items per page. - project_id (
str) – List objects by project.
Return type: listofCloudStackVpnCustomerGateway- account (
-
ex_list_vpn_gateways(account=None, domain_id=None, for_display=None, id=None, is_recursive=None, keyword=None, list_all=None, page=None, page_size=None, project_id=None, vpc_id=None)¶ List VPN Gateways.
Parameters: - account (
str) – List resources by account (must be used with the domain_id parameter). - domain_id (
str) – List only resources belonging to the domain specified. - for_display (
bool) – List resources by display flag (only root admin is eligible to pass this parameter). - id (
str) – ID of the VPN Gateway. - is_recursive (
bool) – Defaults to False, but if true, lists all resources from the parent specified by the domain ID till leaves. - keyword (
str) – List by keyword. - list_all (
str) – If set to False, list only resources belonging to the command’s caller; if set to True - list resources that the caller is authorized to see. Default value is False. - page (
int) – Start from page. - page_size (
int) – Items per page. - project_id (
str) – List objects by project. - vpc_id (
str) – List objects by VPC.
Return type: listofCloudStackVpnGateway- account (
-
ex_register_iso(name, url, location=None, **kwargs)¶ Registers an existing ISO by URL.
Parameters: - name (
str) – Name which should be used - url (
str) – Url should be used - location (
NodeLocation) – Location which should be used
Return type: str- name (
-
ex_release_public_ip(address)¶ Release a public IP.
Parameters: address ( CloudStackAddress) – CloudStackAddress which should be usedReturn type: bool
-
ex_replace_network_acllist(acl_id, network_id)¶ Create an ACL List for a network within a VPC.Replaces ACL associated with a Network or private gateway
Parameters: - acl_id (
string) – the ID of the network ACL - network_id (
string) – the ID of the network
Return type: CloudStackNetworkACLList- acl_id (
-
ex_revoke_security_group_ingress(rule_id)¶ Revoke/delete an ingress security rule
Parameters: id ( str) – The ID of the ingress security ruleReturn type: bool
-
ex_start(node)¶ Starts/Resumes a stopped virtual machine
Parameters: - id (
str) – The ID of the virtual machine (required) - hostid (
str) – destination Host ID to deploy the VM to parameter available for root admin only
:rtype
str- id (
-
ex_stop(node)¶ Stops/Suspends a running virtual machine
Parameters: node ( CloudStackNode) – Node to stop.Return type: str
-
ex_update_node_affinity_group(node, affinity_group_list)¶ Updates the affinity/anti-affinity group associations of a virtual machine. The VM has to be stopped and restarted for the new properties to take effect.
Parameters: - node (
CloudStackNode) – Node to update. - affinity_group_list (
listofCloudStackAffinityGroup) – List of CloudStackAffinityGroup to associate
:rtype
CloudStackNode- node (
-
get_image(image_id)¶ Returns a single node image from a provider.
Parameters: image_id ( str) – Node to run the task on.:rtype
NodeImage: :return: NodeImage instance on success.
-
get_key_pair(name)¶ Retrieve a single key pair.
Parameters: name ( str) – Name of the key pair to retrieve.Return type: KeyPair
-
import_key_pair_from_file(name, key_file_path)¶ Import a new public key from string.
Parameters: - name (
str) – Key pair name. - key_file_path (
str) – Path to the public key file.
Return type: KeyPairobject- name (
-
import_key_pair_from_string(name, key_material)¶ Import a new public key from string.
Parameters: - name (
str) – Key pair name. - key_material (
str) – Public key material.
Returns: Imported key pair object.
Return type: - name (
-
list_key_pairs(**kwargs)¶ List registered key pairs.
Parameters: - projectid (
str) – list objects by project - page (
int) – The page to list the keypairs from - keyword (
str) – List by keyword - listall (
bool) – If set to false, list only resources belonging to the command’s caller; if set to true - list resources that the caller is authorized to see. Default value is false - pagesize (
int) – The number of results per page - account (
str) – List resources by account. Must be used with the domainId parameter - isrecursive (
bool) – Defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves. - fingerprint (
str) – A public key fingerprint to look for - name (
str) – A key pair name to look for - domainid (
str) – List only resources belonging to the domain specified
Returns: A list of key par objects.
Return type: listoflibcloud.compute.base.KeyPair- projectid (
-
list_locations()¶ :rtype
listofNodeLocation
-
list_nodes(project=None)¶ @inherits:
NodeDriver.list_nodesParameters: project ( CloudStackProject) – Limit nodes returned to those configured under the defined project.Return type: listofCloudStackNode
-
list_sizes(location=None)¶ :rtype
listofNodeSize
-
list_snapshots()¶ Describe all snapshots.
Return type: listofVolumeSnapshot
-
list_volume_snapshots(volume)¶ List snapshots for a storage volume.
Return type: listofVolumeSnapshot
-
list_volumes(node=None)¶ List all volumes
Parameters: node ( CloudStackNode) – Only return volumes for the provided node.Return type: listofStorageVolume
-
reboot_node(node)¶ @inherits:
NodeDriver.reboot_node:type node:CloudStackNodeReturn type: bool
-
wait_until_running(nodes, wait_period=3, timeout=600, ssh_interface='public_ips', force_ipv4=True, ex_list_nodes_kwargs=None)¶ Block until the provided nodes are considered running.
Node is considered running when it’s state is “running” and when it has at least one IP address assigned.
Parameters: - nodes (
listofNode) – List of nodes to wait for. - wait_period (
int) – How many seconds to wait between each loop iteration. (default is 3) - timeout (
int) – How many seconds to wait before giving up. (default is 600) - ssh_interface (
str) – Which attribute on the node to use to obtain an IP address. Valid options: public_ips, private_ips. Default is public_ips. - force_ipv4 (
bool) – Ignore IPv6 addresses (default is True). - ex_list_nodes_kwargs (
dict) – Optional driver-specific keyword arguments which are passed to thelist_nodesmethod.
Returns: [(Node, ip_addresses)]list of tuple of Node instance and list of ip_address on success.Return type: listoftuple- nodes (
- host (
