健康检查
主动健康检查主要是指 APISIX 通过预设的探针类型,主动探测上游节点的存活性。目前 APISIX 支持 、HTTPS
、TCP
三种探针类型。
当发向健康节点 A 的 N 个连续探针都失败时(取决于如何配置),则该节点将被标记为不健康,不健康的节点将会被 APISIX 的负载均衡器忽略,无法收到请求;若某个不健康的节点,连续 M 个探针都成功,则该节点将被重新标记为健康,进而可以被代理。
若发向健康节点 A 的 N 个连续请求都被判定为失败(取决于如何配置),则该节点将被标记为不健康。
注意
由于不健康的节点无法收到请求,仅使用被动健康检查策略无法重新将节点标记为健康,因此通常需要结合主动健康检查策略。
提示
- 只有在
upstream
被请求时才会开始健康检查,如果upstream
被配置但没有被请求,不会触发启动健康检查。 - 如果没有健康的节点,那么请求会继续发送给上游。
- 如果
upstream
中只有一个节点时不会触发启动健康检查,该唯一节点无论是否健康,请求都将转发给上游。
启用成功后,如果 APISIX 探测到不健康的节点,将会在错误日志中输出如下日志:
提示
需要将错误日志的级别调整为 info
才可以观测到上述日志信息