首页 > 解决方案 > 有没有办法仅在 Kubernetes 作业失败时自动启动后续(不同)作业?

问题描述

语境:

我目前有一个 Python Flask 应用程序,当收到请求时,它会自动创建一个 Kubernetes 作业来运行一个进程。作业完成后,它将结果回传到特定端点(永不更改)。根据请求的具体情况,此过程的长度(时间)和资源需求可能会有很大差异。我为此使用 Jobs 的原因是它们能够在失败时重新启动。

问题:

即使允许最大重新启动,有时该过程也会出错。我想按照以下方式实现一些东西:

foo()是一个非常简单的 Python 函数,它将发送带有导致作业未成功完成的请求参数的 HTTP 请求。它不一定是 Python 函数,但它是首选。

注意:我将作业需要执行的 python 函数中的所有内容都包装在一个广泛的错误异常中,但是,有时作业可能会由于内存不足而失败。

标签: python-3.xkuberneteskubernetes-jobskubernetes-python-client

解决方案


为什么不在您的集群、knative 或 kubeless 或其他解决方案中实施无服务解决方案。


推荐阅读