2016-07-08 18:17:28 |
Dustin Lundquist |
description |
The timeout and delay values on the health monitor objects in Neutron LBaaS are purportedly in units of seconds, but the numeric value is passed all the the way down to the HAProxy configuration[1] file where it is interpreted in milliseconds:
* https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#4.2-timeout%20check
* https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#5.2-inter
Due to this unit mismatch, a user may configure a pool with a reasonable 10 second timeout, and the service may appear to function normally until even a small load causes the backend servers to exceed a 10 millisecond timeout and then they are removed from the pool.
A timeout value less than one second is useful some settings, such as monitoring a pool of backend servers serving static content, let the database field stores this value as an integer.
1: https://github.com/openstack/neutron-lbaas/blob/b322615e4869eb42ed7888a3492eae4a52f3b4db/neutron_lbaas/services/loadbalancer/drivers/haproxy/templates/haproxy_proxies.j2#L72 |
The timeout and delay values on the health monitor objects in Neutron LBaaS are purportedly in units of seconds, but the numeric value is passed all the the way down to the HAProxy configuration[1] file (in both the HAProxy namespace driver and Octavia) where it is interpreted in milliseconds:
* https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#4.2-timeout%20check
* https://cbonte.github.io/haproxy-dconv/configuration-1.5.html#5.2-inter
Due to this unit mismatch, a user may configure a pool with a reasonable 10 second timeout, and the service may appear to function normally until even a small load causes the backend servers to exceed a 10 millisecond timeout and then they are removed from the pool.
A timeout value less than one second is useful some settings, such as monitoring a pool of backend servers serving static content, let the database field stores this value as an integer.
1: https://github.com/openstack/neutron-lbaas/blob/b322615e4869eb42ed7888a3492eae4a52f3b4db/neutron_lbaas/services/loadbalancer/drivers/haproxy/templates/haproxy_proxies.j2#L72 |
|