개요
현재 AWS 프리티어 계정의 한 대의 EC2에서 Client와 WAS 를 함께 배포하고 있다. 하지만 어째서인지 클라이언트를 배포하면 WAS 파일이 삭제되고 WAS를 배포하면 클라이언트가 삭제되는 현상이 발생했다. 결론적으로 그 원인은 바로 CodeDeploy의 동작 방식에 있었다.
AWS CodeDeploy 공식 문서
EC2/온프레미스 배포 문제 해결 - AWS CodeDeploy
Amazon Linux, RHEL 및 Ubuntu Server 인스턴스에서 정리 파일은 /opt/codedeploy-agent/deployment-root/deployment-instructions/에 있습니다. Windows Server 인스턴스에서의 위치는 C:\ProgramData\Amazon\CodeDeploy\deployment-instructions
docs.aws.amazon.com
AWS 공식문서를 살펴보면 "각 배포 중 CodeDeploy가 먼저 정리 로그 파일에 나열된 파일을 이전 배포에서 모두 삭제하기 때문입니다." 라는 문장을 확인할 수 있다. cleanup 파일은 /opt/codedeploy-agent/deployment-root/deployment-instructions 경로에서 확인할 수 있다.
cleanup 파일에 등록된 파일들이 CodeDeploy가 다음 번의 배포를 실행할 때 우선적으로 제거할 목록들이다. 따라서 클라이언트를 배포한 후 서버를 배포하거나, 서버를 배포한 후 클라이언트를 배포하게 되면 기존 서로의 파일을 삭제하던 것이었다.
'개발 > 트러블 슈팅' 카테고리의 다른 글
[MySQL] 한글 데이터 ? 물음표 깨짐 해결 방법 (0) | 2024.05.24 |
---|---|
[AWS] S3 이미지 업로드 후 URL 접근 시 Access Denied 해결 (0) | 2024.05.07 |
[이슈 해결] Exception in thread "main" java.net.BindException: Address already in use: bind (0) | 2024.02.20 |
[Error] Gradle script 'gradlew' is not executable, invalid source release 원인, 해결방법 (0) | 2023.06.01 |
[Error] CodeDeploy Error code : UnknownError 원인, 해결방법 (0) | 2023.05.31 |