python - Celery 'Error: No nodes replied within time constraint' 错误 - 如何调试?

标签 python kubernetes redis celery

我遇到了一个以前多次出现的问题,但以前的答案似乎都没有帮助我。

我正在使用 Redis 后端运行 Celery(通过 Docker/Kubernetes)。我正在使用这个命令:

celery worker --uid 33 -A finimize_django --loglevel=DEBUG -E

(我现在只是将其设置为调试)

我正在使用 celery==4.3.0redis==3.2.1

每当我运行 celery -A app_name status 我得到:

错误:没有节点在时间限制内回复。

奇怪的是 Celery 似乎工作正常。我可以看到正在处理的任务,即使我 monitor Redis 东西似乎也在成功运行。这几个月来在生产中也一直运行良好,直到上周才开始出现这种情况。

这导致了一个问题,因为我的 liveness probe 因这条错误消息而杀死了 pod。

如何调试潜在问题?日志输出中没有任何错误。

谢谢!

最佳答案

我遇到了同样的问题,或者至少非常相似。我已经通过将 kombu 固定到版本 4.6.3 来在我的项目中修复它。根据this issue在 celery 的 github 上,4.6.4 存在问题。真正难以调试的问题,但我希望这会有所帮助!

关于python - Celery 'Error: No nodes replied within time constraint' 错误 - 如何调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56531938/

相关文章:

python - Celery 尝试连接到错误的代理

python - 以简洁的方式显示从 Flask 返回的 JSON

python - 为什么冒泡排序的实现速度明显慢于预期?

python - 我如何将 nuitka 与 virtualenv 一起使用

azure - AKS - 将插件 HTTP 应用程序路由与 nginx 重写规则结合起来?

azure - DockerApiException - 未经授权 : incorrect username or password

node.js - 从nodejs直接(非tcp)连接到redis

python - 使用 Python 2.6 设置全局热键

azure - AKS。无法从 acr 中提取图像

docker - Kubernetes中 secret 的用途是什么,它的目的是什么?