매트릭스 빌드의 진짜 비용 모델 — 4축 매트릭스가 만든 $6,400/월
처음에 *3 OS × 3 Node 버전 = 9 잡* 으로 시작. 6개월 후 *4축 × 평균 5* 가 되어 *원래 빌드 시간의 100배*. 매트릭스 비용을 *처음부터* 계산하는 법.
매트릭스 빌드 는 거의 공짜 처럼 느껴진다. 한 줄 추가로 N 개 환경 검증. 그러나 4 축까지 가면 비용이 곱셈 으로 폭발한다.
이 글은 우리 비용 표 — 매트릭스 3 → 4 축 의 6 개월.
시작 — 3 축, 9 잡
matrix:
os: [ubuntu-22.04, ubuntu-24.04, macos-14]
node: [18, 20, 22]3 × 3 = 9 잡. CI 시간 예상 — 1 잡 4분 × 9 = 36 분 분산 (병렬 8 → 실제 8분).
만족했다. 모든 OS × 모든 Node 검증 을 8분에.
6 개월 후 — 4 축, 평균 5, 32~80 잡
매트릭스가 자라기 시작했다. 새 요구마다 한 축 추가:
matrix:
os: [ubuntu-22.04, ubuntu-24.04, macos-14, windows-2022] # +1
node: [18, 20, 22]
database: [postgres-15, postgres-16, mysql-8] # 새 축
region: [us-east-1, eu-west-1] # 새 축이제 4 × 3 × 3 × 2 = 72 잡. 일부 조합이 유효하지 않음 (windows + macos-only DB) 이라 실제 평균 60 잡.
CI 시간 — 잡당 평균 5분 (DB 셋업 추가). 60 잡 × 5분 = 300 분 분산. 병렬 8 → 실제 38분.
비용 표
초기 (3 축, 9 잡):
PR 당 CI 시간: 8 분
월 PR 수: 280
월 CI 시간: 2,240 분 = 37 시간
GitHub Actions 비용: ~$30 / 월
6개월 후 (4 축, 평균 60 잡):
PR 당 CI 시간: 38 분
월 PR 수: 280 (변화 없음)
월 CI 시간: 10,640 분 = 177 시간
GitHub Actions 비용: ~$1,800 / 월
순 증가: $1,770 / 월 = $21,240 / 연이게 직접 비용. 간접 비용은 더 큼.
간접 비용
PR 당 추가 대기 시간: 30 분
월 PR 수: 280
월 엔지니어 대기 시간: 8,400 분 = 140 시간
연간 환산: ~$84,000 (engineer rate)직접 비용의 4배. 매트릭스 축 이 추가될 때마다 팀 전체 가 기다리는 시간 이 누적됨.
매트릭스 추가 결정 매트릭스
새 축 추가 전 에 점검:
| 질문 | 추가 정당화 |
|---|---|
| 이 조합에서 진짜 다른 동작 이 있나? | 같으면 추가 X |
| 그 동작 차이가 런타임에 detect 가능한가? | 가능하면 런타임 detection 으로 |
| 차이가 분기 1회 미만 발생하나? | 그럼 야간 매트릭스 로 분리 |
| 차이가 치명 한가, 마이너 한가? | 마이너면 축 X |
우리가 한 결정 — 축 분리
6 개월 후 우리는 매트릭스를 3 단계 로 분리.
1) PR 매트릭스 (모든 PR 마다):
os × node = 9 잡 (8분)
목적: 빠른 피드백
2) main merge 매트릭스 (merge 직후):
os × node × database = 27 잡 (15분)
목적: 통합 검증
3) 야간 매트릭스 (매일 새벽 1회):
os × node × database × region = 60 잡 (38분)
목적: edge 조합 검증이 분리 후 PR 당 CI 시간이 8분 으로 회복. 월 비용이 $1,800 → $400. 간접 시간 $84,000 → $14,000.
매트릭스의 진짜 의미
매트릭스 빌드는 모든 PR 마다 모든 조합을 검증 하는 도구가 아니다. 언제 어떤 조합을 검증할지 의 분포 도구 다. 처음부터 이 분포를 명시적으로 설계 하지 않으면, 모든 조합이 모든 PR 에 깔리는 기본값 으로 가게 된다 — 그게 비용 폭발의 원인.
누가 이 글을 읽으면 좋은가
CI 매트릭스가 2 축 이상 인 모든 팀. 매트릭스 축이 추가될 때마다 위 4 단계 매트릭스 결정 을 거치면, 6개월 후 비용 폭발을 막을 수 있다.
비슷한 글
에이전틱 DevOps 12개월 후 — 첫 가설 중 무엇이 *맞았고* 무엇이 *틀렸나*
12개월 전 다음 10년의 DevOps는 에이전틱이다 의 가설들. 12개월의 데이터로 어느 가설이 맞고 어느 게 틀렸는지의 정직한 평가.
백재민
3 pillars 그 후 — 4 추가 신호의 *6개월 후* 운영 노트
3 pillars 가 더 이상 충분하지 않은 이유 발행 후 6개월. 4 추가 신호 (events / user journeys / deploy correlation / similarity) 가 운영에서 어떻게 작동했는지의 후속.
백재민
GitHub Actions vs 자체 호스팅 — *진짜 비용* 비교 (12개월 데이터)
GitHub Actions 가 *비싸 보임* 은 표면. 12개월 자체 호스팅 vs SaaS 비교 — 단순 *분당 비용* 이 아니라 *총 운영 비용* 으로.
백재민