본문 바로가기

DEV/CICD

무중단 배포(Blue-Green Deployment)

반응형

1. 무중단 배포란?

 

 서버를 서비스 할 때 소스 적용 및 장애 대응에 필요한 배포를 진행 시 중단되지 않고 적용할 수 있는 기술을 뜻합니다.

 

방법1) 물리적 이중화

가상화 방법이 나오기 전에 많이 사용하던 방법으로 물리적으로 이중화된 서버를 통해 순차적으로 구동하여 무중단 배포가 가능합니다. 이를 위해 L4스위치 분배 등을 통해 재구동 시 부하 관리가 필요하기도 합니다.

 

방법2) 소프트웨어 이중화

가상화가 나온 이후 많이 사용하는 방법입니다. 대표적으로 블루-그린 배포 방법이 있으며, 하드웨어 비용이 들지 않아 무중단 배포 환경을 구축할 때 많이 사용합니다.

 

참고 사이트 : martinfowler.com/articles/continuousIntegration.html

 

 

2. 블루-그린 배포란?

블루 그린 배포 설명

 

블루-그린 배포에 대해 간단하게 로직을 그려보았습니다.

 

그린으로 설정된 서비스를 사용중이고 개발자가 소스를 배포하면 그린 서비스에 소스가 빌드가 되고 배포가 됩니다.

그린에 배포가 완료되면 그린으로 서비스를 연결하고 마지막으로 블루 서비스를 종료합니다.

 

아주 간단한 구조입니다.  

이 구조를 이해하고 웹서버 기준으로 nginx, tomcat, docker를 이용하여 무중단 배포 서버를 구축해 보겠습니다.

 

 

 

반응형
댓글