Blue/Green 배포: 안전하고 빠른 무중단 배포 전략

Blue/Green 배포는 무중단 배포(Zero-Downtime Deployment) 기법중 하나입니다.

무중단 배포란? 말그대로 애플리케이션의 중단 없이 새로운 버전의 애플리케이션을 배포하는 방식인데요. 현재 운영중인 실제버전을 Blue, 새롭게 배포할 새 버전을 Green 으로 표현합니다. 그리고 두 환경은 동일한 스펙으로 구성됩니다.


작동방식

현재 운영중인 버전(Blue)이 실제 사용자 트래픽을 처리하는 동안 새로운 버전(Green)을 별도 환경에 배포 합니다. 로드밸런서를 통해 모든 트래픽을 Blue 에서 Green으로 한번에 전환합니다. 가령 HTTP 요청을 포트 8080 에서 8081로 변경 합니다.


장점

  • 구 버전의 인스턴스가 그대로 남아있어서 손쉬운 롤백 가능(로드밸런서 설정만 변경하면 됨)

  • 운영환경과 동일한 조건에서 충분한 테스트 가능

  • 롤링 배포와 다르게 한 번에 버전을 바꾸어서 버전 호환에 대한 문제가 발생하지 않음


단점

  • 시스템 자원이 두 배로 필요

  • 새로운 환경에 대한 테스트 필요


운영중인 서비스가 빠르게 롤백이 필요한 경우 Blue/Green 방식이 적합할수 있습니다. 다시 이전 버전으로 인스턴스를 하나씩 순차적으로 배포해야하는 롤링 업데이트 보다, 로드밸런서 설정만 변경하면 되기 때문입니다.

또한 트래픽이 적은 서비스 라면, 카나리보다 Blue/Green이 더 적합할 수 있습니다. 적은 트래픽을 더 쪼개는게 테스트 상 큰 의미가 있지 않고, 리소스를 2배 사용하더라도 비용 부담이 크지 않기 때문입니다.


https://www.redhat.com/ko/topics/devops/what-is-blue-green-deployment


Blue Green배포의 개념, DevOps 개념과 관계, 작동 방식, 특징

www.redhat.com

Blue Green배포의 개념, DevOps 개념과 관계, 작동 방식, 특징

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 11월 29일 오전 2:26

댓글 0

    함께 읽은 게시물

    < 일 잘하는 PM은 문제의 ‘이름’부터 정의한다 >

    1

    ... 더 보기

     • 

    댓글 1 • 저장 20 • 조회 1,223


    넷플릭스는 왜 WebFlux를 사용하지 않을까?

    ... 더 보기

    넷플릭스는 왜 WebFlux를 사용하지 않을까?

    kr.linkedin.com

    넷플릭스는 왜 WebFlux를 사용하지 않을까?

    GPT-5가 출시되면서 Function Calling에 Free-Form Function Calling과 Context-Free Grammar (CFG)를 지원하는데, 이게 숨은 보석이다.


    Free-Form은 결과를 JSON이 아니라 SQL, Python script 등의 코드등을 결과로 받거나 XML, CSV 같은 형태로도 받을 수 있다. 다만 plain-text로 주는 형태라서 주의가 필요하다. 이건 예전에도 프롬프트 트릭으로 쓰곤했던거라 그냥 맘이 좀 편해졌다(?)정도.

    ... 더 보기

    QA 구직/이직을 위한 이력서 작성 팁

    ... 더 보기

     • 

    댓글 1 • 저장 28 • 조회 2,840



    건강관리에 비유한 프로젝트 위험관리

    개인의 건강관리와 프로젝트의 위험관리는 유사한 점이 많다.

    ... 더 보기