使用kong网关实现负载均衡, 根据配置规则将后端tatget节点路由到客户端请求,当后端某个target服务不能访问时,我们希望kong网关在负载中跳过该节点,当该节点可用时,我们希望kong网关能够将该节点加入负载,这些都可以通过upstream配置来实现
kong网关健康检查有两种,主动健康检查and被动健康检查。主动健康检查会通过配置的健康检查接口,按照指定的规则定时请求后端服务,会有额外流量请求到后端服务。被动健康检查会更具每次路由的结果判断节点是否为健康状态。
- 主动健康检查配置
healthchecks.active.http_path - 向目标发出HTTP GET请求时应使用的路径。默认值为"/"。健康检查接口
healthchecks.active.timeout - 探测的HTTP GET请求的连接超时限制。默认值为1秒。健康检查超时
healthchecks.active.concurrency - 在活动运行状况检查中同时检查的目标数。同时进行健康检查数
healthchecks.active.healthy.interval -针对 健康目标的活动健康检查之间的间隔(以秒为单位)。值为零表示不应执行健康目标的活动探测。
healthchecks.active.unhealthy.interval - 针对不健康目标的活动健康检查之间的间隔(以秒为单位)。值为零表示不应执行不健康目标的活动探测。
healthchecks.active.healthy.successes- healthchecks.active.healthy.http_statuses考虑目标健康的活动探针(定义为)的成功次数。多少次通过健康检查后判定为成功
healthchecks.active.unhealthy.tcp_failures - 活动探测器中考虑目标不健康的TCP故障数。多少次健康检查失败后判定为不健康
healthchecks.active.unhealthy.timeouts - 活动探测器中考虑目标不健康的超时次数。
healthchecks.active.unhealthy.http_failures- 活动探测器(由定义的healthchecks.active.unhealthy.http_statuses)中的HTTP故障数,以考虑目标不健康。多少次不通过健康检查后判定为失败