개요

프론트엔드와 백엔드 모두 배포가 안정적으로 되었고, 이제 개발 막바지를 향해 달려가고 있다.

프론트엔드의 요구사항을 반영하기 위해, 매번 배포를 하는데 이 사이에 약 3~4분 정도의 다운타임이 너무나 신경쓰였다.

물론 무중단 배포의 주된 목적은 개발용이 아니라 서비스를 이용하는 고객 측면에서 안정성을 확보하기 위해 하는것이지만, 아직 우리는 실제 사용자 유치를 하지 못했고 (물론 아직 개발 단계이기도 하다.) 일단 개발하는 입장에서 편하면 더 좋은 것이므로… 무중단 배포를 구현해보기로 했다.

대표적인 방식인 Blue/Green 배포 방식을 사용해볼 생각이다.

어떻게 구현하지?

일단 정확히 구현을 하기 위해, 현재 우리 서비스의 구조를 파악해보자.

Route53의 레코드

image.png

splanet.co.kr은 프론트엔드의 주소이고, 백엔드는 그 앞에 서브도메인을 적용하여 api.splanet.co.kr 로 A 레코드를 연결해놓은 상태이다.

CNAME은 프론트엔드 서버를 가르켜놓은 상태이다.

ACM 인증서

image.png

현재 도메인을 통해 인증서 발급받고