将 Pod 计划为每 X 分钟运行一次



我有一个程序,它执行一些代码,休眠 10 分钟,然后重复。这在一个无限循环中继续。我想知道是否有办法让 Kubernetes/GKE 处理这种调度。

我看到 GKE 提供 cron 调度。我可以安排一个 pod 每 10 分钟运行一次。问题是在某些情况下,程序可能需要 10 分钟以上才能完成。

理想情况下,我可以让 pod 运行完成,安排它在 10 分钟内运行,重复。这可能吗?

这在 Kubernetes 上可能吗?

在K8S中,有一个特定的资源来实现这个目标:CronJob

在以下示例中,您会看到一个带有典型 cron 表示法的schedule部分:

apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: your-cron
spec:
schedule: "*/20 8-19 * * 1-5"
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
metadata:
labels:
app: your-periodic-batch-job
spec:
containers:
- name: redmine-cron
image: your_image
imagePullPolicy: IfNotPresent
restartPolicy: OnFailure

最新更新