web backend is sick
Tim Dunphy
bluethundr at gmail.com
Tue May 13 05:03:14 CEST 2014
Hi Nick,
Thanks for your reply! I tried a different probe. No luck so far:
backend web1 {
.host = "10.10.1.94";
.port = "80";
.probe = {
.url = "/healthcheck.html";
.timeout = 34 ms;
.interval = 1s;
.window = 10;
.threshold = 8;
}
}
backend web2 {
.host = "10.10.1.98";
.port = "80";
.probe = {
.url = "/healthcheck.html";
.timeout = 34 ms;
.interval = 1s;
.window = 10;
.threshold = 8;
}
}
director www client {
{ .backend = web1 ; .weight = 2; }
{ .backend = web2 ; .weight = 2; }
}
This is all the healthcheck file does:
[root at beta:/var/www/jf-ref] #cat healthcheck.html
good
Drum roll please!! AAAAnnnnnd:
[root at varnish1:/etc/varnish] #varnishlog | grep web2
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
0 Backend_health - web2 Still sick ------- 0 8 10 0.000000 0.000000
Bummer. :(
No joy at all.
Thanks for playing!
Tim
On Mon, May 12, 2014 at 10:03 PM, nick tailor <nick.tailor at gmail.com> wrote:
> Try using a custom health check probe
> On May 9, 2014 10:00 PM, "Tim Dunphy" <bluethundr at gmail.com> wrote:
>
>> Hey all,
>>
>> I have two web backends in my varnish config. And one node is reporting
>> healthy and the other is being reported as 'sick'.
>>
>> 10 Backend c 11 www web1
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001130 0.001067
>> HTTP/1.1 200 OK
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001231 0.001108
>> HTTP/1.1 200 OK
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001250 0.001143
>> HTTP/1.1 200 OK
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001127 0.001139
>> HTTP/1.1 200 OK
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001208 0.001157
>> HTTP/1.1 200 OK
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001562 0.001258
>> HTTP/1.1 200 OK
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001545 0.001330
>> HTTP/1.1 200 OK
>> 0 Backend_health - web1 Still healthy 4--X-RH 5 3 5 0.001363 0.001338
>> HTTP/1.1 200 OK
>> 11 BackendClose b web1
>>
>> [root at varnish1:/etc/varnish] #varnishlog | grep web2
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>> 0 Backend_health - web2 Still sick 4--X--- 0 3 5 0.000000 0.000000
>>
>> And I'm really at a loss to understand why. Both nodes should be
>> completely identical. And the web roots on both are basically svn repos
>> that are in sync.
>>
>> From web1 :
>>
>> [root at beta:/var/www/jf-current] #svn info | grep -i revision
>> Revision: 17
>>
>> To web2:
>>
>> [root at beta-new:/var/www/jf-current] #svn info | grep -i revision
>> Revision: 17
>>
>> This is the part of my vcl file where I define the web back ends:
>>
>> probe favicon {
>> .url = "/favicon.ico";
>> .timeout = 60ms;
>> .interval = 2s;
>> .window = 5;
>> .threshold = 3;
>> }
>>
>> backend web1 {
>> .host = "xx.xx.xx.xx";
>> .port = "80";
>> .probe = favicon;
>> }
>>
>> backend web2 {
>>
>> .host = "xx.xx.xx.xx";
>> .port = "80";
>> .probe = favicon;
>> }
>>
>> And the file that varnish is probing for is present on both:
>>
>> [root at beta:/var/www/jf-current] #ls -l /var/www/jf-current/favicon.ico
>> -rwxrwxr-x 1 apache ftp 1150 Dec 22 00:53 /var/www/jf-current/favicon.ico
>>
>> I've also setup individual web URLs for each host that isn't cached in
>> varnish so I can hit each one. And each site comes up ok. So I'm a little
>> puzzled as to why the second web host is reporting 'sick' and what I can do
>> to get it back into load balancing.
>>
>> Thanks for any help you can provide!
>>
>> Tim
>>
>>
>>
>>
>>
>> --
>> GPG me!!
>>
>> gpg --keyserver pool.sks-keyservers.net --recv-keys F186197B
>>
>>
>> _______________________________________________
>> varnish-misc mailing list
>> varnish-misc at varnish-cache.org
>> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>>
>
--
GPG me!!
gpg --keyserver pool.sks-keyservers.net --recv-keys F186197B
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20140512/fba59a17/attachment.html>
More information about the varnish-misc
mailing list