HAproxy/heat_api: increase timeout to 10m

Default timeout is 2min but it doesn't reflect the rpc_response_timeout
value that we set in THT and instack-undercloud, which is 600 (10 min).

In some cases (in low-memory environments), Heat needs more than 2
minutes to reply to the client, when deploying the overcloud.
It makes sense to increase the timeout to the value of rpc_timeout to
give a chance to Heat to reply to the client, otherwise HAproxy will
kill the connection and send 504 to the client.

Depends-On: I9669d40d86d762101734704fcef153e360767690
Change-Id: I32c71fe7930c8798d306046d6933e4b20c22740c
Related-Bug: 1666072
This commit is contained in:
Emilien Macchi 2017-04-17 11:30:23 -04:00
parent 7b08425741
commit 6cb95e6a69
2 changed files with 11 additions and 2 deletions

View File

@ -1185,13 +1185,17 @@ class tripleo::haproxy (
$heat_api_vip = hiera('heat_api_vip', $controller_virtual_ip)
$heat_ip_addresses = hiera('heat_api_node_ips', $controller_hosts_real)
$heat_timeout_options = {
'timeout client' => '10m',
'timeout server' => '10m',
}
if $service_certificate {
$heat_ssl_options = {
'rsprep' => "^Location:\\ http://${public_virtual_ip}(.*) Location:\\ https://${public_virtual_ip}\\1",
}
$heat_options = merge($default_listen_options, $heat_ssl_options)
$heat_options = merge($default_listen_options, $heat_ssl_options, $heat_timeout_options)
} else {
$heat_options = $default_listen_options
$heat_options = merge($default_listen_options, $heat_timeout_options)
}
if $heat_api {

View File

@ -0,0 +1,5 @@
---
fixes:
- For Heat API, increase the HAproxy timeout from 2 minutes to 10 minutes so
we give a chance to Heat to use the rpc_response_timeout value which is set
to 600 by default in TripleO.