2017-05-07 1 views
0

avoir un serveur de vernis avec 3 backends. tous les backends sont apache. tout va bien et le serveur de vernis met en cache tout ce dont j'ai besoin, et les connexions sont correctes. Je veux surveiller la santé des serveurs Web. et en cas d'échec, vernis n'envoie pas de demandes au serveur Web défaillant. Le problème est que lorsque j'active la sonde pour toutes les sauvegardes, j'obtiens l'erreur 503! Si je l'active sur un ou deux backends, tout est OK, mais quand je l'active pour 3 backends, j'obtiens l'erreur 503. voici la configuration de vernis pour les backends et le contrôle de la santé:Vérification de la santé backend pour plus de 2 serveurs Web dans le vernis 4

vcl 4.0; 

import directors; 

probe backend_healthcheck { 
    .url = "/"; 
    .timeout = 34 ms; 
    .window = 5; 
    .threshold = 3; 
    .interval = 1s; 

} 

backend web1 { 
    .host = "192.168.1.16"; 
    .port = "8080"; 
    .probe = backend_healthcheck; 
} 

backend web2 { 
    .host = "192.168.1.18"; 
    .port = "8080"; 
    .probe = backend_healthcheck; 
} 

backend web3 { 
    .host = "192.168.1.20"; 
    .port = "8080"; 
    .probe = backend_healthcheck; 
} 

sub vcl_init { 
    new apache = directors.round_robin(); 
    apache.add_backend(web1); 
    apache.add_backend(web2); 
    apache.add_backend(web3); 
} 

Répondre

0

Il est très probable que votre bilan de santé prend plus de 34 ms pour terminer, essayez donc de l'adapter à 3s ou plus:

probe backend_healthcheck { 
    .url = "/"; 
    .timeout = 3s; 
    .window = 5; 
    .threshold = 3; 
    .interval = 1s; 
} 

Moniteur l'état de vos sondes avec varnishlog -g raw -i Backend_health et afficher la sortie ici si ce qui précède n'aide pas.

+0

Merci. Nous avons résolu le problème avec la commande que vous avez envoyée. varnishlog -g raw -i Backend_health: 'Backend_health - web3 Encore malade 4 - X-R- 0 3 5 0.000803 0.000000 HTTP/1.1 403 Interdit' J'ai ajouté 'expected_response = 403;' à la section sonde et le problème a été résolu. Je vous remercie. –