Chapter 2. Considerations for implementing the Load-balancing service
Before you deploy the Red Hat OpenStack Services on OpenShift (RHOSO) Load-balancing service (octavia), you must make various decisions, such as which provider to use or whether to implement a highly available environment.
For more information, see the following sections:
- Section 2.1, “Load-balancing service provider drivers”
- Section 2.2, “Load-balancing service (octavia) feature support matrix”
- Section 2.3, “Load-balancing service software requirements”
- Section 2.4, “Avoiding taskflow interruptions by using flow resumption”
- Section 2.5, “Basics of active-standby topology for Load-balancing service instances”
2.1. Load-balancing service provider drivers Copy linkLink copied to clipboard!
The Red Hat OpenStack Services on OpenShift (RHOSO) Load-balancing service (octavia) supports enabling multiple provider drivers by using the Octavia v2 API. You can choose to use one provider driver, or multiple provider drivers simultaneously.
RHOSO provides two load-balancing providers, amphora and Open Virtual Network (OVN).
Amphora, the default, is a highly available load balancer with a feature set that scales with your compute environment. Because of this, amphora is suited for large-scale deployments.
The OVN load-balancing provider is a lightweight load balancer with a basic feature set. OVN is typical for east-west, layer 4 network traffic. OVN provisions quickly and consumes fewer resources than a full-featured load-balancing provider such as amphora.
2.2. Load-balancing service (octavia) feature support matrix Copy linkLink copied to clipboard!
The Red Hat OpenStack Services on OpenShift (RHOSO) Load-balancing service (octavia) provides two load-balancing providers, amphora and Open Virtual Network (OVN).
Amphora is a full-featured load-balancing provider that requires a separate haproxy VM and an extra latency hop.
OVN runs on every node and does not require a separate VM nor an extra hop. However, OVN has far fewer load-balancing features than amphora.
The following table lists features in the Load-balancing service that 18.0 supports and in which maintenance release support for the feature began.
If the feature is not listed, then RHOSO 18.0 does not support the feature.
| Feature | Support level in RHOSO 18.0 | |
| Amphora Provider | OVN Provider | |
| Amphora active-standby | Full support | N/A |
| Availability zones | Full support | No support |
| Backup members | Technology Preview | No support |
| DPDK | No support | No support |
| Flow resumption (taskflow jobboard) | Full support | N/A |
| Health monitors | Full support | Technology preview |
| Listener API timeouts | Full support | No support |
| Load-balancing flavors | Full support | N/A |
| Log offloading | Full Support | No support |
| ML2/OVN DVR | Full support | Full support |
| ML2/OVN L3 HA | Full support | Full support |
| Object tags | Full support | Full support |
| SCTP | Technology Preview | Full support |
| SR-IOV | No support | No support |
| TCP | Full support | Full support |
| Terminated HTTPS load balancers (with barbican) | Full support | No support |
| TLS back end encryption | Technology Preview | No support |
| TLS client authentication | Technology Preview | No support |
| UDP | Full support | Full support |
| VIP access control list | Full support | N/A |
| Volume-based amphora | No support | N/A |
2.3. Load-balancing service software requirements Copy linkLink copied to clipboard!
The Red Hat OpenStack Services on OpenShift (RHOSO) Load-balancing service (octavia) requires that you configure the following core OpenStack components:
- Compute (nova)
- OpenStack Networking (neutron)
- Image (glance)
- Identity (keystone)
- Key Manager (barbican)
- MariaDB
- Redis (when flow resumption is enabled)
2.4. Avoiding taskflow interruptions by using flow resumption Copy linkLink copied to clipboard!
If the controller service abruptly shuts down during creation, modification, deletion, or failover of an amphora load balancer, the taskflow is interrupted and the instance remains in a PENDING_* state indefinitely. You can avoid these situations by configuring the Load-balancing service (octavia) to use flow resumption, also known as taskflow jobboard. When flow resumption is configured, the Load-balancing service automatically re-assigns the flow to an alternate controller if the original controller shuts down unexpectedly.
You configure flow resumption by modifying the OpenStackControlPlane custom resource (CR). For more information, see the optional steps in Deploying the Load-balancing service.
2.5. Basics of active-standby topology for Load-balancing service instances Copy linkLink copied to clipboard!
When you deploy the Red Hat OpenStack Services on OpenShift (RHOSO) Load-balancing service (octavia), you can decide whether, by default, load balancers are highly available when users create them. If you want to give users a choice, then after RHOSO deployment, create a Load-balancing service flavor for creating highly available load balancers and a flavor for creating standalone load balancers.
By default, the amphora provider driver is configured for a single Load-balancing service (amphora) instance topology with limited support for high availability (HA). However, you can make Load-balancing service instances highly available when you implement an active-standby topology.
In this topology, the Load-balancing service boots an active and standby amphora instance for each load balancer, and maintains session persistence between each. If the active instance becomes unhealthy, the instance automatically fails over to the standby instance, making it active. The Load-balancing service health manager automatically rebuilds an instance that fails.