Job
Job 负责批处理任务,即仅执行一次的任务,它保证批处理任务的一个或多个 Pod 成功结束
特殊说明
spec.template格式同Pod
RestartPolicy仅支持Never或OnFailure
单个Pod时,默认Pod成功运行后Job即结束
.spec.completions 标志Job结束需要成功运行的Pod个数,默认为1
.spec.parallelism 标志并行运行的Pod的个数,默认为1
spec.activeDeadlineSeconds 标志失败Pod的重试最大时间,超过这个时间不会继续重试
apiVersion: batch/v1
kind: Job
metadata:
name: pi
spec:
template:
metadata:
name: pi
spec:
containers:
- name: pi
image: perl
command: ["perl", "-Mbignum=bpi", "-wle", "print bpi(2000)"]
restartPolicy: Never
创建&&查看
[root@k8s-master01 ~]# kubectl create -f job.yaml
job.batch/pi created
[root@k8s-master01 ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
deamonset-example-hj7nf 1/1 Running 0 6m55s
deamonset-example-wfg78 1/1 Running 0 6m55s
nginx-deployment-5754944d6c-2tp4g 1/1 Running 0 127m
nginx-deployment-5754944d6c-55z46 1/1 Running 0 127m
nginx-deployment-5754944d6c-kkg5t 1/1 Running 0 127m
pi-wbxwp 0/1 ContainerCreating 0 44s
[root@k8s-master01 ~]# kubectl describe pod pi-wbxwp
.....
Normal Scheduled 68s default-scheduler Successfully assigned default/pi-wbxwp to k8s-node02
Normal Pulling 68s kubelet, k8s-node02 Pulling image "perl"
[root@k8s-master01 ~]# kubectl get job
NAME COMPLETIONS DURATION AGE
pi 1/1 83s 100s
[root@k8s-master01 ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
deamonset-example-hj7nf 1/1 Running 0 36m
deamonset-example-wfg78 1/1 Running 0 36m
nginx-deployment-5754944d6c-2tp4g 1/1 Running 0 157m
nginx-deployment-5754944d6c-55z46 1/1 Running 0 157m
nginx-deployment-5754944d6c-kkg5t 1/1 Running 0 156m
pi-wbxwp 0/1 Completed 0 30m
[root@k8s-master01 ~]# kubectl log pi-wbxwp