AWS Secrets & ECS SpringBoot 설정 (3-1): ECS배포와 오류 분석
·
AWS/ECS, ECR
지난번에는 ECS의 태스크 정의를 생성했다. 이번에는 이 태스크를 사용해서 ECS의 서비스를 만들어 보도록 하자 태스크의 컨테이너에는 내가 주입해 준 환경변수가 들어갈 테니 springboot는 이 내용을 db연결할 때 잘 가져다 사용할 것이다. 1. ECS 클러스터 업데이트하기 1-1. ECS 클러스터 업데이트 이제 방금 생성한 태스크 정의를 적용시켜 보도록 하자 ECS 클러스터로 들어온 다음 우측의 "서비스 업데이트"를 클릭한다. 1-2. 패밀리(태스크 정의) 변경하기 아래와 같이 "패밀리" 구성을 클릭해서 이전 포스트에서 만든 "태스크 정의"를 선택해 준다. 맨 하단으로 가서 "업데이트" 버튼을 클릭한다. 2. SpringBoot에서 application.yaml 설정하고 ECS 배포하기 2-1. ..
AWS Secrets & ECS SpringBoot 설정 (1): Secret 생성
·
AWS/ECS, ECR
이전 포스트에서는 로컬 환경에서 RDS를 SpringBoot 프로젝트와 연결하는 데 성공했다. 이번에는 AWS의 CodePipeline을 CI/CD구축을 해서 ECS로 배포에 성공한 SpringBoot 프로젝트의 tomcat에 이 RDS(postgreSQL)를 연결해 주도록 하자 이 포스트에서는 우선 Secret을 생성하는 방법에 대해서 소개한다. 1. AWS Secrets Manager를 사용하는 이유 1-1. Secrets Manager를 사용하는 이유 AWS Secrets Manager를 사용하는 이유는 보안 때문이다. 예를 들어, GitHub 같은 공개된 저장소에 데이터베이스 접속 정보나 API 키 같은 민감한 정보를 yml 파일에 그대로 넣어두면, 누구나 그 정보를 볼 수 있게 되고, 이는 심각..
AWS의 RDS(PostgreSQL)와 SpringBoot 연동하기
·
AWS/RDS
이번 포스트에서는 RDS로 생성한 PostgreSQL 데이터베이스를 개발 중이던 SpringBoot 프로젝트와 연동해 보도록 하자 1. Gradle 의존성 추가하기 1-1. 의존성 추가하기 SpringBoot 프로젝트에서 postgreSQL을 사용하기 위해 Gradle에 의존성을 추가한다. // postgreSQL runtimeOnly 'org.postgresql:postgresql' 1-2. 주의사항 Gradle 의존성을 추가했다면 꼭 프로젝트에서 Gradle을 reload 해줘야 한다. 좌측의 코끼리를 누르거나 우측의 Gradle 버튼을 클릭해서 새로고침을 해주도록 하자 그래야 의존성을 다운로드해서 추가한다. 좌측의 dependency 폴더 하단에 아래와 같이 추가가 되었다면 잘 다운받은 것이다. 2..
AWS RDS로 PostgreSQL 데이터베이스 생성하기
·
AWS/RDS
이번 포스트에서는 AWS에서 지원하는 DB서비스인 RDS(Amazon Relational Database Service)에서 PostgreSQL을 생성해 보도록 하자 1. RDS (Amazon Relational Database Service)를 사용하는 이유 1-1. 관리의 편리성 RDS는 데이터베이스 관리 작업들, 예를 들어 하드웨어 프로비저닝, 데이터베이스 설정, 패치 적용 그리고 백업 같은 작업들을 자동화해 준다. 1-2. 확장성 사용자의 요구에 맞춰서 컴퓨팅 리소스나 스토리지를 쉽게 확장할 수 있다. 1-3. 가용성과 내구성 RDS는 멀티 AZ(Availability Zone) 배포를 지원해서 데이터베이스의 고가용성을 보장한다. 또한 자동 백업, 데이터베이스 스냅샷, 자동 호스트 교체 같은 기능..