bf8949defc
Unifies haproxy reference implementation to make common agent based plugin driver which is suitable for all vendors who wants to use async mechanism. - Agent API as well as device driver API changed to handle loadbalancer objects individually; - Agent loads device drivers according to config; - LogicalDeviceCache class was removed from agent as it was used only as a list - to put and remove entries ant check whether entry is in or not. It was replaced with instance_mapping dict in agent to store known instances and corresponding device_drivers; - Agent reports which device drivers are supported (needs for scheduling on plugin side); - Agent-to-plugin API was extended to provide an ability for agent to update statuses of pools/vips/members/health_monitors; - Vendor should only implement device driver; plugin driver just needs to inherit AgentBasedPluginDriver and override device_driver member; - This patch doesn't move files to make review easier; all rename/replace will be done in a subsequent patch; DocImpact NOTE: Since the change in the agent RPC API is backward-incompatible (major RPC version change), LBaaS server-agent communications will be completely broken until both sides are upgraded so users will be unable to create new or update existing HAProxy loadbalancer instances during upgrade Implements blueprint lbaas-common-agent-driver Change-Id: I9fd90a1321611d202ef838681273081fa6c1686a |
||
---|---|---|
.. | ||
agent | ||
api | ||
cmd | ||
common | ||
db | ||
debug | ||
extensions | ||
locale | ||
openstack | ||
plugins | ||
scheduler | ||
server | ||
services | ||
tests | ||
__init__.py | ||
auth.py | ||
context.py | ||
hooks.py | ||
manager.py | ||
neutron_plugin_base_v2.py | ||
policy.py | ||
quota.py | ||
service.py | ||
version.py | ||
wsgi.py |