【问题标题】:Should I implement a dedicated api endpoint for Kubernetes health checks?我应该为 Kubernetes 健康检查实现一个专用的 api 端点吗?
【发布时间】:2020-06-15 21:29:41
【问题描述】:

我已经在 Kubernetes 集群上部署了一个 next.js 前端服务器和一个 express.js 后端服务器,它发出自动运行状况检查,目前位于两台服务器的根路径 ("/") 上。

我的问题是,我应该实现自己的运行状况检查路由,例如“/health”,然后在该路由上返回一个 200 HTTP 响应代码,还是应该让它保持现状?

恐怕我会在两台服务器上的根路径(“/”)端点上实现很多功能,这会给我的两台服务器带来更多压力,因为集群会继续向它们发出请求端点。

【问题讨论】:

    标签: kubernetes health-monitoring kubernetes-health-check health-check


    【解决方案1】:

    实际上,如果您担心影响应用程序的性能,从计算/内存资源的角度来看,这取决于您在 / 下提供的材料。

    如果您提供大量 HTML,它实际上会影响您的性能,我建议您为运行状况检查实现不同的端点 /health,以与 Kubernetes Readiness Probes 一起使用。

    如果/ 的内容很轻,不太可能会有所作为。为了改善在 K8s 中使用 Liveness/Readiness 探针运行健康检查时对资源施加的“压力”,您可以通过增加其中的 periodSeconds 来缓解这种情况,但请记住,如果您后面有多个 pod Kubernetes service 并且其中一个 pod 的运行状况检查存在问题,从服务中删除该 pod 需要更长的时间,从而导致更长的潜在“停机时间”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-19
      • 2019-01-08
      相关资源
      最近更新 更多