• 카테고리

    질문 & 답변
  • 세부 분야

    데브옵스 · 인프라

  • 해결 여부

    미해결

concurrencyPolicy replace

20.10.15 00:34 작성 조회수 193

3

안녕하세요 태민님

태민님 강의를 너무 잘 듣고 있는 강의생입니다 :)

CronJob 부분을 보던 도중 ConcurrencyPolicy 중 Replace policy에 대한 내용에 대해 확인 한 번 부탁드리려고 문의드립니다.

설명하시기로는 Replace policy 모드에서 기존 job이 실행중일 때 새로운 잡이 생기지는 않지만 기존 job은 계속 유지되고 job을 실행하는 파드만 새로 생성되고 기존 pod는 살아있는 방식으로 말씀하시는 것 같은데 이렇게 설명해주고 계신게 맞는지요 ?

그런데 직접 해보면 기존 잡이 실행중일 때 기존 잡과 실행중이던 파드를 없애고 새로운 잡을 통해 새로운 파드가 같이 생성됩니다.

official document에서도 확인해보니 아래와 같이 하나의 cron job에 하나의 job만 유지할 수 있도록 해주는 개념으로 설명되어 있습니다.

Replace: "새로운 잡을 실행할 시간이고 이전 잡 실행이 아직 완료되지 않은 경우, 크론 잡은 현재 실행 중인 잡 실행을 새로운 잡 실행으로 대체한다."

해당 내용에 대해서 한 번 확인 부탁드립니다.

* 아, 그리고 제 로컬 kubenetes 1.19.2 에선 cronjob을 삭제 할 시 메뉴얼로 만든 job들도 같이 삭제 되는데 버전이 상이하여 다른 부분이 맞는지도 궁금합니다.

답변 4

·

답변을 작성해보세요.

3

1.19 버전에서 말씀하신 내용대로 동작 확인하였고, 

강의 자료실에 내용 업데이트 했습니다.

감사합니다^^

2

이종현님의 프로필

이종현

질문자

2020.10.15

그렇군요 답변 감사합니다 :)

1

취업깡패님의 프로필

취업깡패

2022.05.09

혹시 그러면 1.19버전 이후에서 replace모드와 allow모드는 수행방식이 같게 되는 건가요?

1.19버전 이후 변경사항

Replace 모드 : 2min이 되었을 시 기존 Job은 삭제되고 (기존 Pod도 같이 삭제됨), 새 Job이(새 pod 생성) 만들어집니다.

ConcurencyPolicy 1.19 with CronJob for Kubernetes.

1

안녕하세요!

cronjob에 대한 문의는 강의만들고 처음이네요^^

저도 실무에서 cronjob은 쓸 기회가 없어서 강의 만들면서 공부한 이후에 손을 놓고 있는 상태입니다 ㅎ

이종현님 덕분에 다시한번 cronjob에 대해서 되새겨 보게되었네요.

처음 저도 도큐먼트상에서는 기존 job을 죽이고 새로운 job을 생성한다는 개념으로 이해했었는데 실습을 해보니 그렇게 동작하지 않고 제가 강의로 설명드린대로 동작을 했었습니다.

실제로도 [실습강의]에서는 그렇게 동작하는 내용을 보실 수 있으실꺼고요.

일단 1.19.2버전에선 도큐먼트 내용대로 동작한다고 하면 그게 맞는것 같고요.

저도 다시한번 테스트 해보고 강의 내용을 업데이트 해야겠네요. 

메뉴얼로 만든 job 삭제 부분도 마찬가지입니다.

확인이 되는대로 답글 드리겠습니다.

감사합니다.