Jump to: navigation, search


< Neutron‎ | LBaaS
Revision as of 05:29, 29 December 2013 by Mike T (talk | contribs) (Mike T moved page Neutron/LBaaS/a10networks to Neutron/LBaaS/A10Networks: Wrong Page Name)

DRAFT - Place Holder

A10 Networks LBaaS Driver for Thunder Series

For technical informtion please contact mthompson | <a|t> | a10networks || com


This A10 Network Driver is specifically designed to manage Thunder Series Appliances.

    • A non-community version of the driver can be provided which extends horizon and other component.


The implementation relays on:

  • new file: a10networks/__init__.py
  • new file: a10networks/a10_api_2_1/__init__.py
  • new file: a10networks/a10_api_2_1/core/__init__.py
  • new file: a10networks/a10_api_2_1/core/apiObj.py
  • new file: a10networks/a10_api_2_1/core/device_select.py
  • new file: a10networks/a10_api_2_1/core/ssl_monkeypatch.py
  • new file: a10networks/a10_api_2_1/core/structure.py
  • new file: a10networks/a10_api_2_1/slb/__init__.py
  • new file: a10networks/a10_api_2_1/slb/hm.py
  • new file: a10networks/a10_api_2_1/slb/server.py
  • new file: a10networks/a10_api_2_1/slb/service_group.py
  • new file: a10networks/a10_api_2_1/slb/template.py
  • new file: a10networks/a10_api_2_1/slb/virtual_server.py
  • new file: a10networks/a10_api_2_1/slb/virtual_service.py
  • new file: a10networks/example_thunder_device_conf.ini
  • new file: a10networks/exceptions.py
  • new file: a10networks/thunder.py

There are two ways a device can be register.

# Create different versions of the driver and associated configuration file. # Utilize, the first method, but also utilize multiple devices in the configuration file. A consistent hash will be utilized to for placement policy.


In the Neutron.conf add the following line. This will enable the specific service provider. You can register multiple drivers that point to a specific system or group of systems.

service_provider =LOADBALANCER:A10_Thunder:neutron.services.loadbalancer.drivers.a10networks.thunder.thunder_driver:default

Configuration Files:

The configuration files need to be configured utilizing the example below.

This file would be located in /etc/neutron/services/loadbalancer/a10networks/example_thunder_device_conf.ini


#format is device FQDN then host object

#ax1.foo.com = {"host":"",
#                "username" : "admin",
#                "password" : , "a10",
#                 "status":"1",
#                 "autosnat":True}

ax1.foo.com = {"host":"",
              "password":"a10", "status":"1", "autosnat":"True"}


#Only method supported is hash


#This is for the nat address on router.
#If set to false then will utilize default member addr.
use_float_if_assigned = 'True'

#Choices in this version(ADP)
#Choices in the next release(L3V, LSI, VSI)

Reference Architecture:

Please contact a10 networks for more information.

1. One arm mode with SNAT.

2. Routed Mode on Private network

3. Route Injection Mode.