Jenkins 배치 220개 Temporal 이관, 비용 절반 절감 및 안정성 확보
·2026.10.20 11:36
핵심 내용
Jenkins 배치 220개를 Temporal로 옮기며 비용 절반 절감과 실패 알림 보장을 달성했다.
자세히 보기
- Jenkins 디스크 부족 및 플러그인 의존성 문제로 반복된 장애를 해결하기 위해 배치 220개를 Temporal로 이관함
- 배치 시스템 운영 비용이 절반 이상 절감되고, 실패 알림 누락 및 중복 실행 문제를 구조적으로 방지함
- 개발팀이 익숙한 언어로 배치를 코드화하여 PR 리뷰를 거치며, 실행 이력은 Aurora PostgreSQL에 30일 보존함
- Argo Workflows 대신 Temporal을 선택하여 YAML DSL 학습 부담을 줄이고, 기존 배치 이미지를 그대로 재사용함
이관 과정 및 구성
- 서비스별 워커를 TypeScript로 통일하고, 데브옵스팀이 공용 라이브러리를 제공하여 개발팀 작업 최소화함
- 실패 알림, 중복 실행 방지, 멈춤 감지, 실행 추적을 라이브러리에 기본 기능으로 포함하여 일관된 운영 보장함
- Jenkins와 Temporal을 병행 운영하며 서비스별 잡 단위로 점진적으로 전환하고, Argo CD를 통해 롤백 가능하게 구성함
운영 변화 및 효과
- 배치 실행 시 Karpenter가 On-Demand 노드를 평균 30초 내 준비하여 자원 부족 문제 해결함
- Datadog에 배치 로그를 전송하여 실행 ID 기반으로 로그를 통합 조회할 수 있게 개선함
- 남은 잡 이관 후 Jenkins EC2를 내리고, 실행 이력을 데이터 분석용 저장소로 이전할 계획임
이 한국어 요약은 AI가 자동으로 만들었습니다. 원문의 주장과 맥락은 원문에서 확인해 주세요. 저작권은 원저작자에게 있습니다.