Attention
End of Technical Support for F5 OpenStack LBaaS version 1
F5 announces the End of Technical Support (EoTS) for the F5 OpenStack LBaaS version 1 integration. This announcement is in compliance with the OpenStack community deprecation of the OpenStack Neutron LBaaS version 1 plugin. Customers are encouraged to move to OpenStack LBaaS version 2.
F5 ceased to repair defects and perform maintenance on the F5 OpenStack LBaaS version 1 integration as of the Openstack Ocata release in April 2017.
For additional information, please refer to the F5 End of Life policy.
The most basic deployment consists of one F5® OpenStack LBaaSv1 driver and one LBaaSv1 agent installed on the same Neutron controller. This is the recommended configuration for testing / POCs. Scale out and redundant installations can be added at any time.
You will need the following to use the F5 OpenStack LBaaSv1 plugin.
Note
In order to use the Neutron command set, you need source a user file that has admin permissions.
$ source keystonerc_admin
You can download a release package directly from GitHub using curl
or wget
. Then, un-tar the package into the location of your choice.
Tip
Replace “<version_number>” with the version appropriate for your environment.
Example:
# curl -L -O https://github.com/F5Networks/f5-openstack-lbaasv1/releases/download/9.0.1final/f5-lbaasv1_9.0.1final.tgz
# tar -xf f5-lbaasv1_9.0.1final.tgz
Install the F5 BIG-IP common libraries.
$ dpkg -i build/deb_dist/f5-bigip-common_9.0.1-final_all.deb
Install the plugin driver.
$ dpkg -i build/deb_dist/f5-lbaas-driver_9.0.1-final_all.deb
Install the plugin agent.
$ dpkg -i build/deb_dist/f5-bigip-lbaas-agent_9.0.1-final_all.deb
Install the F5 BIG-IP common libraries.
$ rpm -i build/el7/f5-bigip-common_9.0.1-final.noarch.el7.rpm
Install the plugin driver.
$ rpm -i build/el7/f5-lbaas-driver-9.0.1-final.noarch.el7.rpm
Install the agent.
$ rpm -i build/el7/f5-bigip-lbaas-agent-9.0.1-final.noarch.el7.rpm
If you are upgrading from an earlier version, F5 recommends that you uninstall the current version before installing the new version.
Note
Perform the following steps on every server running the F5® agent.
Make a copy of the F5 agent configuration file. An existing configuration file in /etc/neutron will be overwritten during installation.
$ cp /etc/neutron/f5-oslbaasv1-agent.ini ~/
Stop and remove the old version of the libraries, plugin driver and agent.
Debian/Ubuntu
$ sudo service f5-oslbaasv1-agent stop $ dpkg -r f5-bigip-common f5-lbaas-driver f5-bigip-lbaas-agentRed Hat/CentOS
$ sudo service f5-oslbaasv1-agent stop $ yum remove f5-bigip-common.noarch f5-oslbaasv1-agent.noarch f5-oslbaasv1-driver.noarch
Follow the installation instructions in the previous section.
Restore the F5 agent configuration file.
Compare the backup file with the new one created during installation to make sure only the necessary settings for your deployment are modified. Then, copy your configuration file back into /etc/neutron/.
$ cp ~/f5-oslbaasv1-agent.ini /etc/neutron/f5-oslbaasv1-agent.ini
The agent settings are found in /etc/neutron/f5-oslbaasv1-agent.ini
. See the Sample Agent Config file for detailed explanations of all available settings.
Important
At minimum, you will need to edit the Device Settings
, Device Driver - iControl Driver Setting
, and L3 Segmentation Mode Settings
sections of the config file.
Be sure to provide the iControl® hostname, username, and password; without this information, the agent will not be able to connect to the BIG-IP® and will not run.
The installation process automatically starts an agent process; after you configure the /etc/neutron/f5-oslbaasv1-agent.init
file, restart the agent process <start-the-agent>.
The Neutron service settings are found in /etc/neutron/neutron_lbaas.conf
. Edit the Default
and Service Providers
sections as shown below to tell Neutron to use the F5® LBaaSv1 service provider driver.
Note
In the service providers section, the f5.os.lbaasv1driver
entry will be present, but commented out.
Uncomment this line to identify the F5® plugin as the LBaaSv1 service provider.
Add :default
to the end of the line as shown below to set it as the default LBaaSv1 service provider.
# vi /etc/neutron/neutron_lbaas.conf
[DEFAULT]
loadbalancer_plugin = neutron.services.loadbalancer.plugin.LoadBalancerPlugin
...
[service providers]
service_provider = LOADBALANCER:F5:f5.oslbaasv1driver.drivers.plugin_driver.F5PluginDriver:default
In the default section of your neutron.conf
file, the f5_loadbalancer_pool_scheduler_driver
variable can be set to an alternative agent scheduler. The default value for this setting, f5.oslbaasv1driver.drivers.agent_scheduler.TenantScheduler
, causes LBaaSv1 pools to be distributed within an environment with tenant affinity.
Warning
You should only provide an alternate scheduler if you have an alternate service placement requirement and your own scheduler.
# service neutron-server restart \\ Debian/Ubuntu
# systemctl neutron-service.service restart \\ RedHat/CentOS
# service apache2 restart \\ Debian/Ubuntu
# service httpd restart \\ Red Hat/CentOS
The F5® agent may start running automatically upon installation. Taking this step will start or restart the service, depending on the agent’s current status.
# service f5-oslbaasv1-agent start
Note
If you want to start with clean logs, you should remove the log file first:
# rm /var/log/neutron/f5-oslbaasv1-agent.log
See also
Once the agent has been installed and configured, you can use the Neutron agent commands to manage it.