엔지니어링/Kubernetes

[Kubernetes] cron job 실패 시 중단하기

joon95 2022. 9. 1. 11:31
반응형

아래 포스팅인 3scale 백업 고도화 4편에서 cronjob 까지 완료하였는데,

해당 설정은 job 실패시 컨테이너를 restart 하는 설정이 되어있다.

 

OCP 3scale 백업 자동화 고도화하기 - 4편(마지막)

지난 3편에 이어 다음!! OCP 3scale 백업 자동화 고도화하기 - 3편(이미지생성, 권한부여) 백업 자동화 고도화 작업 3탄이다. OCP 3scale 백업 자동화 고도화하기 - 2편(dockerfile, 쉘스크립트) 아래 1편에서

flowlog.tistory.com

 

바로 restartPolicy: OnFailure 설정때문인데,

cronjob에서는 OnFailure / Never 두 가지 옵션이 존재한다.

 

앞서 말했듯이 OnFailure 는 job 이 실패하였을 때, 컨테이너를 재시작 해주는 거고,

Never는 job pod를 다시 생성하는 방식이다.

 

아무튼 job 실패 시 바로 중단 해버리는 방법은 재시도 횟수를 지정하는 것인데,

아래 3가지 설정을 추가해주어 정상적으로 확인하였다.

spec > concurrencyPolicy: Forbid
spec > jobTemplate > spec > backoffLimit: 0
spec > jobTemplate > spec > template > spec > restartPolicy: Never

 

이제 해당 cronjob 은 job이 실패했을 때, 바로 끝내버린다.

반응형