Files
k8s-note/k8s知识笔记/二、k8s pod 控制器/5、job控制器.conf
2025-10-11 00:03:17 +08:00

36 lines
1.6 KiB
Plaintext

一、Job 控制器简介
Job负责批处理任务,即仅执行一次的任务,它保证批处理任务的一个或多个Pod成功结束。
Job 控制器用于管理批处理任务, 确保指定数量的 Pod 成功完成其任务。
它适用于需要一次性执行的任务, 如数据处理、备份等。Job 控制器会创建一个或多个 Pod 来执行任务, 并监控其状态, 直到所有 Pod 成功完成任务为止。
如果某个 Pod 失败, Job 控制器会根据配置重新创建 Pod 以确保任务完成。
特殊说明:
* spec.template 格式同 Pod
* RestartPolicy 仅支持 Never 或 OnFailure
* 单个 Pod 时, 默认 Pod 成功运行后 Job 即结束
* .spec.completions 标志 Job 结束需要成功运行的 Pod 个数, 默认为 1
* .spec.parallelism 标志并行运行的 Pod 的个数, 默认为 1
* spec.activeDeadlineSeconds 标志失败 Pod 的重试最大时间, 超过这个时间不会继续重试
#-----------------------------------------------------------------------------------------------
二、job 控制器资源清单
apiVersion: batch/v1
kind: Job
metadata:
name: my-job
spec:
completions: 3 # 需要成功运行的 Pod 个数, 默认为 1
parallelism: 2 # 并行运行的 Pod 的个数, 默认为 1
backoffLimit: 4 # 失败 Pod 的重试次数, 默认为 6
activeDeadlineSeconds: 100 # 失败 Pod 的重试最大时间, 超过这个时间不会继续重试, 单位秒
template:
spec:
containers:
- name: my-job
image: my-job-image
restartPolicy: Never