728x90
반응형
✅ Elastic Beanstalk 환경 구성 1 (RDS 제외)
우선 RDS는 제외하고 환경을 구성한 뒤 [구성 > 데이터베이스 편집]을 통해 추가해주었다.
1. 플랫폼 : Docker
2. 소프트웨어
- 프록시 서버 : 없음
- 환경 속성
AWS_ECR_IMAGE
: {AWS계정명}.dkr.ecr.{ECR이 속한 region명}.amazonaws.com/earth-demo:{Image태그명}RDS_DBNAME
: 내가 설정한 DB 이름RDS_DRIVER
: com.mysql.cj.jdbc.DriverRDS_HOSTNAME
: DB 엔드포인트 주소RDS_PASSWORD
RDS_PORT
: 3306 (MySQL 기본 포트)RDS_USERNAME
🚨 나의 경우 RDS_DRIVER
부분을 intellij의 build.gradle에 넣어줬던 dependency
로 잘못 기입해서 빌드 오류로 며칠동안 고생했다.. 제대로 확인하고 기입할 것!!!!!!
🚨 AWS_ECR_IMAGE
는 기존에 만든 ECR Repository에서 어떤 image를 가져올 지 정하는 부분인데, 처음에는 생성된 image가 없기 때문에 위와 같이 작성해준다.
3. 용량 : 로드 밸런싱 수행 (인스턴스 최소 1, 최대 1) 추후 필요에 따라 조절할 예정
4. 로드 밸런서 : Application Load Balancer
5. 롤링 업데이트와 배포 수정 : 개발 완료 후에는 배포 방식을 추가 배치를 사용한 롤링으로 적용할 예정이나, 개발 단계에서는 빠른 업데이트를 위해 한 번에 모두 방식을 사용할 예정
📌 배포 방식
- 한 번에 모두
- 모든 애플리케이션을 한 번에 배포하는 것이다. 가장 빠르지만, 잠시동안은 트래픽을 받아낼 수 없다. 서버를 모두 정지 시키고 다음 버전을 생성하게 되어 다운 타임이 있고, 추가 비용은 없다.
- 추가 배치를 사용한 롤링
- 새 인스턴스를 만들어서 롤링하는 방식이다. 새 인스턴스를 더 배포해서 정상이 되면 예전 버전을 삭제 시키는 롤링 작업이다. 비용 추가가 있고, 배포 시간이 오래 걸리며, 이전 버전과 새 버전이 동시에 살아 있을 때가 있다.
6. 보안
- 키 페어 : 앞에서 만들어주었던 IAM 사용자
- IAM 인스턴스 프로파일 확인 :
aws-elasticbeanstalk-ec2-role
- 나중에
The ECR service failed to authenticate your private repository
에러가 뜰 수 있으므로 ECR 접근 권한을 추가해주어야 한다. - [IAM의 액세스 관리 > 역할]에 들어가서
aws-elasticbeanstalk-ec2-role
을 선택하고 정책 연결을 통해AmazonEC2ContainerRegistryReadOnly
권한 추가
- 나중에
✅ Elastic Beanstalk 환경 구성 2 (RDS)
- EC2 신규 보안 그룹 생성
(rds-local-connection)
- 3306 포트에 대해 로컬에서 접근 가능한 인바운드 규칙 설정
- RDS DB에 신규 생성한 보안 그룹 적용
- RDS > 데이터베이스 > DB 인스턴스 > 수정 > 연결 > 보안 그룹
(rds-local-connection)
추가 > 즉시 적용
- RDS > 데이터베이스 > DB 인스턴스 > 수정 > 연결 > 보안 그룹
✅ Intellij에 MySQL RDS 연결
- Intellij 우측 Database > ‘+’ > Data Source > MySQL
Host
: RDS 엔드포인트User
: mysql usernamePassword
: mysql passwordDatabase
: 연결할 DB name
위 사항들을 모두 기입해주면 알아서 Name
이 완성된다.
OK를 누르기 전에 Test Connection을 통해 연결이 잘 되는지 확인한다.
- build.gradle 설정
// mysql
runtimeOnly 'com.mysql:mysql-connector-j'
✏️ 참고
https://earth-95.tistory.com/123?category=975627
https://velog.io/@lorlorv/IntelliJ-MySQL-AWS-RDS-인텔리제이에-연결하기
728x90
반응형
'개발 > Cloud' 카테고리의 다른 글
[AWS, Github Action] Elastic Beanstalk에 SpringBoot 프로젝트 Docker로 배포하기 (2) - ECR 리포지토리 생성 및 권한 설정 (0) | 2023.03.16 |
---|---|
[AWS, Github Action] Elastic Beanstalk에 SpringBoot 프로젝트 Docker로 배포하기 (1) (0) | 2023.03.15 |
AWS Cloud Practicioner 자격증 합격 후기 (온라인 시험) (0) | 2023.02.26 |
☁️ AWS 모듈 2 : 클라우드 경제성 및 결제 (0) | 2023.01.30 |
☁️ AWS 모듈 1 : 클라우드 개념 개요 (0) | 2023.01.30 |
댓글