SpringBoot와 PostgreSQL 연동하기 지난 포스팅에서 RDS PostgreSQL을 생성했다. 이제 Spring boot에 Database를 연결해 보자. 1. build.gradle 파일을 수정해 준다. dependencies { .. 기존 코드들 // postgreSQL runtimeOnly 'org.postgresql:postgresql' } 2. 그리고 우측 상단에 코끼리 모양 버튼을 눌러줘야 한다. (Load Gradle Changes) 2. application.yml 파일을 수정해 준다. url 부분에 엔드 포인트는 본인이 생성한 RDS > 데이터베이스 개요에 [연결 및 보안] 탭에서 "엔드포인트"를 확인하면 된다. spring: datasource: driver-class-nam..
전체 글
하다보니 재미있는 AI에 빠져있는 평양냉면7 문의사항: ysoil8811@gmail.comPostgreSQL 생성하기 1. RDS PostgreSQL 생성하기 1. AWS RDS 페이지 접속하기 https://aws.amazon.com/ko/rds/ 데이터베이스 관리 시스템 | 관계형 RDS | Amazon Web Services 닫기 이 다이어그램은 Amazon Relational Database Service(RDS)의 주요 기능과 이점을 보여줍니다. 왼쪽에서 오른쪽으로 세 개의 섹션이 표시되어 있습니다. 첫 번째 섹션에는 노트북 그림이 있습니다. 첫 aws.amazon.com 2. RDS 대시보드 접속해서 [데이터베이스 생성] 버튼 클릭한다. 3. 데이터베이스 생성 방식 선택에서 '표준 생성'을 선택한다. 4. 엔진 옵션은 'PostgreSQL'을 선택한다 5. 엔진 버전은 기본으로 선..
CodePipeline - 배포 오류 해결 (S3 거치지 않고 ECR에서 이미지 가져오기) 지난 게시글에서 GitHub main 브랜치에 push가 되면 CodePipeline이 trigger 되고 CI/CD가 적용되는 모습을 봤다. 중간에 Build 단계에서 오류가 났던걸 해결했다. 그리고 이제 Deploy 단계에서 발생하는 에러들을 해결해 보자. 1. 배포 Deploy 오류 발생 (S3 관련 오류) 1-1. Build 단계가 잘 넘어가더니 이번엔 Deploy 단계에서 에러가 발생했다. 1-2. 아래와 같은 오류가 발생했다. Unable to access the artifact with Amazon S3 object key 'recipia-member-git-n/BuildArtif/IejGhqN' lo..
CodePipeline - 빌드 오류 해결 (IAM 역할에 권한 정책 연결) CodePipeline에서 겨우겨우 Build 단계에서 DOWNLOAD_SOURCE 에러를 해결했더니 이제 Build 단계에서 PRE_BUILD 관련 에러가 터졌다. 해당 에러를 해결하는 과적을 적어보겠다. 1. CodePipeline Build 단계 오류 발생 (PRE_BUILD 단계) 1-1. 이전 과정에서 에러를 해결하고 다시 파이프라인을 돌려보았다. S3 권한을 수정하고 [변경 사항 릴리스]를 클릭했다. 1-2. 빌드하는 곳으로 이동해서 하단의 [세부 정보]를 클릭한다. 1-3. 빌드의 “세부 정보”를 확인했더니 이번에는 기존에 발생했던 DOWNLOAD_SOURCE관련 에러는 사라졌다. 1-4. 대신 PRE_BUILD 단..
CodePipeline 빌드 오류 해결 (S3 접근 권한) 지난번 포스팅에서 CodePipeline 파이프라인을 생성하고 동작시켰는데 계속 빌드 단계에서 오류가 났다. 해당 오류들을 하나하나씩 해결해 가는 과정을 작성해 보도록 하겠다. 1. CodePipeline 빌드 오류 발생 1-1. 빌드에서 오류가 발생해서 확인하기 위해 "CodeBuild에서 보기" 링크를 클릭한다. 1-2. 빌드 상태의 하단에 “단계 세부 정보” 목록을 클릭해서 확인했다. 1-3. DOWNLOAD_SOURCE단계에서 아래와 같은 오류가 발생했다. CLIENT_ERROR: RequestError: send request failed caused by: Get "": dial tcp #@$@#$:443: i/o timeout for..
CodePipeline을 이용한 CI/CD - 파이프 라인 생성 지금까지 ECS 자동배포를 위한 ECR과 ALB를 생성하고 세팅했었다. 이제 AWS CodePipeline을 이용해 ECS 자동 배포를 시작해 보자. 일단 나는 GitHub main 브랜치에 Push가 되면 자동 배포를 trigger 하는 구성이다. 1. ECR, ECS 그리고 CodePipeline을 같이 사용하는 이유 AWS ECR (Elastic Container Registry), ECS (Elastic Container Service), 그리고 CodePipeline을 함께 사용하는 것은 매우 강력한 CI/CD (Continuous Integration/Continuous Deployment) 파이프라인을 구축할 수 있는 방법이다...
ALB 적용해서 ECS 생성 및 설정 이전 포스트에서 생성한 ALB를 ECS 로드 밸런서에 적용하면서 ECS 배포까지 진행해 보자! 1. ALB를 써서 ECS 클러스터를 생성해 보자 1-1. 클러스터 생성으로 들어간다. 클러스터 이름을 작성하면 기본 네임스페이스는 자동으로 작성된다. 1-2. 인프라 설정을 한다. 태스크 정의를 EC2로 생성했기 때문에 클러스터 인프라도 Amazon EC2 인스턴스를 선택한다. 운영 체제/아키텍처에서 Amazon Linux 2023과 Amazon Linux 2중 아무거나 선택해도 큰 차이는 없다. 그러나 안정성과 장기 지원이 필요하다면 Amazon Linux 2가 더 적합할 수 있다. EC2 인스턴스 유형은 각자 프로젝트에 맞는 유형을 선택하면 된다. 원하는 용량은 기본 ..
ALB 적용하지 않고 ECS 생성 및 설정 도커 이미지가 올라갈 ECR까지 생성이 완료되면 이제 ECR에서 이미지를 pull 받아서 배포할 ECS를 생성해 보자. 이번 글에서는 로드 밸런서를 적용하지 않은 ECS 생성하는 방법을 작성해 볼 것이다. 1. Task 정의하기 1-1. ECS 좌측의 메뉴바에서 [태스크 정의] 버튼을 클릭한다. (https://aws.amazon.com/ko/ecs/) 1-2. 우측의 [새 태스크 정의 생성] 버튼을 클릭한다. 1-3. 그다음 이동한 페이지 좌측에서 왼쪽 위의 [새로운 ECS 환경]을 체크 해제한다. 태스크 정의를 할 때는 예전 ECS 환경에서 하는 게 더 다양한 옵션과 컨트롤이 가능하기 때문에 오류가 날 가능성이 적다. 1-4. 시작 유형 호환성을 선택한다. ..