| Outscale Driver Documentation |
| ================================= |
| |
| `Outscale`_ provides an IaaS platform allowing |
| developers to benefit from all the flexibility of the Cloud. |
| This IaaS platform relies on TINA OS, its Cloud manager whose purpose is to |
| provide great performances on the Cloud. |
| TINA OS is software developed by Outscale. |
| |
| .. figure:: /_static/images/provider_logos/outscale.jpg |
| :align: center |
| :width: 300 |
| :target: https://www.outscale.com/ |
| |
| Outscale users can start virtual machines in the following regions: |
| |
| * cloudgouv-west-1, France |
| * eu-west-2, France |
| * us-est-2, US |
| * us-west-1, US |
| * cn-southeast-1, China |
| |
| Outscale is an European company and is priced in Euros. |
| |
| Instantiating a driver |
| ~~~~~~~~~~~~~~~~~~~~~~ |
| |
| When you instantiate a driver you need to pass the following arguments to the |
| driver constructor: |
| |
| * ``key`` - Your Outscale access key |
| * ``secret`` - Your Outscale secret key |
| * ``region`` - The region you want to make action on |
| * ``service`` - The Outscale service you want to use |
| |
| Once you have some credentials you can instantiate the driver as shown below. |
| |
| .. literalinclude:: /examples/compute/outscale/instantiate.py |
| :language: python |
| |
| List the Virtual Machines (node) |
| -------------------------------- |
| |
| Listing the Virtual Machines on Outscale using libcloud works the same as on any |
| other platform. This example is just to show exactly that. |
| |
| This example will list the Virtual Machines in eu-west-2 region. |
| |
| .. literalinclude:: /examples/compute/outscale/list_nodes.py |
| :language: python |
| |
| |
| API Documentation |
| ----------------- |
| |
| .. autoclass:: libcloud.compute.drivers.outscale.OutscaleNodeDriver |
| :members: |
| :inherited-members: |
| |
| .. _`Outscale`: https://docs.outscale.com/api |
| .. _`Outscale Inc.`: outscale_inc.html |
| |
| Outscale Implementation of Libcloud |
| ----------------------------------- |
| |
| The Outscale driver implements the following ``NodeDriver`` functions: |
| |
| Regions |
| ------- |
| * ``list_locations`` - Returns a list of ``NodeLocation`` |
| |
| Nodes |
| ----- |
| * ``create_node`` - Creates a ``Node`` |
| * ``reboot_node`` - Reboots a ``Node`` |
| * ``list_nodes`` - Returns a list of ``Node`` |
| * ``destroy_node`` - Destroys an existing ``Node`` |
| * ``start_node`` - Start a ``Node`` |
| * ``stop_node`` - Stop a ``Node`` |
| |
| Images |
| ------ |
| * ``create_images`` - Returns a ``NodeImage`` |
| * ``list_images`` - Returns a list of ``NodeImage`` |
| * ``get_image`` - Returns a ``NodeImage`` |
| * ``delete_image`` - Return a ``bool`` |
| * ``ex_create_image_export_task`` - Returns a ``dict`` |
| * ``ex_list_image_export_task`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_image`` - Returns a ``dict`` |
| |
| Key Pairs |
| _________ |
| * ``create_key_pair`` - Returns a ``KeyPair`` |
| * ``list_key_pairs`` - Returns a list of ``KeyPair`` |
| * ``get_key_pair`` - Returns a ``KeyPair`` |
| * ``delete_key_pair`` - Returns a ``bool`` |
| |
| Snapshots |
| --------- |
| * ``create_volume_snapshot`` - Returns a ``VolumeSnapshot`` |
| * ``list_snapshots`` - Returns a list of ``VolumeSnapshot`` |
| * ``destroy_volume_snapshot`` - Returns a ``bool`` |
| * ``list_volume_snapshots`` - Returns a list of ``VolumeSnapshot`` |
| * ``ex_create_snapshot_export_task`` - Returns a ``dict`` |
| * ``ex_list_snapshot_export_tasks`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_snapshot`` - Returns a ``dict`` |
| |
| Volumes |
| ------- |
| * ``create_volume`` - Returns a ``StorageVolume`` |
| * ``list_volumes`` - Returns a list of ``StorageVolume`` |
| * ``destroy_volume`` - Returns a ``bool`` |
| * ``attach_volume`` - Return a ``bool`` |
| * ``detach_volume`` - Returns a ``bool`` |
| |
| Outscale Extra Functions |
| ------------------------ |
| |
| The Outscale driver implement the following extra methods: |
| |
| Public IPs |
| ---------- |
| * ``ex_create_public_ip`` - Returns a ``bool`` |
| * ``ex_delete_public_ip`` - Returns a ``bool`` |
| * ``ex_list_public_ips`` - Returns a ``dict`` |
| * ``ex_list_public_ip_ranges`` - Returns a ``dict`` |
| * ``ex_attach_public_ip`` - Returns a ``bool`` |
| * ``ex_detach_public_ip`` - Returns a ``bool`` |
| |
| Accounts |
| -------- |
| * ``ex_check_account`` - Returns a ``bool`` |
| * ``ex_read_account`` - Returns a ``dict`` |
| * ``ex_reset_account_password`` - Returns a ``dict`` |
| * ``ex_send_reset_password_email`` - Returns a ``bool`` |
| * ``ex_create_account`` - Returns a ``bool`` |
| * ``ex_update_account`` - Returns a ``dict`` |
| * ``ex_list_consumption_account`` - Returns a ``list`` of ``dict`` |
| |
| Tags |
| ---- |
| * ``ex_create_tag`` - Returns a ``bool`` |
| * ``ex_create_tags`` - Returns a ``bool`` |
| * ``ex_delete_tags`` - Returns a ``bool`` |
| * ``ex_list_tags`` - Returns a ``dict`` |
| |
| Regions and SubRegions |
| ---------------------- |
| * ``ex_list_regions`` - Returns a ``list`` of ``dict`` |
| * ``ex_list_subregions`` - Returns a ``list`` of ``dict`` |
| |
| Access Keys |
| ----------- |
| * ``ex_create_access_key`` - Returns a ``dict`` |
| * ``ex_delete_access_key`` - Returns a ``bool`` |
| * ``ex_list_access_keys`` - Returns a ``list`` of ``dict`` |
| * ``ex_list_secret_access_key`` - Returns a ``dict`` |
| * ``ex_update_access_key`` - Returns a ``dict`` |
| |
| Client Gateways |
| --------------- |
| * ``ex_create_client_gateway`` - Returns a ``dict`` |
| * ``ex_delete_client_gateway`` - Returns a ``bool`` |
| * ``ex_list_client_gateways`` - Returns a ``list`` of ``dict`` |
| |
| Dhcp Options |
| ------------ |
| * ``ex_create_dhcp_options`` - Returns a ``dict`` |
| * ``ex_delete_dhcp_options`` - Returns a ``bool`` |
| * ``ex_list_dhcp_options`` - Returns a ``list`` of ``dict`` |
| |
| Direct Links |
| ------------ |
| * ``ex_create_direct_link`` - Returns a ``dict`` |
| * ``ex_delete_direct_link`` - Returns a ``bool`` |
| * ``ex_list_direct_links`` - Returns a ``list`` of ``dict`` |
| |
| Direct Link Interfaces |
| ---------------------- |
| * ``ex_create_direct_link_interface`` - Returns a ``dict`` |
| * ``ex_delete_direct_link_interface`` - Returns a ``bool`` |
| * ``ex_list_direct_link_interfaces`` - Returns a ``list`` of ``dict`` |
| |
| Flexible GPU |
| ------------ |
| * ``ex_create_flexible_gpu`` - Returns a ``dict`` |
| * ``ex_delete_flexible_gpu`` - Returns a ``bool`` |
| * ``ex_link_flexible_gpu`` - Returns a ``bool`` |
| * ``ex_unlink_flexible_gpu`` - Returns a ``bool`` |
| * ``ex_list_flexible_gpu_catalog`` - Returns a ``list`` of ``dict`` |
| * ``ex_list_flexible_gpus`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_flexible_gpu`` - Returns a ``dict`` |
| |
| Internet Services |
| ----------------- |
| * ``ex_create_internet_service`` - Returns a ``dict`` |
| * ``ex_delete_internet_service`` - Returns a ``bool`` |
| * ``ex_link_internet_service`` - Returns a ``bool`` |
| * ``ex_unlink_internet_service`` - Returns a ``bool`` |
| * ``ex_list_internet_services`` - Returns a ``list`` of ``dict`` |
| |
| Listener |
| -------- |
| * ``ex_create_listener_rule`` - Returns a ``dict`` |
| * ``ex_create_load_balancer_listeners`` - Returns a ``dict`` |
| * ``ex_delete_listener_rule`` - Returns a ``bool`` |
| * ``ex_delete_load_balancer_listeners`` - Returns a ``bool`` |
| * ``ex_list_listener_rules`` - Returns a ``bool`` |
| * ``ex_update_listener_rule`` - Returns a ``dict`` |
| |
| Load Balancers |
| -------------- |
| * ``ex_create_load_balancer`` - Returns a ``dict`` |
| * ``ex_update_load_balancer`` - Returns a ``dict`` |
| * ``ex_create_load_balancer_tags`` - Returns a ``bool`` |
| * ``ex_delete_load_balancer`` - Returns a ``bool`` |
| * ``ex_delete_load_balancer_tags`` - Returns a ``bool`` |
| * ``ex_deregister_vms_in_load_balancer`` - Returns a ``bool`` |
| * ``ex_register_vms_in_load_balancer`` - Returns a ``bool`` |
| * ``ex_list_load_balancer_tags`` - Returns a ``list`` of ``dict`` |
| * ``ex_list_vms_health`` - Returns a ``list`` of ``dict`` |
| * ``ex_list_load_balancers`` - Returns a ``list`` of ``dict`` |
| |
| Load Balancer Policies |
| ---------------------- |
| * ``ex_create_load_balancer_policy`` - Returns a ``dict`` |
| * ``ex_delete_load_balancer_policy`` - Returns a ``bool`` |
| |
| Nat Services |
| ------------ |
| * ``ex_create_nat_service`` - Returns a ``dict`` |
| * ``ex_delete_nat_service`` - Returns a ``bool`` |
| * ``ex_list_nat_services`` - Returns a ``list`` of ``dict`` |
| |
| Net |
| --- |
| * ``ex_create_net`` - Returns a ``dict`` |
| * ``ex_delete_net`` - Returns a ``bool`` |
| * ``ex_list_nets`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_net`` - Returns a ``dict`` |
| |
| Net Access Point |
| ---------------- |
| * ``ex_create_net_access_point`` - Returns a ``dict`` |
| * ``ex_delete_net_access_point`` - Returns a ``bool`` |
| * ``ex_list_net_access_point_services`` - Returns a ``list`` of ``dict`` |
| * ``ex_list_net_access_points`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_net_access_point`` - Returns a ``dict`` |
| |
| Net Peerings |
| ------------ |
| * ``ex_accept_net_peering`` - Returns a ``dict`` |
| * ``ex_create_net_peering`` - Returns a ``dict`` |
| * ``ex_delete_net_peering`` - Returns a ``bool`` |
| * ``ex_list_net_peerings`` - Returns a ``list`` of ``dict`` |
| * ``ex_reject_net_peering`` - Returns a ``dict`` |
| |
| Nics |
| ---- |
| * ``ex_create_nic`` - Returns a ``dict`` |
| * ``ex_delete_nic`` - Returns a ``bool`` |
| * ``ex_link_nic`` - Returns a ``bool`` |
| * ``ex_unlink_nic`` - Returns a ``bool`` |
| * ``ex_link_private_ips`` - Returns a ``bool`` |
| * ``ex_list_nics`` - Returns a ``list`` of ``dict`` |
| * ``ex_unlink_private_ips`` - Returns a ``bool`` |
| * ``ex_update_nic`` - Returns a ``dict`` |
| |
| Product Types |
| ------------- |
| * ``ex_list_product_types`` - Returns a ``list`` of ``dict`` |
| |
| Quotas |
| ------ |
| * ``ex_list_quotas`` - Returns a ``list`` of ``dict`` |
| |
| Routes |
| ------ |
| * ``ex_create_route`` - Returns a ``dict`` |
| * ``ex_delete_route`` - Returns a ``bool`` |
| * ``ex_update_route`` - Returns a ``dict`` |
| |
| Route Tables |
| ------------ |
| * ``ex_create_route_table`` - Returns a ``dict`` |
| * ``ex_delete_route_table`` - Returns a ``bool`` |
| * ``ex_link_route_table`` - Returns a ``bool`` |
| * ``ex_list_route_tables`` - Returns a ``list`` of ``dict`` |
| * ``ex_unlink_route_table`` - Returns a ``bool`` |
| |
| Server Certificates |
| ------------------- |
| * ``ex_create_server_certificate`` - Returns a ``dict`` |
| * ``ex_delete_server_certificate`` - Returns a ``bool`` |
| * ``ex_list_server_certificates`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_server_certificate`` - Returns a ``dict`` |
| |
| Virtual Gateways |
| ---------------- |
| * ``ex_create_virtual_gateway`` - Returns a ``dict`` |
| * ``ex_delete_virtual_gateway`` - Returns a ``bool`` |
| * ``ex_link_virtual_gateway`` - Returns a ``dict`` |
| * ``ex_list_virtual_gateways`` - Returns a ``list`` of ``dict`` |
| * ``ex_unlink_virtual_gateway`` - Returns a ``bool`` |
| * ``ex_update_route_propagation`` - Returns a ``dict`` |
| |
| Security Groups |
| --------------- |
| * ``ex_create_security_group`` - Returns a ``dict`` |
| * ``ex_delete_security_group`` - Returns a ``bool`` |
| * ``ex_list_security_groups`` - Returns a ``list`` of ``dict`` |
| |
| Security Group Rules |
| -------------------- |
| * ``ex_create_security_group_rule`` - Returns a ``dict`` |
| * ``ex_delete_security_group_rule`` - Returns a ``dict`` |
| |
| |
| Subnets |
| ------- |
| * ``ex_create_subnet`` - Returns a ``dict`` |
| * ``ex_delete_subnet`` - Returns a ``bool`` |
| * ``ex_list_subnets`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_subnet`` - Returns a ``dict`` |
| |
| Tasks |
| ----- |
| * ``ex_delete_export_task`` - Returns a ``bool`` |
| |
| Vpn Connections |
| --------------- |
| * ``ex_create_vpn_connection`` - Returns a ``dict`` |
| * ``ex_create_vpn_connection_route`` - Returns a ``bool`` |
| * ``ex_delete_vpn_connection`` - Returns a ``bool`` |
| * ``ex_delete_vpn_connection_route`` - Returns a ``bool`` |
| * ``ex_list_vpn_connections`` - Returns a ``list`` of ``dict`` |
| |
| Nodes |
| ----- |
| * ``ex_read_admin_password_node`` - Returns a ``str`` |
| * ``ex_read_console_output_node`` - Returns a ``str`` |
| * ``ex_list_node_types`` - Returns a ``list`` of ``dict`` |
| * ``ex_list_nodes_states`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_node`` - Returns a ``list`` of ``dict`` |
| |
| Certificate Authority |
| --------------------- |
| * ``ex_create_certificate_authority`` - Returns a ``dict`` |
| * ``ex_delete_certificate_authority`` - Returns a ``bool`` |
| * ``ex_read_certificate_authorities`` - Returns a ``list`` of ``dict`` |
| |
| API Access Rules |
| ---------------- |
| * ``ex_create_api_access_rule`` - Returns a ``dict`` |
| * ``ex_delete_api_access_rule`` - Returns a ``bool`` |
| * ``ex_read_api_access_rules`` - Returns a ``list`` of ``dict`` |
| * ``ex_update_api_access_rule`` - Returns a ``dict`` |
| |
| |