Code repository: https://svn.plone.org/svn/collective/buildout/plone.recipe.pound
Bug tracker: http://trac.ingeniweb.com/
Change history
trunk (2009-06-02)
xxx [Ingeniweb]
0.5.5 (2009-06-02)
cmmi change extra_options configuration [youenn]
0.5.4 (2008-12-12)
Add new options to configure sticky session [youenn]
0.5.3 (2008-10-23)
fix regression in fetching current group [youenn]
poundctl restart need to use the right config file as well [jensens]
In term of portability, bash scripts now use env to get their shell.
The poundctl script overrides the control binary present in $prefix/sbin. So are introduced options to fix that problem: (kiorky)
A poundcontrol script is added to wrap the real poundctl binary.
Customize the names of generated scripts. To use them, simply add poundctl-binary, poundrun-binary, poundcontrol-binary to your options.
0.5.1 (2008-07-08)
fix bug in fecthing current group [youenn]
0.5.0 (2008-07-07)
rename iw.recipe.pound to plone.recipe.pound [youenn]
fix doctests [youenn]
add socket option [mathieu pasquet]
config recipe now additionally creates “poundrun” script which merely runs configured pound executable with correct configuration [rockyburt]
fetching current running user is now more robust [rockyburt]
0.4.1 (2008-07-02)
fix Cheetah require [youenn]
0.4.0 (2008-06-26)
add a ctl script (as plone.recipe.squid) [youenn]
0.3.0
devide recipe in two part : build and config part [youenn]
add options to build (extra-options) [youenn]
add options to the config file (time-out, priority …) [youenn]
0.2.0
added a script to launch pound with the right conf file [tarek]
0.1.0
Initial release [tarek]
Detailed Documentation
Building
supported options
The recipe supports the following options:
- url
URL for an archive containing the Pound sources. Either url or svn has to be specified.
- svn
URL for a subversion repository containing Pound sources. Either url or svn has to be specified.
- ssl_dir
OpenSSL home directory (default: system defined).
- t_rsa
timeout of the RSA ephemeral keys regeneration (default: 300 seconds).
- owner
name of installed binaries owner (default is user that launch buildout).
- group
name of installed binaries group (default is system-dependent)
- extra-options
extra options for compilation
example usage
We’ll start by creating a buildout that uses the recipe:
>>> write('buildout.cfg',
... """
... [buildout]
... parts = poundbuild
... index = http://pypi.python.org/pypi
...
... [poundbuild]
... recipe = plone.recipe.pound:build
... url = http://www.apsis.ch/pound/Pound-2.3.2.tgz
... """ )
Running the buildout gives us:
>>> print system(buildout) Installing poundbuild. poundbuild: compilation option : --with-owner=... --with-group=... poundbuild: Downloading http://www.apsis.ch/pound/Pound-2.3.2.tgz poundbuild: Unpacking and configuring ...
Configuring
Supported options
The recipe supports the following options:
- daemon - Daemon 0|1
Have Pound run in the foreground (if 0) or as a daemon (if 1). By default Pound runs as a daemon (detaches itself from the controlling terminal and puts itself in the background). By specifying this option you can force Pound to work like a regular process. Useful for debugging or if you want to use something like daemontools.
- log_facility - LogFacility value
Specify the log facility to use. value (default: daemon) must be one of the symbolic facility names defined in syslog.h. This facility shall be used for logging. Using a - for the facility name causes Pound to log to stdout/stderr.
- log_level - LogLevel value
Specify the logging level: 0 for no logging, 1 (default) for regular logging, 2 for extended logging (show chosen backend server as well), 3 for Apache-like format (Combined Log Format with Virtual Host), 4 (same as 3 but without the virtual host information) and 5 (same as 4 but with information about the Service and BackEnd used). This value can be overridden for specific listeners.
- dynscale - DynScale 0|1
Enable or disable the dynamic rescaling code (default: 0). If enabled Pound will periodically try to modify the back-end priorities in order to equalise the response times from the various back-ends. This value can be overridden for specific services.
- alive - Alive value
Specify how often Pound will check for resurected back-end hosts (default: 30 seconds). In general, it is a good idea to set this as low as possible - it will find resurected hosts faster. However, if you set it too low it will consume resources - so beware.
- client - Client value
Specify for how long Pound will wait for a client request (default: 10 seconds). After this long has passed without the client sending any data Pound will close the connection. Set it higher if your clients time-out on a slow network or over-loaded server, lower if you start getting DOS attacks or run into problems with IE clients. This value can be overridden for specific listeners.
- timeout - TimeOut value
How long should Pound wait for a response from the back-end (in seconds). Default: 15 seconds.
- grace - Grace value
How long should Pound continue to answer existing connections after a receiving and INT or HUP signal (default: 30 seconds). The configured listeners are closed immediately. You can bypass this behaviour by stopping Pound with a TERM or QUIT signal, in which case the program exits without any delay.
- balancers - list of listener http with backend
Set the list of backends, the list by default is name adress:port adress-backend-1:port-backend-1(,priority,timeOut) adress-backend-2:port-backend-2(,priority,timeOut) … adress-backend-n:port-backend-n(,priority,timeOut)
executable - path to pound, required if pound executable is not provided by the build recipe
socket - Set the control socket path.
sticky - if on , add a sticky session configuration (default on, possible value on/off)
sessiontype - Type of the sticky session (default COOKIE)
sessioncookie - Name of the cookie of the stickysession (default __ac)
sessiontimeout - Time out of the sticky session (default 300)
poundctl-binary - Set the init script name poundrun-binary - Set the daemon binary name poundcontrol-binary - Set the pound controller name (it wraps the pound’s poundctl binary)
Example usage
We’ll start by creating a buildout that uses the recipe:
>>> write('buildout.cfg',
... """
... [buildout]
... parts = configpound
...
... [configpound]
... recipe = plone.recipe.pound:config
... executable = /usr/sbin/pound
... balancers =
... one 127.0.0.1:80 127.0.0.1:8080 127.0.0.1:8081,1
... two 0.0.0.0:81 127.0.0.1:8082,1,120 127.0.0.1:8083 169.1.1.2:80
...
... """ )
Running the buildout gives us:
>>> print system(buildout) Installing configpound. <BLANKLINE>
Contributors
ingeniweb Internal sprint 2008 Tarek Ziade Youenn Boussard Rocky Burt Mathieu Pasquet
Download
Release files for plone.recipe.pound 0.5.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| plone.recipe.pound-0.5.5.tar.gz | 172.2 kB | Details |
Release files / plone.recipe.pound-0.5.5.tar.gz
| Download URL | plone.recipe.pound-0.5.5.tar.gz |
|---|---|
| Size | 172.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
58a7448d6b2fc086c8bb5e87e1af9cd1daa9c0ad889ac89b85ccd95bfc06f601
|
|
BLAKE2b-256 checksum How to use checksums |
e66c4e0583f7c5f63c5de1370223531d9a05f6a207f1c9b186c39389057ce6a1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |