HAProxy community

Roundrobin hiccups

#1

Hi @ll,

I’m just testing HAPROXY, We ditching an old LB.

Pretty straight forward config, but here are issues when I hit the VIP
Seems like I’m hitting the same server over and over, when I test with curl I do get roundrobin working as expected, I know that roundrobin is not efficient but its the preferred method for our situation.

Any ideas ?

global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats timeout 30s
user haproxy
group haproxy
daemon

defaults
log global
mode tcp
option httplog
option dontlognull
timeout connect 5000
timeout client 50000
timeout server 50000

frontend https
bind *:443
mode tcp
option tcplog
default_backend app

backend app
mode tcp
option tcplog
balance roundrobin
server webapp1 ip:443 check
server webapp2 ip:443 check

#2

How are you testing this? How do you come to this conclusion?

1 Like
#3

Hello Lukas,

Essentially I’m just refreshing site - where index.html content is different for web01 and web02.

Full config here, I would appreciate your input, since I know you are the guru here.

https://pastebin.com/2HMWAyZb

Thanks!

#4

Your a testing in a single browser session and configured haproxy to transparently pass the entire TLS session to the backend. The browser will keep that single HTTPS connection open and use it for all transactions. There is no reason for your browser the close the HTTPS connection and it’s not technically possible for haproxy to load-balance single transactions between different backend servers, because haproxy is configured in TCP mode and only sees the encrypted TLS session.

Test with multiple browsers at the same time and you will see that round-robin takes effect in different browsers.

1 Like
#5

Lukas, and you are correct … reading your other posts, seems like you are always correct !

Thank you, funny part is that I did think about that and I tried different browsers and I could swear that it didn’t work, but it is working as expected ! THANK YOU!

1 Like