
454cff5
introduced haproxy's `tune.ssl.cachesize` for TERMINATED_HTTPS
listeners. During a reload of haproxy the old worker process stays
running until the new worker process is ready. This means that two TLS
session caches are allocated/held simultaneously during a reload of the
service.
For small Amphorae, this works fine. The default connection limit is
50000, which takes enough of a chunk out of the 50% allocation that
there is enough wiggle room for the new haproxy worker to allocate its
cache and coexist with the old worker for some time.
However, for larger amphorae, the memory calculated for the session
cache approaches 50%.
haproxy allocates an additional 48 bytes for each 200 byte chunk, so
the total memory allocated exceeds 50% of the available memory,
triggering the OOM-killer on haproxy reload.
Out of an abundance of caution this also reduces the proportion of
memory Octavia considers "available" for the TLS session cache from 1/2
to 2/5.
Closes-Bug: #2119987
Change-Id: I91b6907c3e3e456860f7274153e0ecf030e0519e
Signed-off-by: Wesley Hershberger <wesley.hershberger@canonical.com>
Team and repository tags
Octavia
Octavia is an operator-grade open source scalable load balancer for use in large OpenStack deployments.
Octavia provides the load balancing API for OpenStack. It supports multiple "provider drivers" that implement load balancing, including the "amphora" reference driver included with Octavia.
Octavia is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.
Project resources
Developer documentation for the Octavia project is available at https://docs.openstack.org/octavia/latest/
Release notes for the Octavia project are available at https://docs.openstack.org/releasenotes/octavia/
The project source code repository is located at https://opendev.org/openstack/octavia
Project status, bugs, and requests for feature enhancements are tracked on https://launchpad.net/octavia
For more information on project direction and guiding principles for contributors, please see the CONSTITUTION.rst file in this directory, or specifications in the specs/ sub-directory.
The project roadmap is available at https://wiki.openstack.org/wiki/Octavia/Roadmap
External Resources
- Octavia Wiki: https://wiki.openstack.org/wiki/Octavia
- For help on usage and hacking of Octavia, please send an email to OpenStack-dev Mailing List <mailto:openstack-discuss@lists.openstack.org> with [Octavia] tag.