【问题标题】:Kubernetes's http liveness probe failed when pod under heavy load当 Pod 负载过重时,Kubernetes 的 http liveness probe 失败
【发布时间】:2019-02-07 22:00:06
【问题描述】:

正如标题所说,Kubernetes 的 liveness probe 总是在 Pod 负载过重时(500+并发,100000请求)失败,我给 Pod 更多的 cpu & memory 资源,但它不起作用。

有什么方法可以处理这种情况吗?

谢谢!

【问题讨论】:

  • 扩展并使用负载均衡器?
  • 在生产环境中,当假期到来时,我们有 40,000 个并发请求,因此需要 80 个 pod,但目前在生产环境中,我们使用基于 docker-compose 的编排,只有不到 10 个容器 @AmiHollander
  • 你使用哪个服务器?
  • tomcat,分配了 2 个 vcpu 和 1G 内存
  • 我担心当所有的pod都负载过重时,k8s会重启所有的pod,然后服务不可用

标签: kubernetes kubernetes-health-check


【解决方案1】:

尝试通过“kong health”命令更改探针。

readinessProbe:                                                                                                                                                                                            
   exec:                                                                                                                                                                                                    
     command:                                                                                                                                                                                               
       - kong                                                                                                                                                                                               
       - health 

【讨论】:

    【解决方案2】:

    根据@Williams Mao,问题已通过增加 readinessProbe.timeoutSeconds

    如果应用程序负载很大,默认的timeoutSeconds: 1 可能不够用。 好读:configure-liveness-readiness-probes

    【讨论】:

      猜你喜欢
      • 2020-03-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-11
      • 1970-01-01
      • 1970-01-01
      • 2022-01-07
      • 2016-06-12
      • 1970-01-01
      相关资源
      最近更新 更多