💡 핵심 인사이트
블루/그린 배포는 1초의 서버 멈춤(다운타임)도 용납할 수 없는 현대 클라우드에서, 현재 돌아가고 있는 100% 구버전 서버 세트(블루) 옆에 완벽히 똑같은 100% 신버전 서버 세트(그린)를 몰래 띄워놓고, 문지기 라우터의 스위치만 딸깍 돌려 모든 트래픽을 한 방에 넘기는 가장 안전하고 즉각적인 무중단 배포 전략입니다.


Ⅰ. 다운타임(Downtime) 공포와 빅뱅 배포의 최후

과거 '빅뱅 배포' 시절에는 쇼핑몰 메인 화면에 "새벽 2시~4시 점검 중"을 띄워놓고, 원래 있던 구버전(V1)을 셧다운(삭제)시킨 후 그 자리에 신버전(V2) 코드를 덮어 썼습니다. 만약 4시에 사이트를 열었는데 결제가 안 터지면? 다시 V1 코드로 엎어치느라 아침 8시까지 사이트가 마비되는 대참사(Rollback 지옥)가 벌어졌습니다. 넷플릭스나 쿠팡은 단 1초만 멈춰도 수천만 원이 날아가므로 점검 시간을 아예 없애는 '무중단 배포'가 필수였습니다.


Ⅱ. 블루-그린 배포의 작동 메커니즘 (스위치 전환)

돈(서버 인프라)으로 무중단을 사는 가장 사치스럽고도 안전한 방법입니다.

  1. 블루(Blue) 상태: 현재 전 세계 10만 명의 유저가 기존 V1 서버(블루) 10대에 물려 평화롭게 쇼핑 중입니다.
  2. 그린(Green) 준비 (Standby): SRE 엔지니어가 블루와 물리적으로 완벽하게 똑같은 사양의 서버 10대(그린)를 클라우드에 새로 띄웁니다. 그리고 이 텅 빈 그린 서버에 새로운 V2 코드를 안전하게 설치합니다. (유저들은 그린의 존재를 모릅니다.)
  3. 은밀한 QA 테스트: 엔지니어들만 몰래 이 그린 서버의 뒤 구멍(사설 IP)으로 들어가 결제가 잘 되는지 미친 듯이 테스트합니다.
  4. 트래픽 스위치 전환 (Cut-over) ★: 완벽함이 확인되면, 앞단에 있는 로드밸런서(라우터) 설정에 들어가 트래픽이 가는 길을 [블루]에서 [그린]으로 1초 만에 꺾어버립니다.
  5. 완료: 10만 명의 유저는 새로고침 한 번 한 사이에 자기도 모르게 신규 V2 화면을 쾌적하게 띄워 보게 됩니다. 다운타임은 0초입니다.

Ⅲ. 1초 롤백의 마법과 비용 딜레마

  • 신의 방패, 1초 롤백: 만약 그린으로 꺾었는데 고객이 폭주하자마자 서버가 메모리 누수로 죽기 시작했습니다! 엔지니어는 당황하지 않고 마우스 클릭 한 번으로 **다시 라우터를 돌려 옆에 멀쩡히 살아있는 예전 '블루' 서버로 트래픽을 원상 복구(Rollback)**시켜버립니다. 장애 지속 시간은 5초 이내로 끝납니다. (몇 시간 뒤 블루 서버가 안정화되면, 그제야 구버전 블루 서버의 전원을 영구적으로 뽑아버립니다).
  • 치명적 단점 (비용 두 배): 완벽해 보이지만, 서버 1,000대를 굴리는 회사라면 배포하는 그 순간만큼은 똑같은 서버 1,000대를 옆에 추가로 더 띄워야 하므로 **총 2,000대의 엄청난 클라우드 과금(돈 낭비)**이 일시적으로 발생합니다. (컨테이너/쿠버네티스가 발전하면서 이 낭비가 꽤 줄어들긴 했습니다.)

📢 섹션 요약 비유: 블루-그린 배포는 마술사의 **'옷 갈아입기 마술'**입니다. 낡은 파란 옷(블루)을 입고 무대에서 연기를 하다가, 커튼을 1초 쳤다가 걷는 순간 완벽히 다려진 초록 옷(그린)으로 갈아입고 나타납니다. 관객(유저)은 옷을 훌렁훌렁 벗고 갈아입는 꼴(점검 시간)을 1초도 보지 않았지만 완벽히 릴리즈된 새 시스템을 즐길 수 있습니다.