varnish - 通过varnishadm禁用 Varnish 健康检查

标签 varnish varnish-vcl

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

varnishadm backend.set_health backend1 sick

问题是,当我这样做时, Varnish 仍然发送健康检查并将后端设置为健康。是否有暂时禁用健康检查的方法?

最佳答案

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来看它会被视为有病,但是某些类型的探针记录仍然可用。
最重要的是,不会将任何请求发送给后端标记为“有病”。

关于varnish - 通过varnishadm禁用 Varnish 健康检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47922658/

相关文章:

varnish - 如何在 Varnish 中做https?

Varnish 504 网关超时

linux - 单个服务器上的多个 Varnish 实例

varnish - varnish http-cache 中的bans 和 purge 有什么区别

ubuntu - 来自服务器的空回复,在单独的缓存服务器上带有 Varnish 和挂接

varnish - 无法在 Amazon Linux 上安装 Varnish 6.0

caching - Varnish 微缓存

linux - 我们可以在同一系统上运行的两个端口上使用两个 varnish 吗?

regex - 在 Varnish 正则表达式中提取捕获组内容

wordpress - Amazon Red Hat(非 Ubuntu)中的随机 "502 Error Bad Gateway"- Nginx + PHP-FPM