-
Feature
-
Resolution: Done-Errata
-
Critical
-
None
-
False
-
False
-
5
-
0
-
0
-
0% To Do, 0% In Progress, 100% Done
-
octavia-operator-container-1.0.12-4
-
Undefined
Now that Octavia supports flavors, operators are able to define flavors that have varying sizes of compute instances. Currently, the Amphora driver does not leverage vCPU cores beyond one. This is due to limitations in previous versions of the HAProxy engine and the lack of demand for performance beyond what 1 vCPU can provide.
Now with version 2.0 of the HAProxy engine, we can enable vertical scaling by supporting multiple vCPUs per amphora instance using threading. We would also enable intelligent CPU pinning for the NIC interrupts and the HAProxy threads. This should require no additions to the Octavia API as the amphora agent should be able to detect these configurations and make the necessary configuration settings automatically. This would allow much higher numbers of concurrent connections without requiring an active/active topology.
https://www.haproxy.com/blog/multithreading-in-haproxy/
https://www.haproxy.com/documentation/hapee/latest/administration/multithreading/
Acceptance Criteria
(1) Functional operation of vertical scaling of amphora VMs
(2) Automated vertical scaling (auto-scaling) vs manual vertical scaling capability verification
(a) Vertical scaling for autoscaling should be triggered automatically , if the amphora VM resource utilization hits the pre-defined thresholds on CPU and memory
(b) Validate vertical scaling for single stage, and vertical scaling twice in the same test by increasing the workload on the amphora VM
(3) Document any limitations for release notes and Users Guide
(4) Regression tests run before and after vertical scale
- links to
-
RHSA-2025:152105 Security release of containers for RHOSO OpenStack Podified operator