Load-balancer options¶
install_loadbalancer¶
install_loadbalancer: (yes|no)
Do you want to use a load balancer? Defaults to yes
.
Note
If you decide not to use a load balancer, you will need to make sure that the loadbalancer_port
setting points to your main ZEO client if you are using a proxy cache. If you are not using a proxy_cache, you must make sure that proxycache_port
points to the main ZEO client.
Defaults to yes
.
loadbalancer_port¶
loadbalancer_port: 6080
The front-end port for the load balancer. Defaults to 8080
.
Note
The haproxy stats page will be at http://localhost:1080/admin
. The administrative password is disabled on the assumption that the port will be firewalled and you will use an ssh tunnel to connect.
loadbalancer_healthcheck¶
loadbalancer_healthcheck: On
This option may be set to “On” or “Off” to turn haproxy health checks on or off for your ZEO clients.
loadbalancer_listen_extra¶
loadbalancer_listen_extra: "timeout connect 30s # longer timeout for primary"
Use this variable to add configuration lines in listen
sections.
Usually done to override defaults.
This variable may be set globally or in individual playbook_plones.
loadbalancer_options¶
loadbalancer_options: "maxconn 1 inter 10000 downinter 2000 rise 1 fall 2 on-error mark-down error-limit 15"
Use this variable to customize backend options for haproxy.
This is used with haproxy’s default-server
option.
Note
Note the maxconn 1
portion of the setting.
This is meant to match up with the number of threads in use for each ZEO client.
Be very cautious about setting maxconn
higher than your ZEO thread count;
it may result in requests being queued to a ZEO client even if it’s busy and other ZEO clients are free.
Also, if you’re using health checks, you may want to read the haproxy docs and think seriously about how to avoid false positives that will mark a client down when it’s handling a long request.
Health check tests are made even when maxconn
has been reached.
You will want to make sure that inter
anticipates the longest response time for the vast majority of your requests.