gpt4 book ai didi

kubernetes - 调用 helm install 时 Celery 任务停止

转载 作者:行者123 更新时间:2023-12-02 12:17:03 24 4
gpt4 key购买 nike

我有一个在 kubernetes 上运行的网络服务器和 celery beat worker。
在部署中,我将此命令称为 -
helm upgrade X ./X --set xImageTag=$TAG,nginxImageTag=$TAG --install
Pod 正在重新启动。如果有一个正在运行的 celery 任务 - 它会在中间停止并永远丢失。
有没有一种优雅的方法来防止这种情况发生?

我正在考虑:使用 pod PreStop 钩子(Hook)或创建一些可以阻止任务停止的东西。

我希望即使在部署新代码和调用时任务也能继续运行
helm upgrade ..... --install .

我确定有人已经遇到过这个问题,但是我在网上找不到任何东西。谢谢!

最佳答案

我们通过让 celery 任务以编程方式创建一个 k8s 作业来解决它。现在 celery 任务的进程在一个 k8s 作业中执行,在 helm install 中不会被删除。 celery 任务将创建一个 k8s 作业,然后死掉。以编程方式创建 k8s 作业的代码在这里:blog.pythian.com/how-to-create-kubernetes-jobs-with-python。

关于kubernetes - 调用 helm install 时 Celery 任务停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55334885/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com