반응형
Job Controller는
- k8s는 pod를 running 중인 상태로 유지한다.
- Batch 처리하는 pod는 작업이 완료되면 종료된다.
- Batch 처리에 적합한 컨트롤러로 pod의 성공적인 완료를 보장한다. (비정상 종료 시 다시 실행) (정상 종료 시 완료)
job-exam.yaml파일의 내용은 아래와 같다.
restartPolicy: OnFailure 속성을 통해 컨테이너를 restart 시킬 수 있다.
restart 시키는 횟수는 backoffLimit 값으로 지정할 수 있다.
completion 값은 성공적으로 컨테이너가 실행돼서 completed 상태가 된다면 새로운 컨테이너를 값만큼 추가로 실행시킨다. 새 컨테이너 실행을 동시에 하고싶다면 parallelism 값을 통해 설정할 수 있다.
activeDeadlineSeconds의 값은 그 값만큼 컨테이너의 실행이 completed 되지않는다면 강제로 파드가 terminating된다.
kubectl create -f job-exam.yaml로 실행시키고 kubectl get jobs를 통해 볼 수 있다.
25초가 지나면 종료가 되는 걸 볼 수 있고 pod는 종료 후 삭제되지 않고 종료된 상태로 보존된다.
kubectl delete jobs.batch centos-job을 통해 job을 삭제시킨다.
반응형
'따배쿠' 카테고리의 다른 글
[따배쿠] Appendix1. 멀티마스터 쿠버네티스 클러스터(multi-master - HA Kuberenetes cluster) 운영 (0) | 2022.11.06 |
---|---|
[따배쿠] 6-7. 쿠버네티스 CronJob (0) | 2022.11.05 |
[따배쿠] 6-5. 쿠버네티스 StatefulSet (0) | 2022.11.05 |
[따배쿠] 6-4. 쿠버네티스 DaemonSet! + RollingUpdate (0) | 2022.11.05 |
[따배쿠] 6-3. 쿠버네티스 RollingUpdate를 위한 Deployment (0) | 2022.11.05 |