본문 바로가기 메뉴 바로가기

함께 자라기

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

함께 자라기

검색하기 폼
  • 전체보기 (60)
    • 블로그 (1)
    • Java (2)
    • JPA (3)
    • Spring (9)
      • 토비의 스프링 3.1 (7)
    • Database (12)
      • Real MySQL (12)
    • devOps (12)
    • gradle (1)
    • jenkins (2)
    • Frontend (3)
      • javascript (2)
      • Vue.js (1)
    • git (1)
    • 우아한테크코스 (2)
    • 회고 (5)
    • RTFM (7)
  • 방명록

CodeDeploy (4)
Github Actions + CodeDeploy + Nginx 로 무중단 배포하기 (3)

Nginx 소개 Nginx는 널리 쓰이는 웹 서버 중 하나입니다. 동적 처리를 주로 담당하는 WAS(Web Application Server)와는 다르게 웹 서버(Web Server)는 정적 자원에 대한 응답을 내려주는 역할을 가지고 있는데요. Nginx는 정적 자원의 처리 외에도 proxy 서버의 역할이나, reverse proxy 서버의 역할 등 여러방면에서 높은 활용도를 보여줍니다. 여기서는 Nginx가 CodeDeploy Agent에 의해 두 WAS간의 스위칭 역할을 담당하도록 구성해 보겠습니다. Nginx 설치와 설정 먼저 Nginx를 설치하겠습니다. EC2에 ssh로 접속하여 다음 커맨드를 수행합니다. sudo yum install nginx 그럼 설치가 되는 듯 하였으나, 다음과 같이 Ama..

devOps 2020. 8. 20. 21:15
Github Actions + CodeDeploy + Nginx 로 무중단 배포하기 (2)

CodeDeploy 소개 전 시간에 이어 다음으로는 Github Actions 에서 CodeDeploy 에게 S3에 있는 jar 파일을 가져가서 담당한 배포 그룹의 EC2에 배포해 줘! 라는 명령을 내릴 수 있도록 구성해 보겠습니다. 먼저 CodeDeploy에 대해 간단하게 소개하자면, 애플리케이션 배포를 자동화하는 AWS 의 배포 서비스입니다. EC2, AWS Lambda 와 같은 서비스에 배포를 할 수 있고, 현재위치 배포나 블루/그린 배포와 같은 무중단 배포를 지원합니다. 한 번 구축해 놓으면 이후로는 배포가 매우 간편하고 AWS 콘솔을 통해 제어하면서 배포 과정을 확인할 수 있기 때문에 많은 분들이 이 서비스를 이용하여 배포 플로우를 구축합니다. 조금 더 자세한 설명은 CodeDeploy 레퍼런스..

devOps 2020. 8. 20. 21:09
Github Actions + CodeDeploy + Nginx 로 무중단 배포하기 (1)

개요 안녕하세요! 이번 시리즈에서는 제목에서와 같이 Github Actions 와 CodeDeploy, 그리고 Nginx 를 사용하여 하나의 서버에서 최소 규모의 무중단 배포를 진행하는 방법에 대해 정리해보려고 합니다. 관련 코드는 Github 저장소 에서 확인하실 수 있습니다. 전체 흐름도 CI/CD 와 같이 인프라, 배포 환경을 구축하기 위해서는 내가 만들고자 하는 전체 그림을 숙지하는 것이 가장 중요하다고 생각합니다. 그래야 진행삽질 중에 막혔을 때 어느 부분이 문제일지 빠르게 유추해 볼 수 있기 때문입니다. 이 그림이 지금부터 하나씩 만들어 볼 배포 플로우입니다. Github Actions에서 프로젝트 빌드 후, jar 파일을 압축해서 S3에 업로드합니다. 이어서 CodeDeploy에게 S3에 있..

devOps 2020. 8. 19. 08:50
CodeDeploy View events 에서 에러 로그를 확인할 수 없는 경우

CodeDeploy 배포 실패 error log 가 없는 경우 CodeDeploy 로 배포 플로우를 구축하다보면 배포가 실패하는 경우가 있습니다. 보통은 에러 로그를 확인하기 위해서 아래와 같이 View events 로 접근하여 확인합니다. 하지만 다음과 같이 아무런 에러 로그가 남지 않는 경우가 있습니다. instance 에서 확인하기 이럴 때는 보통 deploy 를 시작하기도 전에 실패한 경우라서, Agent log 를 확인해보면 됩니다. 해당 EC2 인스턴스의 다음 경로에서 에러 로그를 확인할 수 있습니다. /var/log/aws/codedeploy-agent/codedeploy-agent.log 제 경우는 다음과 같은 에러 로그가 있었는데요. InstanceAgent::Plugins::CodeDe..

devOps 2020. 8. 11. 21:36
이전 1 다음
이전 다음
최근에 올라온 글
  • 블로그 이전
  • 1일 1잔디 19개월 회고
  • [RTFM] Spring Core - 05. As⋯
  • [RTFM] Spring Core - 04. Sp⋯
  • [RTFM] Spring Core - 03. Va⋯
  • [RTFM] Spring Core - 02. Re⋯
  • [RTFM] Spring Core - 01. Th⋯
  • [RTFM] Spring Core - 01. Th⋯
최근에 달린 댓글
  • 넵 최근에 티스토리 정책(https://notice.t⋯
  • 진짜 감사합니다! 덕분에 원하는 기능을 적용했네요 :)⋯
  • 사용해주셔서 감사합니다~!!
  • GitHub Star 누르고 가용ㅎㅎ 좋은 코드 공유해⋯
  • 아이고 넵 사용해주셔서 감사합니다~!!
  • 감사합니다. 웹을 잘 몰라서 다른 사람들이 올린 프로그⋯
  • 아이고ㅎㅎ 저도 다시한번 감사합니다ㅎㅎㅎ 즐코하세욥! ⋯
  • 이 코드 너무 잘써먹고 있어 감사인사 한번 더 드리려 ⋯
TAG
  • github Actions
  • 스프링
  • 토비
  • SAA
  • RealMySQL
  • 토비의 스프링
  • 프록시
  • nginx
  • 우테코
  • RTFM
  • AWS
  • SpringCore
  • CodeDeploy
  • database
more
Total
190,263
Today
43
Yesterday
186

Blog is powered by Tistory / Designed by Tistory

티스토리툴바