Simple config below. All requests are processed by API_1, changing
balance to roundrobin shows expected distribution.

Others reported the issue on discourse as well but with no further
information: 
https://discourse.haproxy.org/t/v1-8-balance-source-only-1-backend-server-gets-traffic/1851/2

global
    log 127.0.0.1 len 2048 local0
    maxconn 20000
    ssl-server-verify none
    user haproxy
    group haproxy

    tune.bufsize 128000
    nbthread 4


defaults
    log     global
    mode    http
    retries 3

    maxconn                 20000
    timeout connect         15s
    timeout client          5s
    timeout server          25s
    timeout http-request    35s
    timeout http-keep-alive 5s

    option forwardfor
    option httplog
    option http-server-close

# Non SSL API Access
frontend API-HTTP-IN
    bind *:8080

    default_backend API-FARM

backend API-FARM
    balance static-rr

    server API_1 192.168.70.51:8080 check maxconn 20
    server API_2 192.168.70.52:8080 check maxconn 20
    server API_3 192.168.70.53:8080 check maxconn 20
    server API_4 192.168.70.54:8080 check maxconn 20

On 14 December 2017 at 11:28, Aleksandar Lazic <[email protected]> wrote:
> Hi.
>
> ------ Originalnachricht ------
> Von: "Adrian Williams" <[email protected]>
> An: [email protected]
> Gesendet: 14.12.2017 00:08:43
> Betreff: BUG: 1.8.x Several balancing methods only send requests to one
> backend.
>
>> Several backend balancing methods seem to be broken with the 1.8
>> releases. All traffic is directed to one backend even when multiple
>> are listed. This happens on both 1.8 and 1.8.1. Changing the balance
>> to roundrobin distributes requests as expected.
>>
>> Balancing modes affected: source, URL, static-rr
>
> Difficult to say.
> Please can you provide your config where you have observed this issue,
> thanks.
>
> Best regards
> Aleks
>
>> haproxy -vv
>>
>> HA-Proxy version 1.8.1 2017/12/03
>> Copyright 2000-2017 Willy Tarreau <[email protected]>
>>
>> Build options :
>>  TARGET  = linux2628
>>  CPU     = x86_64
>>  CC      = gcc
>>  CFLAGS  = -g -fno-strict-aliasing -Wdeclaration-after-statement
>> -fwrapv -Wno-unused-label
>>  OPTIONS = USE_ZLIB=1 USE_OPENSSL=1 USE_LUA=1 USE_SYSTEMD=1 USE_PCRE=1
>>
>> Default settings :
>>  maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200
>>
>> Built with OpenSSL version : OpenSSL 1.0.2k-fips  26 Jan 2017
>> Running on OpenSSL version : OpenSSL 1.0.2k-fips  26 Jan 2017
>> OpenSSL library supports TLS extensions : yes
>> OpenSSL library supports SNI : yes
>> OpenSSL library supports : SSLv3 TLSv1.0 TLSv1.1 TLSv1.2
>> Built with Lua version : Lua 5.3.4
>> Built with transparent proxy support using: IP_TRANSPARENT
>> IPV6_TRANSPARENT IP_FREEBIND
>> Encrypted password support via crypt(3): yes
>> Built with multi-threading support.
>> Built with PCRE version : 8.32 2012-11-30
>> Running on PCRE version : 8.32 2012-11-30
>> PCRE library supports JIT : no (USE_PCRE_JIT not set)
>> Built with zlib version : 1.2.7
>> Running on zlib version : 1.2.7
>> Compression algorithms supported : identity("identity"),
>> deflate("deflate"), raw-deflate("deflate"), gzip("gzip")
>> Built with network namespace support.
>>
>> Available polling systems :
>>      epoll : pref=300,  test result OK
>>       poll : pref=200,  test result OK
>>     select : pref=150,  test result OK
>> Total: 3 (3 usable), will use epoll.
>>
>> Available filters :
>> [SPOE] spoe
>> [COMP] compression
>> [TRACE] trace
>>
>

Reply via email to