Welcome back for part two of the Rackspace Private Cloud powered by OpenStack v12.2 deep dive blog series, where we’ll go over consuming Load Balancing as a Service v2 with Liberty. If you missed part one, on the reference architecture, make sure you check it out.
Consuming LBaaS v2 With Liberty
Before jumping into the details of the Load Balancer as a Service functionality, I’d like to set the foundation around this service and the service that supports it.
The OpenStack Networking Service (code name: Neutron) was developed to incorporate many traditional networking capabilities, including routers, switches, firewalls and load balancers. Because OpenStack is, by and large, a modular platform, each of those features can be deployed independently.
As each feature has gained maturity, we rolled them into our standard product offering. Within our Liberty release of Rackspace Private Cloud powered by OpenStack, the LBaaS functionality on top of Neutron has been added. As always, we feel it’s important to stay in line with the community’s direction and also consume the mainline code from the OpenStack-Ansible repository, also known as OSA.
Additional details around the LBaaS feature can be found here: http://docs.openstack.org/mitaka/networking-guide/adv-config-lbaas.html
LBaaS v2 With HAProxy Agent Service Plug-In
Since the LBaaS feature was included within our Liberty release of OpenStack, we decided to move forward with a second version of LBaaS since v1 was depreciated. This left us with another decision to make: which implementation approach should we take?
Right now, there are two methods for deploying the LBaaS feature with Neutron. The first uses the HAProxy backed agent (standard functionality), while the second, newer option is to use Octavia (advanced functionality). But before you go chasing the shiny new penny, please pause — further evaluation is required.
One of the fun exercises you will find yourself cycling through continuously as an operator of OpenStack clouds is determining the service’s maturity levels. The OpenStack Foundation aided the process by creating the Project Navigator. Please take some time to check out this great resource, it will get you started down the right path — and then you need to layer on your own analysis/personal investigation.
After weeks of evaluating the two options, we decided that while Octavia is the newest implementation method for LBaaS, it was not at the maturity level we preferred. This left us deploying LBaaS v2 with the agent backed by HAProxy. We have definite plans to circle back to Octavia in the future and pivot over to the new approach the community has developed.
LBaaS v2 Agent – Pros and Cons
Like any decision, this one comes with pros and cons. I feel like the right thing to do here is put all the clean and dirty laundry out on the table:
- Offers all the standard load balancing capabilities traditionally used.
- Has the ability to balance traffic over multiple ports backed by a single load balancer.
- Simple integration into new or existing OpenStack deployments, if Neutron is already deployed.
- Within Liberty, you are unable to manage the LBaaS feature from within Horizon. The Horizon panels are only available for Mitaka and going forward.
- Feature does not meet high availability standards; that means the use of the LBaaS feature to handle production workloads is not recommended at this time.
Go Give It a Try!
Hopefully, I’ve piqued your interest and you want to give it a try. You have a few options available to do so. Give us a call and let us walk you through a live demo of Rackspace Private Cloud powered by OpenStack v12.2.
The other alternative is to deploy OSA yourself and layer on the LBaaS feature by following these instructions.
Here’s a link to the documentation for the LBaaS API/CLI command operations.
Two posts down and one more to go! You will definitely not want to miss part 3, as we will cover all things security for your OpenStack implementation. Have you ever been curious as to the steps you should take to harden your OpenStack deployment on top of Ubuntu? If so, please keep your eyes peeled for part three, coming later this week.