Argo Workflows workflow gcttl

Argo 的 workflow 运行单位是 container,每个container都会在kubernetes上创建一个 pod

我的问题来自于 “如果pod创建太多了怎么办”

这个 2018年的帖子上,好多人给出了各种解决方案

https://github.com/kubeflow/testing/issues/53

很幸运的是官方已经给出另一个solution

使用 gc-tll

apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: gc-ttl-
spec:
  ttlStrategy:
    secondsAfterCompletion: 60 # Time to live after workflow is completed, replaces ttlSecondsAfterFinished
    secondsAfterSuccess: 60     # Time to live after workflow is successful
    secondsAfterFailure: 60     # Time to live after workflow fails
  entrypoint: whalesay
  templates:
  - name: whalesay
    container:
      image: docker/whalesay:latest
      command: [cowsay]
      args: ["hello world"]

可以看到 workflow启动时是这样的

60秒之后,自动清理了

Send a Message