best node placement for varnish accelaration

emilio brambilla emilio at
Mon Apr 14 22:09:23 CEST 2014


On 2014/04/14 03:21, Tim Dunphy wrote:
>  Thanks for your input. That was exactly what needed to confirm what I 
> was thinking we'd ought to do. I'm going to go ahead and recommend 
> that we take the web servers out of the vip pool and instead point the 
> vip at the two varnish cache nodes. I'm thinking we'll need a 
> heartbeat established between the two (something like keepalived) to 
> enable the failover so that each node can assume the identity of the 
> VIP ip.
you have at least two way:
- active-active with the F5 balancing the varnish node (then the varnish 
will balance the 4 web server directly as backends without the F5)
- active-standby without the F5 and with keepalived on the two varnish 
node (I have some deployments like this where I also put the two varnish 
node, with keepalived for the HA, outside the firewall (the firewall may 
be one of the bottleneck on hi traffic sites)

of course the active-standby version with keepalived will NOT use the F5 
balancer neither in the frontend nor in the backend.
> All I am really still curious about at this point is whether I should 
> post this section on my first node:
> if (req.restarts == 0) {
>         if (client.ip == "" || client.ip == "") {
>             set req.backend = www;
>         } elsif (server.ip == "") {
>             set req.backend = varnish2;
>         } else {
>             set req.backend = varnish1;
>         }
>     } elsif (req.restarts >= 2) {
>         return (pass);
I really cannot undestand this... you will have the same vcl on both the 
varnish nodes, and you will have 4 backend (the 4 web server) on them 
the F5 vip and the cache ip shoud NOT be backend on your vcl

More information about the varnish-misc mailing list