Redundancy and Scale Out

Running the F5 Agent on different hosts helps ensure that the F5 Agent and F5 Driver processes remain alive and functional if a host goes down. Multiple F5 Agent instances can manage a single BIG-IP device or cluster if each runs on a separate host.

Learn more

Prerequisites

  • Administrator access to both the BIG-IP device(s) and the OpenStack cloud.
  • All hosts running the F5 Integration for OpenStack must have the Neutron and Neutron LBaaS packages installed.
  • All hosts running the F5 Integration for OpenStack must use the same Neutron database.

Caveats

  • You can not run multiple F5 Agent instances on the same host to manage the same BIG-IP device or cluster.
  • In the standard multi-agent deployment, you can’t specify which F5 Agent instance you want to use to create a new load balancer (meaning you can’t choose which BIG-IP device/cluster to create the new partition on).
  • Use differentiated service environments if you need a greater degree of control over which F5 Agent instance(s) handle specific LBaaS requests.

Configuration

  1. Copy the Neutron and Neutron LBaaS configuration files from the Neutron controller to each host on which you want to run an F5 Agent instance.

    cp /etc/neutron/neutron.conf <hostname>:/etc/neutron/neutron.conf
    cp /etc/neutron/neutron_lbaas.conf <hostname>:/etc/neutron/neutron_lbaas.conf
    
  2. Install the F5 Agent for OpenStack Neutron on each host.

  3. Copy your F5 Agent configuration file from the Neutron controller to each host.

    cp /etc/neutron/services/f5/f5-openstack-agent.ini <hostname>:/etc/neutron/services/f5/f5-openstack-agent.ini
    

    Tip

    • If you are managing an active-standby pair or cluster with config sync turned on: [1]

      • Set the ha_type to standalone.
      • Provide the iControl endpoint for one (1) of the BIG-IP devices in the cluster.
    • If you are managing a cluster that has config sync turned on for a device group within the cluster:

      • Set the ha_type to pair or scalen.

      • Provide the iControl endpoint for one (1) of the BIG-IP devices in the device group and the endpoint for a device outside the group (pair).

        –OR–

      • Provide the iControl endpoint for one (1) of the BIG-IP devices in the device group and the endpoint for each device in the cluster that is not automatically syncing its configurations with the group. (scalen)

  4. Start the F5 Agent on each host.

    CENTOS

    systemctl enable f5-openstack-agent
    systemctl start f5-openstack-agent
    

    UBUNTU

    service f5-oslbaasv2-agent start
    

Learn more

Spreading the request load for an environment across multiple F5 Agent instances helps to avoid F5 Agent overload and loss of functionality.

If you are well versed in containerized environments, you can run each F5 Agent instance in a separate container on your Neutron controller. If the service provider driver is in the container’s build context, you don’t need to install it in each container.

  • The neutron.conf and neutron-lbaas.conf files must be present in each container.
  • The service provider driver does not need to run in the container if you’re building from the Neutron controller.

Warning

F5 Networks does not support container service deployments in OpenStack.

Footnotes

[1]Using configuration synchronization in clusters managed by the F5 Integration for OpenStack Neutron LBaaS is not recommended. See Manage BIG-IP clusters for more information.