배포 전략 (Rolling, Blue/Green, Canary)
배포 전략 종류에 대해 알아보자.
Last updated
배포 전략 종류에 대해 알아보자.
Last updated
기존 서버들을 하나씩 업데이트하면서 순차적으로 새로운 버전으로 교체하는 방식
장점
별도의 인프라 필요 없어서 비용이 효율적임
점진적 업데이트로 부하 감소
단점
문제가 생기면 롤백이 어렵거나 전체 롤백에 시간 소요
여러 버전이 동시에 운영되므로 버전 호환성 고려 필요
두 개의 환경(Blue와 Green)을 두고, 배포는 새로운 버전을 Green에 먼저 배포한 후, 트래픽을 전환하는 방식
장점
롤백이 빠르고 쉬움 (트래픽만 다시 Blue로 전환하면 됨)
운영 중인 시스템에 영향 없이 테스트 가능
단점
두 개의 인프라 환경을 유지해야 하므로 비용 증가
데이터베이스 스키마 변경 시 양쪽 버전 호환성 고려 필요
전체 유저 중 일부에게만 새로운 버전을 먼저 배포하고, 문제가 없으면 점차 배포 범위를 늘리는 방식
장점
실사용자 기반 테스트로 리스크 최소화
문제가 생겼을 때 빠르게 감지 가능
점진적 배포로 안정성 높음
단점
롤링과 마찬가지로 여러 버전이 동시에 운영되므로 버전 호환성 고려 필요
롤링: 이전 버전으로 재배포 필요 → 전체 롤백하는데 시간 소요
블루그린: 트래픽을 이전 버전(Blue)으로 전환 → 빠르게 롤백 가능
카나리: 신규 버전의 라우팅 비율을 줄이고, 신규 버전이 적용된 일부 인스턴스에만 재배포 → 빠르게 롤백 가능
배포 전략에 대해 알아보며 각 서비스에 맞는 적절한 전략이 있겠지만, 그중에서도 “롤백”을 빠르게 할 수 있는 전략이 중요하다고 생각했다.
우리는 장애를 최소화하기 위해 다양한 노력을 기울이지만, 언제나 그렇듯 장애는 예기치 않게 발생할 수 있다. 특히 장애 시간은 서비스의 신뢰성과도 밀접한 관련이 있어, 빠른 대응 능력이 서비스 품질의 핵심이 된다.
따라서 장애를 빠르게 감지하고, 즉시 롤백하거나 안전하게 차단할 수 있는 배포 전략을 갖추는 것이 무엇보다 중요할 것이다.