본문 바로가기

배운 거/면접준비

무중단 배포 프로세스

과정에 대한 이해는 있지만

항상 프로세스에 대해 설명하기 어려워서 작성해둠

무중단 배포 프로세스

  1. 코드 푸시:
    • 변경된 코드를 깃액션 이벤트 브랜치에 푸시합니다.
  2. GitHub Actions 트리거:
    • 코드 푸시로 인해 GitHub Actions가 트리거됩니다.
    • 애플리케이션 빌드 및 아티팩트 업로드가 진행됩니다.
  3. 배포 트리거:
    • GitHub Actions가 AWS CodeDeploy를 트리거하여 배포를 시작합니다.
  4. CodeDeploy 배포 과정:
    • BeforeInstall 훅: 기존 애플리케이션을 중지합니다.
    • AfterInstall 훅: 새로운 애플리케이션 파일을 설치합니다.
    • ApplicationStart 훅: 새로운 애플리케이션을 시작합니다.
    • ValidateService 훅: 애플리케이션 상태를 검증합니다.
  5. nginx 업데이트:
    • 배포 중에도 nginx는 트래픽을 새롭게 시작된 인스턴스로 라우팅합니다.
    • 사용자는 중단 없이 서비스를 이용할 수 있습니다.