AWS CodeDeploy 에러 해결, 권한 문제
·
Infra/AWS
Git action -> codedeploy를 통해 프로젝트 배포를 자동화하는 CICD를 진행 도중 codedeploy가 정삭적으로 작동하지 않는 문제가 발생했다.codeploy의 상세 events를 살펴보면 위 이미지와 같이 첫 단계도 제대로 실행이 되지 않은 모습니다.상세 에러 메시지를 살펴보니 위와 같은 에러가 나타났다.에러 메시지CodeDeploy agent was not able to receive the lifecycle event. Check the CodeDeploy agent logs on your host and make sure the agent is running and can connect to the CodeDeploy server위 메시지를 보고 일단은 ec2에서 COdeD..
github packages를 통한 공통 모듈 개발기
·
Infra/GIt
공통 모듈 개발기팀 단위로 MSA 프로젝트를 개발하다보니 여러 프로젝트에서 공통으로 사용되고 반복되는 코드와 클래스들이 생겨나게 됐다.주로 response, ExceptionHandler, Audit table, customArgumentsResolver 등이 공통적으로 사용되고 있었다.이 부분에서 불필요한 반복을 줄이기 위해 공통 모듈을 개발하고, 다른 모듈에서 의존성을 주입해 사용한 후기를 공유한다.1. 공통 모듈 개발 방법 선택공통 모듈을 만들기에 앞서 어떤 방식으로 공통 모듈을 개발하는 것이 가장 좋을까에 대한 고민을 했다.찾아본 결과 다양한 방법이 있었는데 크게 다음과 같은 세 가지로 구현이 가능했으며 장단점이 존재했다.github packagesgit을 통해 관리하기에 관리 포인트가 적음무료 ..
AWS Fargate에서 Eureka 사용 시 Eureka Client의 IP 추적 문제
·
Infra/AWS
MSA 프로젝트를 진행할 때 Service Discovery를 Eureka 를 통하여 구현하였다..이때 Eureka Client를 IP 주소 및 포트 번호를 통하여 과린하고 서비스 간의 라우팅을 진행하도록 설계했다.문제 발생하지만 AWS Fargate를 통해 서비슬들을 배포할 때 문제가 발생했다.Fargate로 Eureka 서버와 각각의 서비스들을 띄우고 각 서비스들을 Eureka Client로 Eureka 서버에 등록하여 사용하는데, 이때 Eureka 서버에 등록되는 것까지는 전혀 문제가 없었다. 하지만 이후 해당 서비스들을 호출하게 되면 500에러가 발생하게 되었다.문제 원인이는 Fargate에서 Eureka Client가 아래와 같이 등록되는데, 각 컨테이너의 private IP가 등로고디는 것이 ..