如何使用HAProxy进行粘性负载平衡,并将会话转移到新服务器

时间:2009-09-25 10:01:24

标签: load-balancing haproxy

我正在使用appsession配置元素进行粘性会话。我有5个weblogic实例,其中3个处于活动状态,并且当负载增加时立即服务加载我开始另外2个实例。现在HAProxy将它们标记为“Helthy”,但不会传输任何流量,因为它很粘。

如何将现有会话转移到新的weblogic服务器。我使用Terracotta进行会话群集,因此服务请求的服务器无关紧要。下面是我对HAProxy的配置。

# this config needs haproxy-1.1.28 or haproxy-1.2.1

global
      log 127.0.0.1   local0
      maxconn 1024
      daemon
     # debug
      #quiet

defaults
      log     global
      mode    http
      option  httplog
      option  httpchk
      option  httpclose
      retries 3
      option redispatch
      contimeout      5000
      clitimeout      50000
      srvtimeout      50000
      stats uri /admin?stats
      stats refresh 5s

listen  terracotta 0.0.0.0:10001
#     balance url_param JSESSIONID
      balance roundrobin
      option httpchk OPTIONS /Townsend
      server  L1_1 10.211.55.1:7003  check
      server  L1_2 10.211.55.2:7004  check
   server  L1_3 10.211.55.3:7004  check
      appsession JSESSIONID len 52 timeout 3h

1 个答案:

答案 0 :(得分:5)

然后,如果哪个服务器服务于请求无关紧要,请禁用粘性并删除appsession行。您必须明白粘性与负载平衡相反。如果您的问题是您没有扩展,请不要先坚持下去。