主页

索引

模块索引

搜索页面

3.4.3. Job.yml

Job实例:

apiVersion: batch/v1
kind: Job
metadata:
  name: busybox
  labels:
      name: busybox
spec:
  parallelism: 10   # 设定并发执行的个数
  backoffLimit: 5   # 重启次数限制(默认为6), 超过些限制会不再重启
  activeDeadlineSeconds: 20     # 最长运行时间(单位s), 默认应该是可以一直运行
  ttlSecondsAfterFinished: 60   # 自动清理已结束的作业 
  template:
    metadata:
      name: busybox
      labels:
        app: busybox
    spec:
      containers:
      - name: busybox
        image: registry.cn-beijing.aliyuncs.com/octopus-test/analysis-once:v1
        imagePullPolicy: IfNotPresent
        command: ["/analysis-once", "--start=20190101", "--end=20190819"]
      restartPolicy: Never
      # restartPolicy: Never: 容器启动后未成功就会一直创建新的容器
            # 如果最后也没重启成功, 则失败几次就会有几个失败的pod
      # restartPolicy: OnFailure: 容器启动后未成功不会在创建新的容器,他会一直重启此容器
            # 如果最后也没重启成功, 则一个pod都没有
      # imagePullPolicy: IfNotPresent
      # imagePullPolicy: Always

.spec.ttlSecondsAfterFinished

以下是设置 Job 的 .spec.ttlSecondsAfterFinished 字段的一些示例:

1. 在资源清单(manifest)中指定此字段,以便 Job 在完成后的某个时间被自动清除
2. 将此字段设置为存在的、已完成的资源,以采用此新功能
3. 在创建资源时使用 mutating admission webhook 动态设置该字段
   集群管理员可以使用它对完成的资源强制执行 TTL 策略
4. 使用 mutating admission webhook 在资源完成后动态设置该字段
   并根据资源状态、标签等选择不同的 TTL 值

主页

索引

模块索引

搜索页面