octavia.controller.worker.v2 package

Subpackages

Submodules

octavia.controller.worker.v2.controller_worker module

class ControllerWorker[source]

Bases: object

amphora_cert_rotation(amphora_id)[source]

Perform cert rotation for an amphora.

Parameters:

amphora_id – ID for amphora to rotate

Returns:

None

Raises:

AmphoraNotFound – The referenced amphora was not found

batch_update_members(old_members, new_members, updated_members)[source]
create_health_monitor(health_monitor)[source]

Creates a health monitor.

Parameters:

health_monitor – Provider health monitor dict

Returns:

None

Raises:

NoResultFound – Unable to find the object

create_l7policy(l7policy)[source]

Creates an L7 Policy.

Parameters:

l7policy – Provider dict of the l7policy to create

Returns:

None

Raises:

NoResultFound – Unable to find the object

create_l7rule(l7rule)[source]

Creates an L7 Rule.

Parameters:

l7rule – Provider dict l7rule

Returns:

None

Raises:

NoResultFound – Unable to find the object

create_listener(listener)[source]

Creates a listener.

Parameters:

listener – A listener provider dictionary.

Returns:

None

Raises:

NoResultFound – Unable to find the object

create_load_balancer(loadbalancer, flavor=None, availability_zone=None)[source]

Creates a load balancer by allocating Amphorae.

First tries to allocate an existing Amphora in READY state. If none are available it will attempt to build one specifically for this load balancer.

Parameters:

loadbalancer – The dict of load balancer to create

Returns:

None

Raises:

NoResultFound – Unable to find the object

create_member(member)[source]

Creates a pool member.

Parameters:

member – A member provider dictionary to create

Returns:

None

Raises:

NoSuitablePool – Unable to find the node pool

create_pool(pool)[source]

Creates a node pool.

Parameters:

pool – Provider pool dict to create

Returns:

None

Raises:

NoResultFound – Unable to find the object

delete_amphora(amphora_id)[source]

Deletes an existing Amphora.

Parameters:

amphora_id – ID of the amphora to delete

Returns:

None

Raises:

AmphoraNotFound – The referenced Amphora was not found

delete_health_monitor(health_monitor)[source]

Deletes a health monitor.

Parameters:

health_monitor – Provider health monitor dict

Returns:

None

Raises:

HMNotFound – The referenced health monitor was not found

delete_l7policy(l7policy)[source]

Deletes an L7 policy.

Parameters:

l7policy – Provider dict of the l7policy to delete

Returns:

None

Raises:

L7PolicyNotFound – The referenced l7policy was not found

delete_l7rule(l7rule)[source]

Deletes an L7 rule.

Parameters:

l7rule – Provider dict of the l7rule to delete

Returns:

None

Raises:

L7RuleNotFound – The referenced l7rule was not found

delete_listener(listener)[source]

Deletes a listener.

Parameters:

listener – A listener provider dictionary to delete

Returns:

None

Raises:

ListenerNotFound – The referenced listener was not found

delete_load_balancer(load_balancer, cascade=False)[source]

Deletes a load balancer by de-allocating Amphorae.

Parameters:

load_balancer – Dict of the load balancer to delete

Returns:

None

Raises:

LBNotFound – The referenced load balancer was not found

delete_member(member)[source]

Deletes a pool member.

Parameters:

member – A member provider dictionary to delete

Returns:

None

Raises:

MemberNotFound – The referenced member was not found

delete_pool(pool)[source]

Deletes a node pool.

Parameters:

pool – Provider pool dict to delete

Returns:

None

Raises:

PoolNotFound – The referenced pool was not found

failover_amphora(amphora_id, reraise=False)[source]

Perform failover operations for an amphora.

Note: This expects the load balancer to already be in provisioning_status=PENDING_UPDATE state.

Parameters:
  • amphora_id – ID for amphora to failover

  • reraise – If enabled reraise any caught exception

Returns:

None

Raises:

octavia.common.exceptions.NotFound – The referenced amphora was not found

failover_loadbalancer(load_balancer_id)[source]

Perform failover operations for a load balancer.

Note: This expects the load balancer to already be in provisioning_status=PENDING_UPDATE state.

Parameters:

load_balancer_id – ID for load balancer to failover

Returns:

None

Raises:

octavia.common.exceptions.NotFound – The load balancer was not found.

run_flow(func, *args, **kwargs)[source]
property services_controller
update_amphora_agent_config(amphora_id)[source]

Update the amphora agent configuration.

Note: This will update the amphora agent configuration file and

update the running configuration for mutatable configuration items.

Parameters:

amphora_id – ID of the amphora to update.

Returns:

None

update_health_monitor(original_health_monitor, health_monitor_updates)[source]

Updates a health monitor.

Parameters:
  • original_health_monitor – Provider health monitor dict

  • health_monitor_updates – Dict containing updated health monitor

Returns:

None

Raises:

HMNotFound – The referenced health monitor was not found

update_l7policy(original_l7policy, l7policy_updates)[source]

Updates an L7 policy.

Parameters:
  • l7policy – Provider dict of the l7policy to update

  • l7policy_updates – Dict containing updated l7policy attributes

Returns:

None

Raises:

L7PolicyNotFound – The referenced l7policy was not found

update_l7rule(original_l7rule, l7rule_updates)[source]

Updates an L7 rule.

Parameters:
  • l7rule – Origin dict of the l7rule to update

  • l7rule_updates – Dict containing updated l7rule attributes

Returns:

None

Raises:

L7RuleNotFound – The referenced l7rule was not found

update_listener(listener, listener_updates)[source]

Updates a listener.

Parameters:
  • listener – A listener provider dictionary to update

  • listener_updates – Dict containing updated listener attributes

Returns:

None

Raises:

ListenerNotFound – The referenced listener was not found

update_load_balancer(original_load_balancer, load_balancer_updates)[source]

Updates a load balancer.

Parameters:
  • original_load_balancer – Dict of the load balancer to update

  • load_balancer_updates – Dict containing updated load balancer

Returns:

None

Raises:

LBNotFound – The referenced load balancer was not found

update_member(member, member_updates)[source]

Updates a pool member.

Parameters:
  • member_id – A member provider dictionary to update

  • member_updates – Dict containing updated member attributes

Returns:

None

Raises:

MemberNotFound – The referenced member was not found

update_pool(origin_pool, pool_updates)[source]

Updates a node pool.

Parameters:
  • origin_pool – Provider pool dict to update

  • pool_updates – Dict containing updated pool attributes

Returns:

None

Raises:

PoolNotFound – The referenced pool was not found

retryMaskFilter(record)[source]

octavia.controller.worker.v2.taskflow_jobboard_driver module

class EtcdTaskFlowDriver(persistence_driver)[source]

Bases: JobboardTaskFlowDriver

job_board(persistence)[source]

Setting up jobboard backend based on configuration setting.

Parameters:

persistence – taskflow persistence backend instance

Returns:

taskflow jobboard backend instance

class JobboardTaskFlowDriver[source]

Bases: object

abstract job_board(persistence)[source]

Setting up jobboard backend based on configuration setting.

Parameters:

persistence – taskflow persistence backend instance

Returns:

taskflow jobboard backend instance

class MysqlPersistenceDriver[source]

Bases: object

get_persistence()[source]
initialize()[source]
class RedisTaskFlowDriver(persistence_driver)[source]

Bases: JobboardTaskFlowDriver

job_board(persistence)[source]

Setting up jobboard backend based on configuration setting.

Parameters:

persistence – taskflow persistence backend instance

Returns:

taskflow jobboard backend instance

class ZookeeperTaskFlowDriver(persistence_driver)[source]

Bases: JobboardTaskFlowDriver

job_board(persistence)[source]

Setting up jobboard backend based on configuration setting.

Parameters:

persistence – taskflow persistence backend instance

Returns:

taskflow jobboard backend instance

Module contents