카나리 배포란?

카나리 릴리스는 소규모 사용자 그룹에 변경 사항을 처음으로 릴리스하는 배포 전략입니다.

이후 비즈니스 KPI 및 운영 지표를 사용하여 시스템을 주의 깊게 모니터링하며 문제의 징후를 찾습니다. 변경 사항이 기능, 성능 또는 보안에 부정적 영향을 미치지 않는다는 확신이 서면 나머지 사용자에게 점진적으로 혹은 한 번에 배포할 수 있습니다.

업데이트를 받는 초기 사용자 그룹을 탄광의 카나리에 비유할 수 있습니다. 릴리스 후 문제가 확인될 경우 그로 인한 피해가 해당 그룹에만 국한되기 때문입니다. 따라서 대부분 사용자는 이를 모르고 넘어가며, 영향을 받지도 않습니다. 카나리 릴리스는 스테이징 환경에서 적절히 테스트하기 어렵고 위험이 높은 변경 사항을 배포할 때 유용합니다.

웹 기반 시스템에서 카나리 릴리스 구현 시 두 가지 버전의 제품을 호스팅하고, 각 버전으로 라우팅되는 트래픽을 통제하고, 사전에 두 버전의 상태를 모니터링해야 합니다. 설치된 제품의 경우 일부 사용자 그룹에 새 버전을 제공할 수 있습니다. 단, 업데이트 적용 시 통제력이 낮으므로 변경 사항을 더 광범위하게 릴리스할 준비가 되었는지 확인하는 데 더 오랜 시간이 소요될 수 있습니다.