inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

비전공자도 이해할 수 있는 CI/CD 입문·실전

[실습] 확장성을 고려한 프로젝트에서 많이 쓰는 CI/CD 구축 방법

배포 오류

80

wiz0208

작성한 질문수 1

0

image.png

 

Actions 는 다 통과하는데 저기서 배포 오류가 뜨는데 이유를 알 수 있을까요?

aws docker ci/cd github-actions aws-code-deploy infrastructure aws-ec2

답변 2

0

JSCODE 박재성

안녕하세요 ! 질문 잘해주셨어요 ~

질문에 주신 내용에 대해 답변드려 볼게요 !

 

우선 첨부해주신 이미지에서 DownloadBundle에서 UnknownError가 발생하고 있는 것을 보니,

CodeDeploy에서 S3로부터 배포 파일을 다운로드하는 과정에서 문제가 생긴 것 같네요!

크게 3곳을 살펴보시는걸 추천드려요 !

 

첫번째로, EC2에서 CodeDeploy Agent가 제대로 실행되지 않고 있을 가능성이 높아보여요 !

우선 아래 명령어로 로그를 확인해 보시길 추천드려요 ~

sudo systemctl status codedeploy-agent

 

두번째로는, EC2에 연결된 IAM 역할에 S3 접근 권한에 문제가 있을수도 있을것 같네요 !

EC2 인스턴스에 AmazonEC2RoleforAWSCodeDeploy 정책이 제대로 연결되어 있는지

다시 한번 확인해보시길 추천드려요 ~

 

세번째는, CodeDeploy가 S3 버킷에 접근할 수 없는 상황일 수도 있어요 !

S3 버킷 정책과 CodeDeploy 서비스 역할을 다시 한번 체크해보시길 추천드려요 !

마지막으로 수업자료에 첨부되어있는 아래 링크를 참고하셔서 로그를 확인해보시는걸 추천드려요 :)

https://docs.aws.amazon.com/ko_kr/codedeploy/latest/userguide/deployments-view-logs.html

 

위 디버깅 과정 및 로그 확인을 해보시고 해결이 안되시면 편하게 추가 질문 주세요 !

구체적인 에러 메시지와 캡처를 보내주시면 더 상세히 디버깅 도와드릴게요 :)

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. wiz0208님.

질문해주신 배포 오류와 관련하여 문제를 확인하는 데 도움이 될만한 정보를 제공해 드리겠습니다. 알려주신 것처럼 AWS CodeDeploy에서 DownloadBundle 단계에서 UnknownError가 발생하여 배포에 실패하는 문제를 겪고 있습니다.

문제 요약

  1. UnknownError at DownloadBundle: 이 오류는 보통 S3에서 배포할 파일을 가져오는 과정에서 발생할 수 있습니다. 다음과 같은 원인일 수 있습니다.

    • S3 URL 오류: S3 버킷의 경로나 파일 이름이 잘못 설정되어 있을 수 있습니다.
    • IAM 권한 문제: EC2 인스턴스의 IAM 역할이 S3에 접근할 권한이 올바르게 설정되지 않은 경우입니다.
    • S3 버전 또는 위치 문제: 올바른 버전이나 위치가 설정되지 않은 경우입니다.

해결 방안

  1. S3 URL 및 파일 경로 검토: appspec.yml 또는 GitHub Actions의 설정에서 S3 URL이 올바르게 지정되어 있는지 확인하세요. 잘못된 파일명이나 경로가 없는지 확인합니다.

  2. IAM 역할 권한 확인: EC2 인스턴스에 연결된 IAM 역할이 S3에 대한 읽기 및 다운로드 권한을 가지고 있는지 확인하세요. AmazonS3ReadOnlyAccess와 같은 권한이 필요합니다.

  3. S3 설정 확인: 배포에 사용되는 S3 버킷 내의 파일이 실제로 존재하는지를 확인하세요. 파일이 존재하지 않거나 다른 버전이 있을 수 있습니다.

  4. 로그 분석: /var/log/aws/codedeploy-agent/codedeploy-agent.log 파일에서 tail -n 50 명령어를 통해 최근 로그를 확인하여, 보다 구체적인 오류 메시지를 찾을 수 있습니다.

아래 유사한 문제를 다룬 기존 답변들도 참조하시면 도움이 될 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

무중단 배포

0

57

2

workflows/deploy.yml 궁금증

0

52

2

.git-credentials 파일이 없이 배포가 성공한 이유가 궁금

0

57

1

(해결 - 정보공유) /home/runner/work/_temp/6be6e~0.sh: line 1: ./gradlew: Permission denied 오류

1

63

2

(확인 완료) git config --global creadential.helper store 후에도 비밀번호 물어보는 현상

1

71

2

질문_ 강의 순서 및 그외

0

70

2

섹션 4 - Docker + 백엔드(Spring Boot)

0

63

2

deploy.yml작성후 원격에 push불가

0

63

2

CodeDeploy 사용시 registration 요구

0

106

3

스프링 종료 명령어

0

68

2

RAM & 스왑메모리 폭증하는 문제

0

102

2

섹션 4, 5와 6, 7은 유사한가요?

0

66

1

code deploy 배포입니다.

0

98

3

사용자 삭제가 안되는 이유

0

88

2

이미지 pull중 no basic auth credentials 문제입니다.

0

113

2

Docker Compose파일을 작성했을때 CI CD와의 연동

0

96

2

보안그룹 생성 오류

0

84

3

AWS 5월에 탈퇴해서 그러는데....

0

81

1

node.js 설치시 에러

0

149

2

appspec.yml, 스크립트 파일 수정요청

0

82

2

appleboy/ssh-action stop_script 대체

1

181

2

Vue.js 파일 배포

0

61

2

aws를완강하고 ci/cd로 넘어왔습니다.

0

85

1

vue.js 를 cloudfront+s3+Route53를 적용하여 배포

0

111

2