Hey All,

Trying to mount an NFS share vi an Haproxy / Keepalived configuration. When I mount the NFS share directly from the host, bypassing Haproxy / Keepalived, it works fine. However, when I try via the Haproxy / Keepalived combination, it freezes.

What's also interesting everything works fine via the Haproxy / Keepalived configuration.

It almost seems as if there is some sort of connection limit on this where, except for the first client, all others trying to mount via the Haproxy / keepalived freeze on subsequent mount attempts.

I did test the services behind the configuration and traced it down to the last remaining element running: haproxy.

Wondering if anyone has seen this and could let me know what I could try to nudge me forward a bit?

--
Cheers,
Tom K.
-------------------------------------------------------------------------------------

Living on earth is expensive, but it includes a free trip around the sun.


[ DETAILS ]

haproxy-1.5.18-7.el7.x86_64

[root@nfs03 audit]# cat /etc/haproxy/haproxy.cfg
global
    log         127.0.0.1 local2 debug
    stats       socket /var/run/haproxy.sock mode 0600 level admin
    # stats     socket /var/lib/haproxy/stats
    maxconn     4000
    user        haproxy
    group       haproxy
    daemon
    debug

defaults
    mode                    tcp
    log                     global
    option                  dontlognull
    option                  redispatch
    retries                 3
    timeout http-request    10s
    timeout queue           1m
    timeout connect         10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 10s
    timeout check           10s
    maxconn                 3000

frontend nfs-in
    bind                        nfs-c01:2049
    mode                        tcp
    option                      tcplog
    default_backend             nfs-back


backend nfs-back
    mode        tcp
    balance     source
    server      nfs01.nix.my.dom    nfs01.nix.my.dom:2049 check
    server      nfs02.nix.my.dom    nfs02.nix.my.dom:2049 check
    server      nfs03.nix.my.dom    nfs03.nix.my.dom:2049 check

listen stats
    bind :9000
    mode http
    stats enable
    stats hide-version
    stats realm Haproxy\ Statistics
    stats uri /haproxy-stats
    stats auth admin:passw0rd
[root@nfs03 audit]#


Ran keepalived in debug but it showed no log entries during the connection attempt. So doesn't look like the traffic was being passed:


[root@nfs03 haproxy]# cat /etc/keepalived/keepalived.conf
vrrp_script chk_haproxy {
  script "killall -0 haproxy"           # check the haproxy process
  interval 2                            # every 2 seconds
  weight 2                              # add 2 points if OK
}

vrrp_instance VI_1 {
  interface eth0                        # interface to monitor
state BACKUP # MASTER on haproxy1, BACKUP on haproxy2,haproxy3 etc
  virtual_router_id 51
priority 103 # 101 on haproxy1, 102 on haproxy2, 103 on haproxy3 etc
  virtual_ipaddress {
    192.168.0.80                        # virtual ip address
  }
  track_script {
    chk_haproxy
  }
}
[root@nfs03 haproxy]#


Reply via email to