From 70bedeef99d5b2852307158330f78c0d9159532f Mon Sep 17 00:00:00 2001 From: Tim Rozet Date: Mon, 16 Apr 2018 16:50:04 -0400 Subject: [PATCH] Fixes binding type for OpenDaylight Websocket For OpenDaylight Websocket connections we were not using transparent binding type with HA Proxy. This means that HA Proxy was not able to start on nodes that did not have the VIP because it was unable to bind to that IP on more than one node. However, transparent binding works OK with OpenDaylight Websocket and should be fine to enable so that HA Proxy is able to start on every controller. Closes-Bug: 1764514 Change-Id: I89e6115795ece6735e816ab71b5b552b17f7b943 Signed-off-by: Tim Rozet --- manifests/haproxy.pp | 15 +++++++-------- ...ylight-websocket-haproxy-7220b0c25ff13faa.yaml | 5 +++++ 2 files changed, 12 insertions(+), 8 deletions(-) create mode 100644 releasenotes/notes/fix-opendaylight-websocket-haproxy-7220b0c25ff13faa.yaml diff --git a/manifests/haproxy.pp b/manifests/haproxy.pp index 6ad91dfb0..46ea73dca 100644 --- a/manifests/haproxy.pp +++ b/manifests/haproxy.pp @@ -1505,14 +1505,13 @@ class tripleo::haproxy ( } ::tripleo::haproxy::endpoint { 'opendaylight_ws': - internal_ip => unique([hiera('opendaylight_api_vip', $controller_virtual_ip), $controller_virtual_ip]), - service_port => $ports[opendaylight_ws_port], - ip_addresses => hiera('opendaylight_api_node_ips', $controller_hosts_real), - server_names => hiera('opendaylight_api_node_names', $controller_hosts_names_real), - mode => 'http', - haproxy_listen_bind_param => [], # We don't use a transparent proxy (diverting non-destined haproxy traffic) - service_network => $opendaylight_network, - listen_options => { + internal_ip => unique([hiera('opendaylight_api_vip', $controller_virtual_ip), $controller_virtual_ip]), + service_port => $ports[opendaylight_ws_port], + ip_addresses => hiera('opendaylight_api_node_ips', $controller_hosts_real), + server_names => hiera('opendaylight_api_node_names', $controller_hosts_names_real), + mode => 'http', + service_network => $opendaylight_network, + listen_options => { # NOTE(jaosorior): Websockets have more overhead in establishing # connections than regular HTTP connections. Also, since it begins # as an HTTP connection and then "upgrades" to a TCP connection, some diff --git a/releasenotes/notes/fix-opendaylight-websocket-haproxy-7220b0c25ff13faa.yaml b/releasenotes/notes/fix-opendaylight-websocket-haproxy-7220b0c25ff13faa.yaml new file mode 100644 index 000000000..b10727051 --- /dev/null +++ b/releasenotes/notes/fix-opendaylight-websocket-haproxy-7220b0c25ff13faa.yaml @@ -0,0 +1,5 @@ +--- +fixes: + - | + Fixes OpenDaylight Websocket HA Proxy configuration to use transparent + binding type. See https://bugs.launchpad.net/tripleo/+bug/1764514