로그인 입점하기
← 가이드 목록
시작하기

롤백이란? 배포한 새 버전에 문제가 생겼을 때 이전 버전으로 되돌리는 방법 쉽게 이해하기

롤백은 새 배포에 문제가 생겼을 때 이전 정상 버전으로 되돌리는 작업입니다. 버그 수정·백업·DB·Blue-Green·Canary·Feature Flag·핫픽스·CI/CD와의 관계까지 초보 기준으로 정리합니다.

롤백이란? 배포한 새 버전에 문제가 생겼을 때 이전 버전으로 되돌리는 방법 쉽게 이해하기

새 기능을 서버에 올렸는데 결제 실패·로그인 오류·500·느린 응답이 터질 수 있습니다. 원인을 찾아 고치는 동안 문제 버전을 계속 쓸 수는 없습니다. 롤백(Rollback)은 새 배포에 문제가 났을 때 이전의 정상적인 버전·상태로 되돌리는 작업입니다.

쉽게 말하면 — 문제 있는 새 제품을 검증된 이전 제품으로 다시 교체하는 것입니다.

v2 배포 후 문제 발견 시 v1으로 롤백하고 분석·수정 후 재배포하는 흐름
배포 → 장애 → 롤백 → 정상화 → 원인 분석 → 수정 재배포

왜 롤백하나 · 버그 수정과의 차이

로그·DB·외부 API·배포 diff를 조사하는 데 수십 분~수 시간이 걸릴 수 있습니다. 그사이 결제가 실패하면 매출에 바로 영향을 줍니다. 목표는 서비스를 빠르게 정상 상태로 복구하는 것입니다. 롤백 ≠ 버그 수정입니다. 롤백은 이전 버전으로 돌리고, 버그 수정은 원인을 고치는 별도 작업입니다. 흔한 흐름은 장애 → 롤백 → 안정화 → 분석 → 수정 → 재배포입니다.

결제·로그인 중단, 5xx 급증, 응답시간 폭증처럼 영향이 크면 롤백을 검토합니다. 하단 문구 오타처럼 작으면 핫픽스 재배포가 더 빠를 수 있습니다. 영향도와 수정 시간을 함께 봅니다.

이전 버전 보관 · Git · 데이터베이스

이전 파일을 덮어쓰고 보관하지 않으면 돌아갈 곳이 없습니다. Git은 코드 이력을 보는 데 유용하지만, Git revert와 운영 서버 롤백은 같은 작업이 아닙니다. 코드·DB 구조·설정이 함께 바뀌었다면 파일만 되돌려도 안 될 수 있습니다. 컬럼을 바로 삭제하면 이전 코드가 그 컬럼을 찾을 때 깨집니다. 그래서 DB 변경은 하위 호환을 두고 단계적으로 하는 편이 안전합니다.

롤백은 프로그램 버전 복귀, 백업은 데이터 복사본입니다. 버그로 데이터가 삭제됐다면 코드 롤백만으로는 데이터가 돌아오지 않습니다. 프로그램 문제와 데이터 문제를 구분해야 합니다.

CI/CD · Blue-Green · Canary · Feature Flag

CI/CD에 이전 Artifact를 두면 v3.2 → v3.1처럼 다시 배포하기 쉽습니다. 모니터링·오류율 기준으로 자동 롤백도 가능하지만, 이벤트 트래픽을 장애로 오판하지 않도록 기준을 신중히 잡습니다. Blue-Green은 트래픽만 기존 환경으로 돌리면 빠른 복귀가 되고, Canary는 소수 사용자에서 멈추며, Rolling은 이미 올라간 서버를 다시 내려야 해 절차가 복잡할 수 있습니다. 로드밸런서와 함께 쓰는 경우가 많습니다.

Feature Flag는 전체 버전 롤백 없이 문제 기능만 끌 수 있습니다. 핫픽스는 긴급 패치로, 롤백이 어렵거나 수정이 빠를 때 선택합니다. 「롤백 버튼이 있다」만으로 안전하지 않습니다 — 실제 롤백 테스트를 해 본 경험이 중요합니다.

배포 후 감시 · 사후 정리

배포 직후 오류율·응답시간·주요 성공률·에러 트래킹을 집중 확인합니다. 로그에 예외가 없어도 결제 성공률이 떨어질 수 있어 비즈니스 지표도 봅니다. 누가 롤백을 결정할지·어떤 지표에서 검토할지 미리 정해 두면 장애 중 논의 시간을 줄입니다. 타임라인은 로그·배포 기록으로 남깁니다.

롤백으로 끝내지 말고, 왜 테스트·리뷰·Canary가 놓쳤는지 정리합니다. 이를 Postmortem(장애 회고)라고 하며, 「누가 잘못했나」보다 「왜 실수가 장애까지 갔나」를 봅니다. SEO 기술은 아니지만 noindex·500·깨진 페이지를 빨리 되돌리는 운영에 도움이 됩니다.


자주 묻는 질문

롤백이란?

새 배포에 문제가 났을 때 이전 정상 버전·상태로 되돌리는 작업입니다.

코드만 돌리면 데이터도 복구되나?

아닙니다. 삭제·변경된 데이터는 백업 등 별도 복구가 필요할 수 있습니다.

Git이 있으면 자동 롤백인가?

아닙니다. Git은 코드 이력에 도움이 되고, 운영 서버·DB 복구는 별도 절차입니다.

롤백하면 원인 분석은 안 해도 되나?

아닙니다. 롤백은 정상화 조치이고, 재발 방지를 위해 이후에 원인을 분석·수정해야 합니다.


정리

배포 = 새 버전으로 이동 · 롤백 = 이전 정상 버전으로 복귀

롤백은 버그를 「고치는」 작업이 아니라, 사용자 영향을 빠르게 멈추고 서비스를 정상화하는 대응입니다. 정상화 뒤에는 무슨 일이 있었고 왜 테스트에서 못 잡았는지, 다음에는 어떻게 막을지를 정리합니다. 이처럼 장애 후 원인·대응·재발 방지를 분석하는 과정을 포스트모템(Postmortem), 장애 회고라고 합니다.