AWS CI/CD: CodePipeline 두 번째 빌드 오류 해결 (5편)
·
AWS/CodePipeline, CICD
이번에는 PRE_BUILD 단계에서 발생한 빌드오류를 해결해 보자 1. 빌드 오류 파악하기 1-1. 오류 파악 열심히 S3 관련 문제를 해결했더니 이번에는 아래와 같은 PRE_BUILD 단계에서 에러가 발생했다. COMMAND_EXECUTION_ERROR: Error while executing command: aws ecr get-login-password --region ap-northeast-2 | docker login --username AWS --password-stdin {ecr 리포지토리 주소}. Reason: exit status 1 1-2. 빌드 로그 분석하기 조금 더 정확히 보기위해 빌드 로그를 확인했다. 아무래도 이번에는 IAM 권한관련 에러인것 같다. (ECR 권한에러) [Cont..
AWS CI/CD: CodePipeline 배포 및 검토 (3편)
·
AWS/CodePipeline, CICD
이번에는 2편에 이어서 Step4 배포 스테이지와 Step5 검토를 작성한다. 1. Step4: 배포 스테이지 추가 1-1. 배포 스테이지 추가 Step3에서 다음을 누른다면 아래와 같은 배포 스테이지 추가 화면으로 이동된다. 1-2. 배포 공급자 선택 배포 공급자 하단의 박스를 눌러서 Amazon ECS를 선택해 준다. 1-3. 배포 스테이지 추가하기 이전에 만든 ECS 클러스터를 선택하고 서비스도 선택한다. 여기서 중요한게 이미지 정의 파일인데 이것때문에 배포시 오류가 발생했다. (배포단계를 설명할 때 오류 해결사항을 적도록 하겠다.) 2. 검토 2-1. 검토하기 이 단계에서는 지금까지 작성한 내용들을 하나하나 검토한다. 4단계까지 전부 확인했을때 문제가 없다면 하단의 "파이프라인 생성" 버튼을 누른..
AWS CI/CD: CodePipeline 기본 설정 (1편)
·
AWS/CodePipeline, CICD
CodePipeline 시리즈는 지금까지 열심히 만든 ECR, ECS를 활용하여 CI/CD를 구현해 보는 시리즈이다. CodePipeline으로 CI/CD를 구축하는 과정에서 많은 우여곡절이 있었지만 이를 모두 순서대로 기록하기에 글을 다 읽어보면서 필요한 부분만 따라하고 정보를 가져갔으면 좋겠다. 사전사항으로는 ECR을 생성하고 ECS 서비스까지 한번 성공적으로 기동시킨다음 CodePipeline을 만드는 것을 추천한다. ECR 생성하기 2023.10.27 - [AWS] - AWS ECR로 Docker 이미지 관리하기: 완벽 가이드 AWS ECR로 Docker 이미지 관리하기: 완벽 가이드 이번 포스트에서는 ECS를 사용하기 전에 꼭 필요한 Docker 이미지를 관리해주는 DockerHub의 AWS버전..
AWS - ALB(로드 밸런서)없이 ECS 생성하기
·
AWS/ECS, ECR
이번 포스트에서는 ALB(로드 밸런서)를 사용하지 않고 AWS의 ECS를 생성하고 SpringBoot의 jar 파일를 dockerfile로 이미지 변환하고 배포해 보도록 하자 이 글을 따라하기 전에 ECR을 먼저 만들고 오는것을 추천한다. 2023.10.27 - [AWS] - AWS ECR로 Docker 이미지 관리하기: 완벽 가이드 AWS ECR로 Docker 이미지 관리하기: 완벽 가이드 코딩은 글쓰기라고 생각한다. 꾸준히 기록하며 내 개발 실력을 키울것이다. curiousjinan.tistory.com 1. Task 정의하기 1-1. ECS 좌측의 메뉴바에서 “태스크 정의”를 클릭한다. 1-2. 우측의 “새 태스크 정의 생성”을 클릭한다. 1-3. 이동한 페이지 좌측에 있는 “새로운 ECS환경” 버..
AWS EC2를 사용하는 ECS 클러스터 생성 및 사용
·
AWS/ECS, ECR
이번 포스트에서는 ECS 클러스터, ECS 서비스, ECS 태스크 정의를 생성하고 사용해 보자 ECS 클러스터에 대해서 설명하자면 ECS클러스터는 그 자체로는 아무런 역할을 하지 못한다. 클러스터 내부에 EC2가 생성되어야 비로소 클러스터의 역할을 하게 되는 것이다. 이를 위해 ECS클러스터 생성을 할때는 EC2생성을 동시에 설정하게 된다. 그리고 ECS 클러스터 내부에는 ECS서비스 생성해서 기동시켜줘야하는데 이 서비스는 ECS 태스크를 관리해주는 서비스다. 즉, 세팅 순서는 ECS 클러스터 -> 태스크 정의 -> 서비스 생성이다. 1. ECS 클러스터 생성하기 1-1. 클러스터 생성 ECS 메뉴 우측의 "클러스터 생성" 버튼을 클릭한다. 1-2. 클러스터 구성 작성 여기서는 클러스터 이름과 기본 네임..
AWS ECS를 위한 ALB세팅: 실전 예제와 함께
·
AWS/ECS, ECR
이번 포스트에서는 ECS(Elastic Container Service)에 적용시켜줄 로드밸런싱인 ALB(Application Load Balancer)를 세팅해보도록 하자 1. ALB(로드 밸런서) 구성하기 1-1. EC2 대시보드로 이동한다. 1-2. 두번째에 있는 "로드 밸런서" 버튼을 클릭한다. 여기서 우측의 “로드 밸런서 생성” 버튼을 클릭한다. 유형 비교 및 선택창이 나온다. 1-3. 기본 구성 작성하기 Application Load Balancer 하단의 “생성” 버튼을 클릭하면 아래와 같은 "기본 구성" 페이지가 나온다. 기본 구성에서 로드 밸런서 이름을 작성하고 체계는 “인터넷 경계”를 선택해 준다. 1-4. 네트워크 매핑 설정 VPC에는 default VPC를 선택한다. (만든것이 있다..
AWS ECR로 Docker 이미지 관리하기: 완벽 가이드
·
AWS/ECS, ECR
Docker 이미지를 관리해 주는 DockerHub의 AWS버전인 ECR(Elastic Container Registry)을 생성해 보자 1. ECR 생성하기 1-1. ECR생성페이지 이동 ECR 리포지토리를 생성하기 위해서 AWS의 ECR 페이지로 이동 (웹 검색으로 들어와도 된다.) 1-2. ECR 리포지토리 생성버튼 클릭 프라이빗으로 선택하고 간단하게 리포지토리 이름을 작성해 준다. 1-3. 리포지토리 생성하기 다 작성하고 하단의 "리포지토리 생성" 버튼을 클릭한다. 1-4. ECR 생성완료 2. ECR에 이미지 push하기 (dockerfile 이용, ARM(애플 M1) 아키텍처 제외버전) 2-1. 우측 상단에 “푸시 명령 보기” 버튼을 클릭한다. 2-2. 아래와 같이 푸시 명령 정보가 나온다. ..
AWS EC2 웹 인터페이스 접속 오류 해결: Amazon Linux에서의 SSH 연결 이슈
·
AWS/EC2
AWS의 웹페이지에서 EC2 서버에 접속했을 때 오류가 발생했을 때는 어떻게 해야 할까? 1. EC2 연결 버튼으로 Linux콘솔에 접속했을 때 오류 발생 웹에서 EC2 Terminal을 연결하던 도중 오류 발생 ECS를 사용하다 EC2에 잠시 접속할 일이 생겨서 인스턴스 요약에 들어가서 "연결" 버튼으로 linux에 접속했는데 오류가 발생했다. 오류 코드 오류 코드는 다음과 같았다. Failed to connect to your instance Error establishing SSH connection to your instance. Try again later. 근데 termius로 ssh로 접속하면 들어가졌다. Termius로 접속해서 아래와 같은 명령어를 입력해서 ec2-instance-conn..