라벨이 EC2인 게시물 표시

Next.js를 AWS EC2에 무중단으로 배포하기

이미지
Next.js를 EC2에 무중단 배포하는 방법은 여러 가지가 있는데, 규모와 복잡도 따라 추천이 달라져요. 크게 3가지 접근을 설명하고, 실무에서 가장 많이 쓰는 Blue-Green + Nginx 방식을 정리했습니다. PORT 3000 · ACTIVE ⇄ PORT 3001 · STANDBY → 헬스체크 통과 후 Nginx가 이 둘을 서로 바꿔치기합니다. 무중단 배포의 핵심은 간단합니다. 새 버전을 완전히 띄운 뒤, 준비가 끝난 것을 확인하고 나서 트래픽을 넘긴다. EC2 위에서 이걸 구현하는 방법은 크게 세 가지가 있는데, 규모에 따라 선택지가 달라집니다. 방식 난이도 무중단 보장 적합한 규모 PM2 cluster reload 낮음 준수함 (완벽 X) 단일 인스턴스, 소규모 Blue-Green + Nginx 중간 확실함 단일~소수 인스턴스 CodeDeploy + ALB Blue-Green 높음 확실함 Auto Scaling Group, 다중 인스턴스 PM2 reload : 같은 서버 안에서 워커를 하나씩 순차 재시작. 설정이 제일 간단하지만, 빌드 산출물 자체가 깨지거나 새 코드가 실행 중 프로세스와 충돌하면 순간 에러가 날 수 있어요. Blue-Green + Nginx : 포트 두 개(3000/3001)를 번갈아 쓰면서 Nginx가 트래픽을 스위칭. 롤백도 config 한 줄만 되돌리면 되니 실...