octavia.api.drivers.amphora_driver.v1 package

octavia.api.drivers.amphora_driver.v1 package

Submodules

octavia.api.drivers.amphora_driver.v1.driver module

class AmphoraProviderDriver[source]

Bases: octavia_lib.api.drivers.provider_base.ProviderDriver

create_vip_port(loadbalancer_id, project_id, vip_dictionary)[source]

Creates a port for a load balancer VIP.

If the driver supports creating VIP ports, the driver will create a VIP port with the primary VIP and all additional VIPs added to the port, and return the vip_dictionary populated with the vip_port_id and a list of vip_dictionaries populated with data from the additional VIPs (which are guaranteed to be in the same Network). This might look like: {‘port_id’: port_id, ‘subnet_id’: subnet_id_1, ‘ip_address’: ip1}, [{‘subnet_id’: subnet_id_2, ‘ip_address’: ip2}, {…}, {…}] If the driver does not support port creation, the driver will raise a NotImplementedError.

Parameters:
  • loadbalancer_id (string) – ID of loadbalancer.
  • project_id (string) – The project ID to create the VIP under.
Param:

vip_dictionary: The VIP dictionary.

Param:

additional_vip_dicts: A list of additional VIP dictionaries, with subnets guaranteed to be in the same network as the primary vip_dictionary.

Returns:

VIP dictionary with vip_port_id + a list of additional VIP dictionaries (vip_dict, additional_vip_dicts).

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – The driver does not support creating VIP ports.
get_supported_availability_zone_metadata()[source]

Returns the valid availability zone metadata keys and descriptions.

This extracts the valid availability zone metadata keys and descriptions from the JSON validation schema and returns it as a dictionary.

Returns:Dictionary of availability zone metadata keys and descriptions
Raises:DriverError – An unexpected error occurred.
get_supported_flavor_metadata()[source]

Returns the valid flavor metadata keys and descriptions.

This extracts the valid flavor metadata keys and descriptions from the JSON validation schema and returns it as a dictionary.

Returns:Dictionary of flavor metadata keys and descriptions.
Raises:DriverError – An unexpected error occurred.
health_monitor_create(healthmonitor)[source]

Creates a new health monitor.

Parameters:

healthmonitor (object) – The health monitor object.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
health_monitor_delete(healthmonitor)[source]

Deletes a healthmonitor_id.

Parameters:

healthmonitor (object) – The monitor to delete.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
health_monitor_update(old_healthmonitor, new_healthmonitor)[source]

Updates a health monitor.

Parameters:
  • old_healthmonitor (object) – The baseline health monitor object.
  • new_healthmonitor (object) – The updated health monitor object.
Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
l7policy_create(l7policy)[source]

Creates a new L7 policy.

Parameters:

l7policy (object) – The L7 policy object.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
l7policy_delete(l7policy)[source]

Deletes an L7 policy.

Parameters:

l7policy (object) – The L7 policy to delete.

Returns:

Nothing if the delete request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
l7policy_update(old_l7policy, new_l7policy)[source]

Updates an L7 policy.

Parameters:
  • old_l7policy (object) – The baseline L7 policy object.
  • new_l7policy (object) – The updated L7 policy object.
Returns:

Nothing if the update request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
l7rule_create(l7rule)[source]

Creates a new L7 rule.

Parameters:

l7rule (object) – The L7 rule object.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
l7rule_delete(l7rule)[source]

Deletes an L7 rule.

Parameters:

l7rule (object) – The L7 rule to delete.

Returns:

Nothing if the delete request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
l7rule_update(old_l7rule, new_l7rule)[source]

Updates an L7 rule.

Parameters:
  • old_l7rule (object) – The baseline L7 rule object.
  • new_l7rule (object) – The updated L7 rule object.
Returns:

Nothing if the update request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
listener_create(listener)[source]

Creates a new listener.

Parameters:

listener (object) – The listener object.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
listener_delete(listener)[source]

Deletes a listener.

Parameters:

listener (object) – The listener to delete.

Returns:

Nothing if the delete request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
listener_update(old_listener, new_listener)[source]

Updates a listener.

Parameters:
  • old_listener (object) – The baseline listener object.
  • new_listener (object) – The updated listener object.
Returns:

Nothing if the update request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
loadbalancer_create(loadbalancer)[source]

Creates a new load balancer.

Parameters:

loadbalancer (object) – The load balancer object.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – The driver does not support create.
  • UnsupportedOptionError – The driver does not support one of the configuration options.
loadbalancer_delete(loadbalancer, cascade=False)[source]

Deletes a load balancer.

Parameters:
  • loadbalancer (object) – The load balancer to delete.
  • cascade (bool) – If True, deletes all child objects (listeners, pools, etc.) in addition to the load balancer.
Returns:

Nothing if the delete request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
loadbalancer_failover(loadbalancer_id)[source]

Performs a fail over of a load balancer.

Parameters:loadbalancer_id (string) – ID of the load balancer to failover.
Returns:Nothing if the failover request was accepted.
Raises:DriverError – An unexpected error occurred in the driver.
Raises:NotImplementedError if driver does not support request.
loadbalancer_update(old_loadbalancer, new_loadbalancer)[source]

Updates a load balancer.

Parameters:
  • old_loadbalancer (object) – The baseline load balancer object.
  • new_loadbalancer (object) – The updated load balancer object.
Returns:

Nothing if the update request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – The driver does not support request.
  • UnsupportedOptionError – The driver does not support one of the configuration options.
member_batch_update(pool_id, members)[source]

Creates, updates, or deletes a set of pool members.

Parameters:
  • pool_id (string) – The id of the pool to update.
  • members (list) – List of member objects.
Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
member_create(member)[source]

Creates a new member for a pool.

Parameters:

member (object) – The member object.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
member_delete(member)[source]

Deletes a pool member.

Parameters:

member (object) – The member to delete.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
member_update(old_member, new_member)[source]

Updates a pool member.

Parameters:
  • old_member (object) – The baseline member object.
  • new_member (object) – The updated member object.
Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
pool_create(pool)[source]

Creates a new pool.

Parameters:

pool (object) – The pool object.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
pool_delete(pool)[source]

Deletes a pool and its members.

Parameters:

pool (object) – The pool to delete.

Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
pool_update(old_pool, new_pool)[source]

Updates a pool.

Parameters:
  • pool (object) – The baseline pool object.
  • pool – The updated pool object.
Returns:

Nothing if the create request was accepted.

Raises:
  • DriverError – An unexpected error occurred in the driver.
  • NotImplementedError – if driver does not support request.
  • UnsupportedOptionError – if driver does not support one of the configuration options.
validate_availability_zone(availability_zone_dict)[source]

Validates availability zone profile data.

This will validate an availability zone profile dataset against the availability zone settings the amphora driver supports.

Parameters:

availability_zone_dict (dict) – The availability zone dict to validate.

Returns:

None

Raises:
  • DriverError – An unexpected error occurred.
  • UnsupportedOptionError – If the driver does not support one of the availability zone settings.
validate_flavor(flavor_dict)[source]

Validates flavor profile data.

This will validate a flavor profile dataset against the flavor settings the amphora driver supports.

Parameters:

flavor_dict – The flavor dictionary to validate.

Returns:

None

Raises:
  • DriverError – An unexpected error occurred.
  • UnsupportedOptionError – If the driver does not support one of the flavor settings.

Module contents

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.