k8s 환경에서 batch 동시 작동 하지 않도록 하는 삽질기

2025. 11. 18. 14:48·Debug

백엔드에 배치가 함께있는 형태의 환경
백엔드 pod는 2개가 떠있는 상황
2개의 pod에서 동시에 실행되면 안되었음

1개의 백엔드 pod 에서만 동작하도록 하는 방법 모색
k8s에서 특정 pod이름으로 구분하여 배치를 동작하도록 하는 것은 어려워 보였음
pod이름이 랜덤으로 생성되고 특정 1개의 pod중 어느것으로 동작할지 정해야하는 상황이었는데,
k8s 환경 상 특정 pod에서만 돌도록 설정하는 것은 어려움이 있어보였음

-> statefulset 사용하면 되지 않을까?
be-pod-0
be-pod-1
statefulset의 네이밍은 순서대로 진행되니까 가능하지 않을까?

0번에서만 배치가 돌도록?
-> 0번이 죽으면 배치가 실패

이중화 불가
백엔드 실패 인지 배치 실패인지 확인하려면 일일이 로그 확인 필요


결론
현실적으로 어려움이 많음
spring batch 로 모두 전환하기로
cronjob 활용하여 배치마다 job이 뜨도록
로그도 배치마다 확인 가능, 아카이빙도 가능 하므로 장점이 많음

'Debug' 카테고리의 다른 글

413 Request entity too large : nginx 파일 업로드 용량 설정 (k8s ingress)  (0) 2025.11.14
K8s 에서 Client IP를 BE에 전달하기 : nginx ingress annotation 설정  (0) 2025.11.14
'Debug' 카테고리의 다른 글
  • 413 Request entity too large : nginx 파일 업로드 용량 설정 (k8s ingress)
  • K8s 에서 Client IP를 BE에 전달하기 : nginx ingress annotation 설정
JOONU
JOONU
Cloud / Infra / Devops 에 깊은 흥미가 있는 엔지니어 입니다.
  • JOONU
    JOONU's Engineer Blog
    JOONU
  • 전체
    오늘
    어제
    • 분류 전체보기 (14)
      • Cloud Infra (2)
      • OS (2)
      • DevOps (1)
      • Debug (3)
      • Experience (6)
      • ing.. (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    터미널 하이라이트
    클라우드 엔지니어
    aws korea
    키워드 하이라이트
    infra
    하이라이트 정규식
    AWS
    xshell 하이라이트
    스토리지
    클라우드 인프라 엔지니어
    Azure
    클라우드 네이티브
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
JOONU
k8s 환경에서 batch 동시 작동 하지 않도록 하는 삽질기
상단으로

티스토리툴바