CI 과정

  1. work-assistant-api 프로젝트의 main branch을 타겟으로 하는 Pull Request를 merge하거나 main branch에 push
  2. Jenkins를 통해 자동 테스트와 빌드 실행
  3. (3-1) 빌드 성공 여부를 Slack을 통해 알림

CD 과정 3. (3-2) 빌드 결과물인 .jar 파일을 S3에 업로드 4. CodeDeploy에서 빌드 결과물에 대한 배포 실행 5. SNS를 통해 배포 알림 요청 6. SNS가 Lambda를 트리거 7. Lambda에서 배포 성공 여부를 Slack을 통해 알림

미리도서관 API, CI / CD 구축하기

 

미리도서관 API, CI / CD 구축하기

미리도서관(토이 프로젝트)의 API 프로젝트에 대한 CI / CD를 구축해서 테스트, 빌드, 배포에 대한 자동화 작업을 하려고 한다. CI 툴은 무료이고 사용법이 비교적 간단한 Jenkins를 사용하고 CD 툴은 A

velog.io

 


  1. 배포를 위한 이벤트 발생 시, Gitlab Webhook으로 Jenkins 서버에 소스를 넘겨줍니다.
  2. 넘겨 받은 소스를 Zip 파일로 압축하여 AWS S3로 전달합니다.
  3. Jenkins는 AWS CodeDeploy에게 "S3에게 소스를 전달했으니 이제 배포를 시작해줘"라는 요청을 하게 됩니다.(우리는 배포 방법으로 Auto Scalinig Group에 ELB를 연동하여 Blue-Green 방식을 사용하도록 하겠습니다.)
  4. CodeDeploy는 설정된 배포 방식으로 기존의 Auto Scaling Group과 동일한 정책의 또 다른 Auto Scaling Group을 만들고 인스턴스를 생성하기 시작합니다.
  5. 이때, (새롭게 생성되고 있는) 각 인스턴스에서 CodeDeploy Agent를 통해 S3로부터 Zip 파일 형태의 소스를 가져오고 나머지 배포 스크립트를 수행합니다.
  6. 전반적인 수행 과정에 대한 상태 메세지를 Slack 채널을 통해 실시간으로 알리도록 합니다.

[무중단 배포 환경 구축하기] - 1. 아키텍처 구성 (velog.io)

 

[무중단 배포 환경 구축하기] - 1. 아키텍처 구성

안녕하세요. soover입니다. 이번 시리즈는 AWS 기반 서버의 **무중단 배포 환경 구축하기** 입니다. Auto Scaling Group 기반으로 Scale-in/out 운영 중인 서버에 무중단으로 배포를 하는 프로세스를 만들어

velog.io

 

'링크모음' 카테고리의 다른 글

클라우드 네이티브  (0) 2022.08.17
미들웨어  (0) 2022.08.16
도커  (0) 2022.08.16
kafka  (0) 2022.08.16
CI/CD  (0) 2022.08.16

+ Recent posts