From 565bfdb43140375e31923911301583e9f355f077 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Nowak?= <luke@nexedi.com> Date: Thu, 10 Mar 2011 12:53:17 +0000 Subject: [PATCH] - switch haproxy to http_mode with nice web_based status interface git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@44113 20353a03-c40f-0410-a6d1-a30d3c3de9de --- .../erp5/src/slapos/recipe/erp5/__init__.py | 11 +++++++---- .../slapos/recipe/erp5/template/haproxy.cfg.in | 18 ++++++++++++++++-- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/slapos/recipe/erp5/src/slapos/recipe/erp5/__init__.py b/slapos/recipe/erp5/src/slapos/recipe/erp5/__init__.py index c6f7da25ce..4c86b36c9d 100644 --- a/slapos/recipe/erp5/src/slapos/recipe/erp5/__init__.py +++ b/slapos/recipe/erp5/src/slapos/recipe/erp5/__init__.py @@ -136,7 +136,9 @@ class Recipe(BaseSlapRecipe): self.connection_dict.update( haproxy_login=self.installHaproxy( - ip=self.getGlobalIPv6Address(), port='15000', name='login', url_list=login_list)) + ip=self.getGlobalIPv6Address(), port='15000', name='login', + url_list=login_list, server_check_path= + self.parameter_dict.get('server_check_path', '/erp5/getId'))) self.connection_dict.update( apache_login=self.installLoginApache(ip=self.getGlobalIPv6Address(), port=13000, backend=self.connection_dict['haproxy_login'])) @@ -348,9 +350,10 @@ class Recipe(BaseSlapRecipe): test_ca_path=CONFIG['ca_dir'] ) - def installHaproxy(self, ip, port, name, url_list): - server_template = """ server %(name)s %(address)s check""" - config = dict(name=name, ip=ip, port=port) + def installHaproxy(self, ip, port, name, server_check_path, url_list): + server_template = """ server %(name)s %(address)s cookie %(name)s check inter 20s rise 2 fall 4""" + config = dict(name=name, ip=ip, port=port, + server_check_path=server_check_path,) i = 1 server_list = [] for url in url_list: diff --git a/slapos/recipe/erp5/src/slapos/recipe/erp5/template/haproxy.cfg.in b/slapos/recipe/erp5/src/slapos/recipe/erp5/template/haproxy.cfg.in index 63ed4c3dd0..4087c1a4ea 100644 --- a/slapos/recipe/erp5/src/slapos/recipe/erp5/template/haproxy.cfg.in +++ b/slapos/recipe/erp5/src/slapos/recipe/erp5/template/haproxy.cfg.in @@ -1,12 +1,26 @@ +global + maxconn 4096 + defaults - mode tcp + log global + mode http + option httplog + option dontlognull + retries 1 option redispatch + maxconn 2000 timeout server 3000s timeout queue 5s timeout connect 10s timeout client 3600s listen %(name)s %(ip)s:%(port)s - option ssl-hello-chk + cookie SERVERID insert balance roundrobin + %(server_text)s + + option httpchk GET %(server_check_path)s + + stats uri /haproxy + stats realm Global\ statistics -- 2.30.9