创建了一个cronjob, 每28分钟执行一次,启动时间不超过10秒,3个并发执行,完成2个即认为任务完成,超时时间10秒,重试3次,失败或成功都保留一次记录
# 这是一个 CronJob,用于定期运行作业(job)。
kind: CronJob
apiVersion: batch/v1beta1
metadata:
name: cron-test01 # CronJob 的名称
namespace: demo-project # 所在的命名空间
labels:
app: cron-test01 # 标签
annotations:
kubesphere.io/creator: project-regular # 注释
spec:
schedule: 28 * * * * # 定时调度设置,每 28 分钟运行一次
startingDeadlineSeconds: 10 # 启动超时时间
concurrencyPolicy: Forbid # 禁止并发运行
suspend: false # 是否暂停计划
jobTemplate: # 要运行的 Job 的模板
metadata:
creationTimestamp: null
spec:
parallelism: 3 # 运行 3 个 Pod
completions: 2 # 2 个 Pod 完成后认为 Job 完成
activeDeadlineSeconds: 10 # 作业的超时时间
backoffLimit: 3 # 失败重试次数
template: # 要运行的 Pod 的模板
metadata:
creationTimestamp: null
annotations:
cni.projectcalico.org/ipv4pools: '["default-ipv4-ippool"]'
kubesphere.io/imagepullsecrets: '{}'
spec:
containers:
- name: container-rxny4z
image: busybox # 容器镜像
args:
- /bin/sh
- '-c'
- date; echo "KubeSphere world!" # 容器内要运行的命令
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
imagePullPolicy: IfNotPresent
restartPolicy: Never # Pod 重启策略为 Never
terminationGracePeriodSeconds: 30
dnsPolicy: ClusterFirst
serviceAccountName: default
serviceAccount: default
securityContext: {}
schedulerName: default-scheduler
successfulJobsHistoryLimit: 1 # 保留成功的 Job 历史记录数
failedJobsHistoryLimit: 1 # 保留失败的 Job 历史记录数
失败原因:作业处于活动状态的时间超过指定的截止时间
修改之后:activeDeadlineSeconds: 30
成功!!!
服务器租用托管,机房租用托管,主机租用托管,https://www.e1idc.com