Comment 2 for bug 1764514

Revision history for this message
Sai Sindhur Malleni (smalleni) wrote : Re: haproxy containers stopped on two controllers on fresh deployment

Comment from Tim Rozet,
The reason it is not starting on non-VIP control nodes is because the binding for haproxy is not set to transparent. Therefore since the nodes do not have the VIP on their machines, haproxy will not start because it cannot bind to those IPs. Most other services use transparent mode which will allow haproxy to start even when it does not have the referenced bind address. Therefore the behavior is expected here. However, is the behavior correct?

On both Zaqar Websocket and ODL Websocket services we are not using transparent binding with a note from Juan indicating it is done intentionally:

  if $zaqar_ws {
    ::tripleo::haproxy::endpoint { 'zaqar_ws':
      public_virtual_ip => $public_virtual_ip,
      internal_ip => hiera('zaqar_ws_vip', $controller_virtual_ip),
      service_port => $ports[zaqar_ws_port],
      ip_addresses => hiera('zaqar_ws_node_ips', $controller_hosts_real),
      server_names => hiera('zaqar_ws_node_names', $controller_hosts_names_real),
      mode => 'http',
      haproxy_listen_bind_param => [], # We don't use a transparent proxy here