Kong工作原理 - 健康检查和断路器 - 健康检查的类型

主动健康检查

主动健康检查(Active Health Checks)顾名思义,是通过主动探测目标的健康状况来进行检查。当在上游实体中启用主动健康检查时,Kong会定期向上游的每个目标发送HTTP或HTTPS请求,以访问配置的路径。这使得Kong能够根据探测结果自动在负载均衡器中启用或禁用目标。

主动健康检查的周期性可以分别针对目标的健康和不健康状态进行配置。如果任一状态的间隔值设置为零,则对应场景的检查被禁用。当两者都设置为零时,主动健康检查将完全被禁用。

注意:主动健康检查仅适用于HTTP/HTTPS目标。它们不适用于协议属性设置为TCP或TLS的服务分配的上游。

被动健康检查(断路器)

注意:这个功能在混合模式下不被支持。

被动健康检查,也被称为断路器,是基于Kong代理的请求进行的检查(HTTP/HTTPS/TCP),而不会生成额外的流量。当目标无响应时,被动健康检查器将检测到并将目标标记为不健康状态。环形负载均衡器将开始跳过该目标,因此不会再将流量路由到该目标。

一旦解决了目标的问题,并且可以再次接收流量时,Kong管理员可以通过Admin API端点手动通知健康检查器应该重新启用目标。

Lua 复制代码
 curl -i -X POST http://localhost:8001/upstreams/my_upstream/targets/10.1.2.3:1234/healthy

响应:

Lua 复制代码
HTTP/1.1 204 No Content

该命令将广播一个集群范围的消息,以便"健康"状态在整个Kong集群中传播。这将导致Kong节点重置运行在所有工作进程中的健康检查器的健康计数器,从而使环形负载均衡器能够再次将流量路由到目标。

被动健康检查的优点是不会产生额外的流量,但它们无法自动将目标重新标记为健康状态:断路器已打开,需要由系统管理员重新启用目标。

优点和缺点摘要

  • 主动健康检查能够在目标恢复健康时自动重新启用环形负载均衡器中的目标,而被动健康检查则不能。
  • 被动健康检查不会给目标产生额外流量,而主动健康检查会。
  • 主动健康检查需要在目标中配置一个已知URL,并要求能够可靠响应状态的端点(可以简单地为"/")。被动健康检查不需要进行此类配置。
  • 通过为主动健康检查器提供自定义的探测端点,应用程序可以确定自己的健康指标,并产生将由Kong使用的状态码。即使目标继续提供看似健康的流量,被动健康检查器也无法对主动探测作出失败的响应状态,从而请求停止接受新的流量。

可以将两种模式结合起来。例如,可以启用被动健康检查仅基于流量来监控目标的健康状况,并且只在目标处于不健康状态时使用主动健康检查,以便自动重新启用它。

相关推荐
a7520662813 小时前
Windows 11运行OpenClaw(小龙虾)完整指南:从下载到Gateway在线
人工智能·windows·gateway·小龙虾·ai 办公自动化·小龙虾一键部署
阿里-于怀3 天前
告别 Ingress Nginx:云原生 API 网关 Gateway API 使用指引
nginx·云原生·gateway
comcoo4 天前
OpenClaw AI 聊天网关配置教程|Gateway 启动与完整使用指南
运维·人工智能·elasticsearch·gateway·openclaw安装包·open claw部署
技术小猪猪4 天前
企业AI Agent部署痛点?MCP Gateway Lite:开源轻量级网关解决方案
人工智能·开源·gateway
總鑽風11 天前
单点登录sso 微服务加网关gateway
java·微服务·gateway·jwt·单点登录
庞轩px11 天前
第八篇:Spring与微服务——从SpringBoot到SpringCloud的演进
spring boot·spring·微服务·nacos·gateway·sentinel
Jul1en_14 天前
【SpringCloud】OpenFeign 与 Gateway 讲解与部署
spring·spring cloud·gateway
AI精钢14 天前
修复 AI Gateway 图片 MIME 类型错误:用魔数检测替代扩展名猜测
网络·人工智能·python·gateway·aigc
Ribou15 天前
Cilium Gateway API 配置手册
gateway
YJlio16 天前
OpenClaw v2026.4.8 更新解析:扩展加载修复、通道配置优化、Slack 代理支持与升级避坑
gateway·自动化运维·版本更新·ai agent·openclaw·slack·插件兼容