Jump to: navigation, search

Difference between revisions of "Neutron/LBaaS/A10Networks"

< Neutron‎ | LBaaS
m (A10 Networks LBaaS Driver for Thunder Series Appliances)
Line 1: Line 1:
  
 
'''''DRAFT - Place Holder'''''
 
'''''DRAFT - Place Holder'''''
A10Networks LBaaS Driver for Thunder Series Appliances
+
== <big>A10Networks LBaaS Driver for Thunder Series Appliances</big> ==
  
 
For technical informtion please contact <code> mthompson | <a|t> | a10networks || com  </code>
 
For technical informtion please contact <code> mthompson | <a|t> | a10networks || com  </code>
  
Introductions:
+
=== Introductions: ===
  
 
This A10 Network Driver is specifically designed to manage Thunder Series Appliances.  
 
This A10 Network Driver is specifically designed to manage Thunder Series Appliances.  
Line 12: Line 12:
 
Implementation:  
 
Implementation:  
  
The implementation relays on:
+
=== '''The implementation relays on:''' ===
 
 
Added A10 LBaaS Driver to branch.
 
 
<code>
 
<code>
 
* new file: a10networks/__init__.py
 
* new file: a10networks/__init__.py
Line 35: Line 33:
 
</code>
 
</code>
 
   
 
   
There are two ways a device can be register.
+
== There are two ways a device can be register. ==
  
 
# Create different versions of the driver and associated configuration file.
 
# 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.
 
# 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.
+
=== Neutron.conf ===
 +
In the <sup>'''Neutron.conf'''</sup> 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.
  
  
Line 47: Line 46:
 
</code>
 
</code>
  
 +
 +
=== Configuration Files: ===
  
 
The configuration files need to be configured utilizing the example below.  
 
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
 
<syntaxhighlight lang="ini">
 
<syntaxhighlight lang="ini">
  
Line 86: Line 87:
  
  
Reference Architecture:
+
=== Reference Architecture:===
  
  

Revision as of 05:26, 29 December 2013

DRAFT - Place Holder

A10Networks LBaaS Driver for Thunder Series Appliances

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

Introductions:

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.

Implementation:

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.

Neutron.conf

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

[devices]

#format is device FQDN then host object

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


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

[placement]

#Only method supported is hash
#method=hash

[member]

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

[partition]
#Choices in this version(ADP)
#Choices in the next release(L3V, LSI, VSI)
#partition='ADP'


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.