通过varnishadm禁用清漆健康检查

时间:2017-12-21 10:15:43

标签: varnish varnish-vcl

我设置了清漆。我想在清漆中禁用后端,同时逐个更新服务器。有一种方法可以做健康检查,但如果我的健康检查是每20秒,在最坏的情况下仍然会有20秒的停机时间。我发现通过varnishadm我可以设置后端的健康状况。例如:

varnishadm backend.set_health backend1 sick

问题是,当我这样做时,清漆仍会发送健康检查并将后端设置为健康。是否需要暂时禁用健康检查?

1 个答案:

答案 0 :(得分:1)

varnishadm backend.list

的输出是什么 我的就像这样:

varnish> backend.list
200
Backend name                   Admin      Probe
84941fd7f319.default           probe      Healthy 4/5

varnish> backend.set_health default sick
200

varnish> backend.list
200
Backend name                   Admin      Probe
84941fd7f319.default           sick       Healthy 5/5

正如您所看到的,我们首先启动了一个健康的后端并启用了探测器,我们将其标记为生病并且从管理员PoV中将其视为生病,但某些探测记录仍然可用。 最重要的是,没有任何请求会被发送给后端标记为生病。