-
AWS - RDS 생성Infra/AWS 2024. 5. 9. 15:04
RDS란?
MySQL,MariaDB등 여러 관계형 데이터 베이스 서비스를 AWS로부터 빌려서 사용하는 관계형 데이터베이스 서비스이다. - 서비스를 배포할 때 DB도 같이 배포해줘야한다. 이때 RDB를 자주 사용하는데, 자동 백업, 모니터링, 다중 AZ등 다양한 부가 기능을 제공하기 때문이다.
- 물론 EC2에 백엔드 서버와 MySQL을 같이 설치해서 사용하면, 비용 절감 등의 장점도 있다.
- 하지만, 백엔드 서버의 장애로 서버가 다운되었을 때 DB도 같이 날아가는 불상사를 겪을 수 있다.
- 현업에서도 EC2와 RDS를 분리해서 인프라를 구성하는 경우가 대부분이라 한다.
1. RDS 생성하기
- 먼저 RDS 서비스로 이동해서 Region을 선택하고, 데이터 베이스 생성을 누른다.
- 다음으로 템플릿을 선택한다.
- 학습용이므로, 프리티어 선택 -> 프리티어로도 꽤 괜찮게 사용가능하다 (하루 방문자 수 2000명 서비스까지 버틴다고함)
- 다음으로 사용자와 패스워드 DB 인스턴스명을 작성하자.
- 마스터 사용자 이름과 마스터 암호는 따로 적어두는 편이 좋다.
- 인스턴스 구성과 스토리지는 그대로 두고
- 연결탭에 퍼블릭 엑세스를 예로 체크하자. 다양한 환경에서 편리하게 DB에 접근 할 수 있게 된다.
- 추후 보안을 위해 퍼블릭 엑세스를 아니오로 체크하기도 한다. -> 퍼블릭 액세스가 가능하다고 해도 엄청 보안상 위험한건 아니다
- 데이터베이스 인증, 모니터링은 기본 값으로 두고
- 비용 같은 경우 프리티어일 경우에도 비용이 발생한다고 한다. (24년 2월 정책 변경) 엄청 많이 나오는 건 아니지만, 조심해야함!!!
2. 보안그룹 설정하기
- RDS는 데이터베이스 전용 EC2라고 받아들이면 생각하기 편하다!
- EC2에서 그랬던 것 처럼 RDS에 보안그룹을 설정해줘야한다.
- EC2 보안 그룹 메뉴로 가자
- 다음으로 인바운드 아웃바운드 규칙을 설정하자
- 별도의 포트를 설정하지 않았다면, RDS의 MySQL은 3306 포트에서 실행된다. DB에 접근하기 위해 3306포트 인바운드 규칙을 추가해주자
- 인바운드 규칙의 IP는 일단 모든 IP허용으로 두었지만, 추후에 보안을 위해 DB에 접근할 IP만 따로 지정해도 된다.
- 생성한 보안드룹을 RDS에 붙이자
3. 파라미터 그룹 추가하기
- 각 DB마다 다양한 설정을 해줄 수 있다.
- 이를 설정해줘야 제대로 사용할 수 있다.
- RDS와 연결된 DB에 맞게 패밀리와 엔진타입을 설정하자
- 생성된 파라미터 그룹에 편집을 누르자
- 아래 속성 전부 utf8mb4로 설정하기
- character_set_client
- character_set_connection
- character_set_database
- characater_set_filesystem
- characater_set_results
- character_set_server
* utf8 대신에 utf8mb4를 사용하는 이유는 ‘한글’ 뿐만 아니라 ‘이모티콘’도 지원이 가능하도록 하기 위해서이다.
- 아래 속성 전부 utf8mb4_unicode_ci로 설정하기 (정렬 관련 설정)
- collation_connection
- collation_server
* utf8mb4_unicode_ci은 정렬, 비교 방식을 나타낸다.
- time_zone을 Asia/Seoul로 설정하기
- 마지막으로 RDS의 파라미터 그룹을 변경하자
주의) DB 파라미터 그룹을 변경한 뒤에는 RDS의 DB를 재부팅해야만 정상적으로 적용된다.
4. RDS에 접속하기
- DB클라이언트 프로그램을 이용해서 손쉽게 접속할 수 있다.
- Server HOSt RDS의 엔드포인트 입력
- Username 마스터 사용자 이름
- Password 마스터 암호
5. RDS 삭제하기 (중요)
- RDS를 삭제할 때 최종 스냅샷과 자동 백업 보존에 체크를 풀지 않으면 비용이 나간다. 실제 운영용 데이터 베이스가 아니라면, 체크를 해제하고 삭제하도록 하자
'Infra > AWS' 카테고리의 다른 글
AWS - S3,Cloudfront를 활용한 웹 페이지 배포 (0) 2024.05.09 AWS - S3를 활용한 파일 및 이미지 업로드 (0) 2024.05.09 ELB를 활용하여 HTTPS 연결하기 (2) - ELB에 도메인 연결 HTTPS 적용 (0) 2024.05.08 Route53 - 도메인 등록 (0) 2024.05.08 EC2 - 고정 IP 연결 (0) 2024.05.07