服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

haproxy:如何准备服务器维护而不踢应用程序会话?

问题 我正在使用haproxy来负载均衡Web服务器。 我使用会话持久性与其他cookie作为一些应用程序使用会话文件,这些服务器之间不同步。 我想要禁用服务器进行维护,但不会中断会话。 所以我想让现有的客户端继续他们的应用程序会话,但不接受新的客户端。 haproxy的行为 我将服务器设置为“正在维护” 如果客户端设置了cookie,即使标记为“正在维护” 如果一个新的客户端(没有cookie)来,它被引导到另一个服务器 毕竟所有的客户端都结束了他们的应用程序会话,没有更多的客户端将cookie设置到这个特定的服务器上,我会很好地closures它,而不会中断用户。 你认为这是可以实现一些haproxyconfiguration? 还是有一个聪明的方法来做到这一点? 其他方法 非穷举的其他方法来实现这一需求: 在服务器之间同步会话文件(需要一种在多个服务器之间同步文件的方法,或者一个普通的单个安装点) 使用数据库来存储会话信息(需要改变应用程序行为) 更多细节 我使用这种configuration: frontend https-in bind xxx.xxx.xxx.xxx:443 ssl crt /etc/haproxy/ssl/_default.pem crt /etc/haproxy/ssl reqadd X-Forwarded-Proto:\ https acl APP1 hdr(host) -i APP1.atac.local use_backend APP1 if APP1 default_backend _default backend APP1 redirect scheme https if !{ ssl_fc } mode http balance roundrobin cookie […]