-
시행중인 서비스 V1을 V2로 업그레이드 한다고 해보자.
V1이 시행중일 때 V2를 다운받는다.
V1을 종료 시키고 V2을 시작하는 단계 까지를 다운타임 이라고 한다.
이 서비스를 중단 시키는 과정을 없애는 것이 바로 무중단 배포라고 한다.
무중단 배포는 (Rolling / BlueGreen / Canary) 총 3가지가 있다.
Rolling
롤링 배포는 사용 중인 인스턴스 내에서 새 버전을 점진적으로 교체하는 것으로 무중단 배포의 가장 기본적인 방식이다.
서비스 중인 인스턴스 하나를 로드밸런서에서 라우팅하지 않도록 한 뒤, 새 버전을 적용하여 다시 라우팅하도록 한다.
이를 반복하여 모든 인스턴스에 새 버전의 애플리케이션을 배포한다.
출처(프로찍먹러-무중단배포방식) 새 버전을 배포할 때 인스턴스 수가 감소하기 때문에 사용중인 인스턴스에 트래픽이 몰릴 수 있다.
또한 배포 진행시 구버전, 신버전이 공존하기 때문에 호환성 문제가 발생할 수 있다. 따라서 사용자들은 균일한 서비스를 받지 못할 수 있다.
Blue Green 배포
Blue는 구버전, Green은 신버전이다.
운영중인 구버전과 동일한 신버전 인스턴스를 구성한 후 로드밸런서를 통해 모든 트래픽을 한번에 신버전 쪽으로 전환하는 방식이다.
출처(프로찍먹러-무중단배포방식) 시스템 자원이 두배로 필요하고, 새로운 환경에 대한 테스트가 전제되어야 한다.
카나리 배포
신버전을 소수 유저들에게 배포하고, 문제가 없다면 많은 유저들에게 배포하는 방식이다.
트래픽을 단계적으로 전환하기 때문에 영향을 최소화 시킬 수 있다.
728x90'클라우드컴퓨팅' 카테고리의 다른 글
누구나 따라할 수 있는 CI/CD구축 (0) 2023.08.09 jenkins-github연동시 webHook 에러 (0) 2023.08.03 [NCloud] Object Storage (1) 2023.05.26 [AWS] EC2 멈춤 (0) 2023.05.02 [AWS] RDS를 아라보자 (0) 2023.04.29