安排 pod 每 X 分钟运行一次

sth*_*mps 3 kubernetes google-kubernetes-engine

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

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

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

这在 Kubernetes 上可行吗?

Nic*_*Ben 5

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

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

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
Run Code Online (Sandbox Code Playgroud)