octavia.amphorae.backends.agent.api_server package¶
Submodules¶
octavia.amphorae.backends.agent.api_server.amphora_info module¶
octavia.amphorae.backends.agent.api_server.haproxy_compatibility module¶
octavia.amphorae.backends.agent.api_server.keepalived module¶
octavia.amphorae.backends.agent.api_server.keepalivedlvs module¶
-
class
KeepalivedLvs
[source]¶ Bases:
octavia.amphorae.backends.agent.api_server.udp_listener_base.UdpListenerApiServerBase
-
delete_udp_listener
(listener_id)[source]¶ Delete a UDP Listener from a amphora
Parameters: listener_id – The id of the listener Returns: HTTP response with status code. Raises: Exception – If unsupport initial system of amphora.
-
get_all_udp_listeners_status
()[source]¶ Gets the status of all UDP listeners
Gets the status of all UDP listeners on the amphora.
-
get_udp_listener_config
(listener_id)[source]¶ Gets the keepalivedlvs config
Parameters: listener_id – the id of the listener
-
octavia.amphorae.backends.agent.api_server.loadbalancer module¶
-
class
Loadbalancer
[source]¶ Bases:
object
-
get_all_listeners_status
(other_listeners=None)[source]¶ Gets the status of all listeners
This method will not consult the stats socket so a listener might show as ACTIVE but still be in ERROR
Currently type==SSL is also not detected
-
octavia.amphorae.backends.agent.api_server.osutils module¶
-
class
BaseOS
(os_name)[source]¶ Bases:
object
-
PACKAGE_NAME_MAP
= {}¶
-
-
class
CentOS
(os_name)[source]¶ Bases:
octavia.amphorae.backends.agent.api_server.osutils.RH
-
PACKAGE_NAME_MAP
= {'haproxy': 'haproxy18'}¶
-
-
class
RH
(os_name)[source]¶ Bases:
octavia.amphorae.backends.agent.api_server.osutils.BaseOS
-
ETH_IFDOWN_LOCAL_SCRIPT
= 'rh_plug_port_eth_ifdown_local.conf.j2'¶
-
ETH_IFUP_LOCAL_SCRIPT
= 'rh_plug_port_eth_ifup_local.conf.j2'¶
-
ETH_X_ALIAS_VIP_CONF
= 'rh_plug_vip_ethX_alias.conf.j2'¶
-
ETH_X_PORT_CONF
= 'rh_plug_port_ethX.conf.j2'¶
-
ETH_X_VIP_CONF
= 'rh_plug_vip_ethX.conf.j2'¶
-
ROUTE_ETH_X_CONF
= 'rh_route_ethX.conf.j2'¶
-
RULE_ETH_X_CONF
= 'rh_rule_ethX.conf.j2'¶
-
write_port_interface_file
(netns_interface, fixed_ips, mtu, interface_file_path=None, template_port=None)[source]¶
-
octavia.amphorae.backends.agent.api_server.plug module¶
octavia.amphorae.backends.agent.api_server.udp_listener_base module¶
-
class
UdpListenerApiServerBase
[source]¶ Bases:
object
Base UDP Listener Server API
-
SERVER_INSTANCE
= None¶
-
delete_udp_listener
(listener_id)[source]¶ Delete a UDP Listener from a amphora
Parameters: listener_id – The id of the listener Returns: HTTP response with status code. Raises: Exception – If unsupport initial system of amphora.
-
get_all_udp_listeners_status
()[source]¶ Gets the status of all UDP Listeners
This method will not consult the stats socket so a listener might show as ACTIVE but still be in ERROR
Returns: a list of UDP Listener status Raises: Exception – If the listener pid located directory is not exist
-
get_udp_listener_config
(listener_id)[source]¶ Gets the UDP Listener configuration details
Parameters: listener_id – the id of the UDP Listener Returns: HTTP response with status code. Raises: Exception – If the listener is failed to find.
-
octavia.amphorae.backends.agent.api_server.util module¶
-
get_haproxy_vip_addresses
(lb_id)[source]¶ Get the VIP addresses for a load balancer.
Parameters: lb_id – The load balancer ID to get VIP addresses from. Returns: List of VIP addresses (IPv4 and IPv6)
-
get_listeners
()[source]¶ Get Listeners
Returns: An array with the ids of all listeners, e.g. [‘123’, ‘456’, …] or [] if no listeners exist
-
get_loadbalancers
()[source]¶ Get Load balancers
Returns: An array with the uuids of all load balancers, e.g. [‘123’, ‘456’, …] or [] if no loadbalancers exist
-
get_protocol_for_lb_object
(object_id)[source]¶ Returns the L4 protocol for a listener.
If the listener is a TCP based listener (haproxy) return TCP. If the listener is a UDP based listener (lvs) return UDP. If the listener is not identifiable, return None.
Parameters: listener_id – The ID of the listener to identify. Returns: TCP, UDP, or None