PR 마다 환경을 띄운다 — 12개월 비용 분석

모든 PR 에 ephemeral 환경을 띄운다는 결정은 *유혹적* 이다. 12개월간 측정한 진짜 비용은 *클라우드 청구서가 아니라 다른 곳* 에 있었다.

백재민
백재민
CollabOps 창업자
PR 마다 환경을 띄운다 — 12개월 비용 분석

작년 1월, 모든 PR 마다 ephemeral 환경 을 띄우는 결정을 내렸다. 1년 후, 그 결정의 진짜 비용 표 를 갖게 됐다.

청구서 비용은 예상보다 적었다. 다른 비용이 예상보다 컸다.

청구서 비용 — 예상보다 적은 부분

PR 당 환경 평균 수명:    2.4 시간 (PR 열림→첫 커밋, 첫 커밋→merge 사이)
주당 평균 PR 수:         62
월 환경-시간:            ~6,500
EC2 (소형):              $0.05 / 시간 × 6,500 = $325
RDS (서버리스 Aurora):  $180
EBS:                    $90
네트워크:                $40
─────────────────────────────────
청구서 합:                $635 / 월 = $7,620 / 연

12개월 후 실제 청구: $8,400. 예상의 +10%. 수치적으로는 깨끗.

청구서 의 비용

여기서 진짜 가 시작된다.

1. 환경 부팅 시간 으로 사라진 엔지니어 시간

PR 한 번에 환경 부팅 평균 4분 12초. 부팅 동안 엔지니어는 기다림. 1년 동안:

3,224 PR × 4.2 분 = 13,540 분 = 225 시간 = ~$22,500 (engineer rate)

청구서 비용의 3배. 이게 가장 비싼 항목 이었다.

2. 삭제 안 되는 환경

이론상 PR merge 후 자동 삭제. 실제: 14% 의 환경이 어떤 이유로 자동 삭제 실패 함. 매뉴얼 cleanup 잡을 분기 1회 돌려서 약 60개 고아 환경 제거.

연간 고아 환경 누적 비용 — 약 $1,200 (무시 가능 수준이지만 0이 아님).

3. DB seed 데이터 관리

ephemeral 환경마다 DB seed 가 필요. 처음에 production 의 일부 anonymized snapshot 으로 시작. 6개월 후, seed 데이터의 노후화 발견 — 새 schema 가 추가됐는데 seed 가 갱신되지 않음. 환경에서 통과 한 PR 이 production 에서 schema mismatch. 인시던트 2건.

해결 — seed 자동 갱신 파이프라인 + seed schema 검증 도구. 추가 인프라 2주 작업. 그 후 분기 1회 점검.

4. 외부 의존성 처리

ephemeral 환경이 외부 API (Stripe, SendGrid 등) 에 어떻게 연결하나? 옵션 두 개:

  • 공유 sandbox 자격증명 사용 — 모든 환경이 같은 sandbox. 동시성 문제 가능.
  • 환경별 sandbox 발급 — 외부 vendor API 호출, vendor 측 quota 소진.

우리 선택: 공유 sandbox + test-isolation namespace. 깔끔하진 않지만 동작.

5. Cleanup 모니터링

자동 cleanup 이 실패 없이 작동 하는지 검증해야 함. 실패하면 청구서가 늘어남. cleanup 성공률 dashboard 박음. 분기 1회 점검.

그래서 도입할 가치가 있나

연간 청구서 비용:           $8,400
연간 엔지니어 부팅 대기 시간: $22,500
연간 고아 환경:              $1,200
연간 추가 인프라 운영:       $4,800
─────────────────────────────
연간 총 비용:                $36,900

연간 절감 (가설):
  - PR 리뷰 빨라짐:          $25,000 (정성적)
  - 회귀 인시던트 감소:       $15,000 (가설)
  - QA 사이클 단축:           $10,000
  ─────────────────────────
  연간 절감:                 $50,000

순 가치 약 $13,000 / 연. 작지만 양수.

다만 순 가치가 양수 라는 게 핵심이 아니다. 부팅 시간 22,500 달러 가 가장 큰 항목인데, 이건 부팅 시간 단축 으로 직접 줄일 수 있다. 부팅 시간을 4분 → 1분 으로 줄이면 연간 비용이 $15,000 줄어 순 가치가 $28,000 이 된다.

도입 에 점검할 4 가지

  1. seed 데이터 자동 갱신 파이프라인 이 있나
  2. 외부 의존성 의 sandbox 정책이 있나
  3. 자동 cleanup 의 실패 처리 가 자동인가
  4. 부팅 시간target 이 명시되어 있나 (보통 90초 이하)

이 4 가지가 없는 채로 시작하면 위 비용이 각각 1.5~2배 로 올라간다.

누가 이 글을 읽으면 좋은가

지금 ephemeral 환경 도입을 검토 중 인 플랫폼 리드. 위 4 가지가 없는 상태 라면, 도입 에 그것을 만드는 게 총 비용을 절반 으로 줄인다.

태그#ephemeral-environments#cicd#cost#devops#infrastructure