当前位置: 首页 > 知识库问答 >
问题:

Kubernetes的活跃度和就绪度是否检查python是否正在运行?

曾翰飞
2023-03-14

我有一个简单的问题,但我找不出正确的答案。

我能怎么做吗?或者是一个很好的答案,可以解释活跃度和就绪度检查python是否正在运行。

多谢!

共有1个答案

壤驷文华
2023-03-14

就绪不会重新启动你的pod,它只会使你的工作人员无法通过负载均衡器/服务到达,如果条件失败,活跃度会重新启动。您不需要让活跃度通过endpoint运行,您可以确保它是可访问的:

        livenessProbe:
          failureThreshold: 3
          initialDelaySeconds: 30
          periodSeconds: 20
          successThreshold: 1
          tcpSocket:
            port: <port-number>
          timeoutSeconds: 5

您可以在正在运行的python worker上公开一个端口,并且只需确保它是可访问的,否则,您需要从逻辑上考虑何时重新启动Pod?您说的它可能会卡住是什么意思

 类似资料:
  • 对于liveness,我认为它可能会开始循环使用POD/容器,尽管(在DB关闭的情况下)它可能无法修复任何东西。 准备就绪后,我想如果数据库关闭,可能会导致可用应用程序池为0。如果数据库关闭,应用程序本身很可能不会很有用,但我想部分可能仍然可以工作。 对于这种类型的事情,有推荐的最佳实践吗?

  • 我可以找到文件,其中提到我如何添加我的自定义探针和改变探针参数,如初始延迟等,但不能找到默认的探针方法使用的K8S。

  • 给出一个Python应用程序,它在无限循环中轮询Kafka主题,并在处理接收到的Kafka消息后将结果上传到s3 bucket。 null 并且活性探测只检查轮询循环是否尚未退出。 严格来说,在准备调查中检查这样的事情是不好的做法吗?

  • 我试图确保在db容器启动并准备接受连接之前,我的应用程序容器不会运行迁移/启动。 所以我决定使用healthcheck并依赖于docker compose file v2中的选项。 在应用程序中,我有以下内容 另一方面,db有以下健康检查 我尝试了一些方法,比如: 确保创建了db目录 获取mysql版本: Ping管理员(将db容器标记为正常,但似乎不是有效的测试) 有人有解决办法吗?

  • 我想检查Quartz作业是否正在运行。我发现它可以使用调度程序。getCurrentlyExecutingJobs()。但是我对此感到困惑,我应该把它放在哪里才能得到结果呢?谢谢

  • 问题内容: 我有一个安排计时器的游戏。我有这个CoresManager文件: 我在游戏中使用这个: 如果播放器注销并且服务器重新启动,CoresManager计时器将停止运行。为了使其再次运行,我添加了代码以使其在您再次登录后再次执行startTimer()。但是,由于如果服务器未注销,计时器仍在运行,因此计时器开始运行两次。根据您注销和登录的次数,计时器开始减去2或更多。我认为,如果有代码确定计