Commit 44d66ced authored by Cédric de Saint Martin's avatar Cédric de Saint Martin

Merge branch 'master' into mysql

parents a3ced9b1 89e3f5d0
Changes Changes
======= =======
0.21 (unreleased) 0.23 (unreleased)
-----------------
* No change yet.
0.22 (2011-09-12)
-----------------
* Fix haproxy setup for erp5 [Sebastien Robin]
0.21 (2011-09-12)
----------------- -----------------
* Update PHP configuration to set session and date options. * Update PHP configuration to set session and date options.
[Alain Takoudjou Kamdem] [Alain Takoudjou Kamdem]
* Improve logrotate policy and haproxy config for erp5
[Sebastien Robin]
0.20 (2011-09-07) 0.20 (2011-09-07)
----------------- -----------------
......
...@@ -2,7 +2,7 @@ from setuptools import setup, find_packages ...@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
import glob import glob
import os import os
version = '0.21-dev' version = '0.23-dev'
name = 'slapos.cookbook' name = 'slapos.cookbook'
long_description = open("README.txt").read() + "\n" + \ long_description = open("README.txt").read() + "\n" + \
open("CHANGES.txt").read() + "\n" open("CHANGES.txt").read() + "\n"
......
...@@ -546,13 +546,23 @@ class Recipe(BaseSlapRecipe): ...@@ -546,13 +546,23 @@ class Recipe(BaseSlapRecipe):
} }
def installHaproxy(self, ip, port, name, server_check_path, url_list): 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""" # inter must be quite short in order to detect quickly an unresponsive node
# and to detect quickly a node which is back
# rise must be minimal possible : 1, indeed, a node which is back don't need
# to sleep more time and we can give him work immediately
# fall should be quite sort. with inter at 3, and fall at 2, a node will be
# considered as dead after 6 seconds.
# maxconn should be set as the maximum thread we have per zope, like this
# haproxy will manage the queue of request with the possibility to
# move a request to another node if the initially selected one is dead
server_template = """ server %(name)s %(address)s cookie %(name)s check inter 3s rise 1 fall 2 maxconn %(cluster_zope_thread_amount)s"""
config = dict(name=name, ip=ip, port=port, config = dict(name=name, ip=ip, port=port,
server_check_path=server_check_path,) server_check_path=server_check_path,)
i = 1 i = 1
server_list = [] server_list = []
for url in url_list: for url in url_list:
server_list.append(server_template % dict(name='%s_%s' % (name, i), server_list.append(server_template % dict(name='%s_%s' % (name, i),
cluster_zope_thread_amount=self.options.get('cluster_zope_thread_amount', 1),
address=url)) address=url))
i += 1 i += 1
config['server_text'] = '\n'.join(server_list) config['server_text'] = '\n'.join(server_list)
......
...@@ -34,9 +34,9 @@ RequestHeader unset REMOTE_USER ...@@ -34,9 +34,9 @@ RequestHeader unset REMOTE_USER
# Log configuration # Log configuration
ErrorLog "%(error_log)s" ErrorLog "%(error_log)s"
LogFormat "%%h %%{REMOTE_USER}i %%l %%u %%t \"%%r\" %%>s %%b \"%%{Referer}i\" \"%%{User-Agent}i\"" combined # Default apache log format with request time in microsecond at the end
LogFormat "%%h %%{REMOTE_USER}i %%l %%u %%t \"%%r\" %%>s %%b" common LogFormat "%%h %%l %%u %%t \"%%r\" %%>s %%b \"%%{Referer}i\" \"%%{User-Agent}i\" %%D" combined
CustomLog "%(access_log)s" common CustomLog "%(access_log)s" combined
# Directory protection # Directory protection
<Directory /> <Directory />
......
%(file_list)s { %(file_list)s {
daily daily
dateext dateext
rotate 30
compress compress
notifempty notifempty
sharedscripts sharedscripts
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment