F5 Driver for OpenStack LBaaSv2¶
The F5 Driver for OpenStack LBaaSv2 is a Neutron LBaaSv2 service provider driver (
f5lbaasdriver) that runs within the OpenStack Neutron controller.
The F5 driver is an alternative to the default Neutron LBaaS service provider driver.
It enables use of F5 BIG-IP Local Traffic Manager services in an OpenStack cloud.
The F5 Driver for OpenStack LBaaSv2 runs within the OpenStack Neutron controller processes. It watches the Neutron RPC messaging queue for calls to the Neutron LBaaS API and schedules tasks to the F5 Agent for OpenStack Neutron. The F5 Agent for OpenStack Neutron uses iControl REST API calls to apply the desired configurations to BIG-IP device(s).
See the F5 Driver for OpenStack LBaaSv2 user documentation.
- You must download and install the F5 Agent for OpenStack Neutron and the F5 Service Provider Package before you install the F5 LBaaSv2 driver.
- Install the F5 Driver for OpenStack LBaaSv2 on your Neutron controller.
F5 Service Provider Package¶
The F5 service provider package preps your Neutron installation for use with the F5 Driver for OpenStack LBaaSv2. This is a required package. The F5 OpenStack LBaaS Solution will not work if this package isn’t installed.
You’ll need to download the F5 LBaaSv2 service provider package and add it to the python path for
neutron_lbaas, then download and install the F5 driver.
curl -O -L https://github.com/F5Networks/neutron-lbaas/releases/download/v10.0.0/f5.tgz sudo tar xvf f5.tgz -C /usr/lib/python2.7/dist-packages/neutron_lbaas/drivers/ curl –L –O https://github.com/F5Networks/f5-openstack-lbaasv2-driver/releases/download/v13.0.2/python-f5-openstack-lbaasv2-driver_13.0.2-1_1404_all.deb dpkg –i python-f5-openstack-lbaasv2-driver_13.0.2-1_1404_all.deb
Download and install the F5 service provider package, then
pip install the package from GitHub.
pip install git+https://github.com/F5Networksemail@example.com
@<branch-name> to install from HEAD on a specific branch. For example:
pip install git+https://github.com/F5Networks/f5-openstack-lbaasv2-driver@queens
curl -O -L https://github.com/F5Networks/neutron-lbaas/releases/download/v10.0.0/f5.tgz sudo tar xvf f5.tgz -C /usr/lib/python2.7/site-packages/neutron_lbaas/drivers/ curl –L –O https://github.com/F5Networks/f5-openstack-lbaasv2-driver/releases/download/v13.0.2/f5-openstack-lbaasv2-driver-13.0.2-1.el7.noarch.rpm rpm –ivh f5-openstack-lbaasv2-driver-13.0.2-1.el7.noarch.rpm
Take the steps below to tell Neutron to use the F5 service provider driver and the LBaaSv2 service plugin.
The config file names/locations may vary depending on your OpenStack platform. See Partners for a list of F5’s certified OpenStack distribution partners and links to their documentation.
Add ‘F5Networks’ to the
service_providerssection of the Neutron LBaaS config file:
/etc/neutron/neutron_lbaas.confas shown below.
$ vim /etc/neutron/neutron_lbaas.conf ... [service_providers] service_provider = LOADBALANCERV2:F5Networks:neutron_lbaas.drivers.f5.driver_v2.F5LBaaSV2Driver:default ...
Add the LBaaSv2 service plugin to the
[DEFAULT]section of the Neutron config file:
$ vi /etc/neutron/neutron.conf ... [DEFAULT] service_plugins = [already defined plugins],neutron_lbaas.services.loadbalancer.plugin.LoadBalancerPluginv2 ...
If you have previously used the LBaaSv1 service plugin (
lbaas), remove it. The two cannot run simultaneously.
$ sudo service neutron-server restart \\ Ubuntu $ sudo systemctl restart neutron-server \\ CentOS