배포는 계획, 실패는 롤백: 릴리즈 체크리스트 12가지
배포는 계획, 실패는 롤백
: 릴리즈 체크 리스트 12가지
서론
완벽한 배포는 없지만, 완벽한 준비는 가능하다.
이 글은 안전한 배포를 위한 릴리즈 체크리스트 12가지를 정리했습니다. 기능 플래그, 롤백 계획, 알림 문구, 모니터링 지표, 로그 키, 운영 매뉴얼과 함께 스테이지=프로덕션 구성 동일성, DB 마이그레이션 리허설, 장애 연락망 점검 방법을 담았습니다. 예시로 신규 가입 플로우를 5% 트래픽으로 켜고 전환율과 오류율을 모니터링하는 전략도 소개합니다.
📚 목차
본론
1) 릴리즈 범위·게이트 정의
- 범위: 포함/제외 기능, 영향 서비스 명시.
- 게이트: QA 통과 기준, 보안 승인, 데이터 검토 완료를 필수 통과로 설정.
- 드라이런: 스테이지 환경에서 엔드투엔드 리허설.
2) 기능 플래그 전략(기본 OFF)
- 기본 OFF 배포 후 플래그로 단계적 활성화.
- 타깃: 전체/국가/유입채널/신규 유저 등 세분화.
- 플래그 변경은 감사 로그와 권한으로 보호.
3) 카나리아 배포: 5%→25%→100%
- 예시: 신규 가입 플로우는 5% 트래픽만 켜고 전환율·오류율을 모니터링.
- 안정 임계: 오류율 ≤ 0.3%, 전환율 -1%p 이내 하락 시 확장.
- 확장 단계: 5% → 25% → 50% → 100% (각 단계 30~60분 관찰).
4) 롤백 계획: 스위치·버전·데이터
- 스위치: 플래그 OFF 즉시 복귀 경로 확보.
- 버전: 이전 안정 버전 아티팩트와 설정 스냅샷 보관.
- 데이터: 마이그레이션 시 역방향 스크립트 또는 쓰기 금지 기간 정의.
5) 모니터링 지표: 전환·오류·지연
- 제품: 전환율(CVR), 이탈률, 구매/가입 완료 수.
- 품질: 오류율(HTTP 4xx/5xx), 클라이언트 크래시.
- 성능: P95 응답 시간, TTFB, 렌더링 시간.
- 시스템: CPU/메모리/DB 커넥션, 큐 적체.
6) 로그 키·이벤트 스키마
{
"event": "signup_complete",
"screen_id": "SCR-JOIN-001",
"source": "canary_5",
"latency_ms": 820,
"error": null
}
- 키는 용어 사전의 영문 키와 일치.
- 카나리아 구간은
source=canary_5처럼 분리 태깅. - 에러 이벤트는 코드/메시지/상태에 표준화 적용.
7) 알림·커뮤니케이션 문구
- 고객 공지: 점검·변경 사항, 영향 범위, 문의 채널.
- 내부 알림: 배포 시작/확장/중단/롤백 메시지 템플릿.
- 릴리즈 노트: 변경 내역, 플래그 상태, 알려진 이슈.
8) 스테이지=프로덕션 구성 동일성
- 환경 변수·시크릿·서드파티 키 값과 권한 동등화.
- 인프라: 인스턴스 타입/개수, 네트워크, 캐시/큐 구성 동일.
- CDN/헤더/리다이렉트/압축 설정 차이 제거.
9) DB 마이그레이션 리허설
- 릴리즈 전 스냅샷 백업, 복구 연습.
- 리허설: 스테이지에서 동일 데이터 볼륨으로 실행 시간 측정.
- 롤백: 다운타임/쓰기 금지 창구, 역마이그레이션 스크립트 준비.
10) 장애 연락망·에스컬레이션
- 온콜 캘린더, 연락처(전화/메신저), 백업 담당자.
- 에스컬레이션 단계: L1→L2→L3, 의사결정 권한 명시.
- 외부 벤더/결제사/클라우드 지원 채널 목록.
11) 운영 매뉴얼(런북)·릴리즈 노트
- 런북: 점검 절차, 장애 가이드, 롤백 절차, 체크리스트.
- 릴리즈 노트: 변경 요약, 이슈 링크, 영향 범위, 확인 방법.
- 모든 문서는 버전·날짜·작성자와 링크 교차 참조.
12) 릴리즈 타임라인·체크리스트
| 시간 | 작업 | 완료 기준 |
|---|---|---|
| T-24h | 릴리즈 노트·공지·온콜 확정 | 승인 완료 |
| T-2h | 스테이지 최종 리허설 | 에러 0, 성능 OK |
| T | 배포 + 기능 플래그 OFF | 배포 성공 |
| T+10m | 카나리아 5% | 오류율·전환율 임계 내 |
| T+40m | 25% 확장 | 지표 안정 |
| T+90m | 50%→100% 또는 롤백 | 확정 |
- 알림 템플릿: 시작/확장/완료/롤백 4종 준비.
- 지표 대조: 이전 주 동시간대와 비교.
결론
안전한 배포의 핵심은 기능 플래그–카나리아–롤백 삼각형과, 모니터링·로그·연락망이라는 실행 장치입니다. 위 12가지 체크리스트로 준비하면 속도와 안정성을 함께 가져갈 수 있습니다.
FAQ
Q 기능 플래그는 어디에 두는 게 좋나요?
A 서버 측 플래그를 기본으로 하고, 클라이언트는 노출 제어에 한정하는 것이 안전합니다. 변경 로그와 권한 관리가 가능한 시스템을 사용하세요.
Q카나리아 단계는 얼마나 유지해야 하나요?
A 기본 30~60분 관찰을 권장합니다. 트래픽과 위험도에 따라 단계 수와 시간은 조정하세요.
Q 롤백 시 데이터는 어떻게 처리하나요?
A 데이터 스키마 변경이 있으면 쓰기 금지 창구를 마련하거나 역마이그레이션 스크립트를 준비해야 합니다. 트랜잭션 경계와 백업 복구 절차를 문서화하세요.
Q 어떤 지표를 모니터링해야 하나요?
A 제품 지표(전환율), 품질 지표(오류율), 성능 지표(P95), 시스템 지표(CPU/메모리/DB 커넥션)를 함께 봅니다. 카나리아 태그로 분리 관찰하세요.
Q 스테이지와 프로덕션 차이를 줄이는 팁은?
A IaC로 인프라를 코드화하고, 환경 변수/시크릿을 통합 관리하세요. CDN·헤더·리다이렉트 같은 경계 설정도 동일하게 맞춥니다.

