a10-lbaas-driver

Change-Id: Ie222b5b5d46770ffdc0dc8c567b11b37b0e76bca
This commit is contained in:
Doug Wiegley 2014-06-11 14:54:37 -06:00
parent b13d249eff
commit 4efb3ac53f
1 changed files with 146 additions and 0 deletions

View File

@ -0,0 +1,146 @@
..
This work is licensed under a Creative Commons Attribution 3.0 Unported
License.
http://creativecommons.org/licenses/by/3.0/legalcode
==========================================
A10 Networks LBaaS Driver
==========================================
https://blueprints.launchpad.net/neutron/+spec/a10networks-lbaas-driver
Resubmitting Icehouse BP. Neutron/LBaaS driver for A10 Networks appliances.
Problem description
===================
The new driver would allow using A10 Networks ADC appliances (hardware or
software) as backends for Neutron/LBaaS functionality.
Proposed change
===============
The driver will implement the interfaces in the lbaas abstract_driver, using
axAPI verison 2.1, a JSON HTTP interface for configuring A10 appliances. The
currently implemented methods are:
* create_vip
* update_vip
* delete_vip
* create_pool
* update_pool
* delete_pool
* stats
* create_member
* update_member
* delete_member
* update_pool_health_monitor
* create_pool_health_monitor
* delete_pool_health_monitor
Among the current LBaaS functionality (as of Icehouse), the only unsupported
feature is APP_COOKIE persistence.
Driver will support the upcoming Juno LBaaS object model changes. Juno TLS support will be included in a future blueprint.
Alternatives
------------
None.
Data model impact
-----------------
None.
REST API impact
---------------
None.
Security impact
---------------
None.
Notifications impact
--------------------
None.
Other end user impact
---------------------
None.
Performance Impact
------------------
None.
Other deployer impact
---------------------
None.
Developer impact
----------------
None.
Implementation
==============
Assignee(s)
-----------
Primary assignee: https://launchpad.net/~dougwig
Work Items
----------
* A10 driver code
* Unit tests
* Voting CI
Dependencies
============
Driver likely affected by LBaaS model and TLS changes for Juno:
* https://blueprints.launchpad.net/neutron/+spec/lbaas-api-and-objmodel-improvement
* https://blueprints.launchpad.net/neutron/+spec/lbaas-ssl-termination
Testing
=======
* Unit tests
* A10 QA
* Existing LBaaS tests provide complete coverage, if driver is installed
and configured (as our CI will do.)
* Not testable in gate, requires hardware. Third party CI will be in place.
Documentation Impact
====================
None.
References
==========
* Github repo: https://github.com/a10networks/a10_lbaas_driver
* axAPI reference and examples: http://www.a10networks.com/products/axseries-aXAPI.php
* Old description doc: https://docs.google.com/file/d/0B2tCOk4L0wErdEpfdGtPMXpqM0k/edit