RDS (Relational Database Service)
RDS는 관계형 데이터베이스를 손쉽게 생성하고 확장할 수 있는 서비스이다. 우리가 직접 데이터베이스를 설치하고 관리,업데이트 할 필요 없이 AWS에서 대신 관리해준다.
우리는 서버 관리하는 것만 해도 바쁜데... DB까지 관리하려면 무리가 있을것이다..
그래서 RDS를 이용하면 몇번의 클릭만으로 DB 인스턴스를 손쉽게 생성할 수 있고, DB 최적화도 알아서 해주니 관리적인 측면에서 매우 효율적이다.
RDS를 사용해야 하는 이유
- 성능 /// 사용량에 따라 스토리지 용량과 IOPS 확장을 자동으로 해준다.
- 편의성 /// 클릭으로 DB 생성
- 시간 절약 /// 우리가 직접 관리하는 대신 AWS에서 대신 해주므로 시간 절약
- 비용 절감 /// DB 서버 구축 비용이나 , DB 인력에 대한 비용 절감
RDS DB 인스턴스 클래스
RDS에도 EC2와 비슷하게 인스턴스라는 개념이 있다. RDS DB 인스턴스도 여러 사양으로 나뉘어져 있는데, 이것을 DB 인스턴스 클래스라고 부른다.
RDS에서 DB 인스턴스 클래스가 여러 가지 사양으로 나뉘어져 있는 이유는 비용 절감과 효율성 때문이다.
DB 인스턴스 클래스 유형
- 마이크로 인스턴스(t3): 낮은 vCPU 성능과 적은 메모리를 제공. 가격이 가장 싼 인스턴스이다.
- 스탠다드(m5) : vCPU, 메모리, 네트워크 등이 평균적인 사양으로 제공된다.
- 메모리 최적화 (r5, x1....) : 다른 인스턴스 클래스보다 메모리 용량이 훨씬 크다.
RDS에서 지원하는 데이터베이스 엔진
각각의 엔진마다 성능이 다르고, 비용이 다르다. 알맞게 잘 쓰도록 하자.
- MySQL
- Amazon Aurora
- MariaDB
- PostgreSQL
- Oracle
- Microsoft SQL Server
RDS DB 인스턴스 생성하기
RDS 인스턴스를 생성하고 EC2 인스턴스에서 접속해보는 과정에 대해서 알아보도록 하자.
1. AWS Console에서 RDS로 들어와서, 'Create database'를 눌러 DB 인스턴스를 생성해주자.
2. 직접 세부 설정해 줄 것이기 때문에 Standard Create 체크하고, DB 엔진으로는 사용하기 쉬운 MySQL를 선택해주자
3. MySQL의 버젼은 8.0.20 으로 선택해주었다. DB 인스턴스는 프리티어로 만들어 주도록 하자
4. DB 인스턴스의 이름을 정해주고, Master의 이름과 패스워드 설정을 해주자.
5. DB 인스턴스에 사용할 VPC와 서브넷 그룹을 선택해주자.
6. VPC 보안그룹과 가용영역을 설정해주고 MySQL의 포트인 3306을 지정해주자
7. 다른 설정들은 기본값으로 해준뒤 potato라는 이름의 DB 인스턴스를 생성해주었다.
현재 상태가 Creating 이라서 Endpoint가 나타나지 않는다. 완전히 생성되려면 시간이 좀 걸리기 때문에 느긋하게 기다려주자.
8. 현재 상태가 Available로 변하면서 Endpoint 주소가 나타났다. 이후에 Endpoint 주소를 통해 DB에 접속하면 된다.
9. Security Group - 인바운드 규칙에서 MySQL의 포트를 허용해주자.
10. 생성했던 DB 인스턴스의 Endpoint 주소와 패스워드로 EC2에서 접속해 보았다.
지금까지 RDS는 무엇인지, 그리고 DB 인스턴스는 어떻게 생성하는지에 대해서 알아보았다.
'AWS > AWS Service' 카테고리의 다른 글
19. [AWS] DynamoDB에 대해서 알아보자 (0) | 2021.02.12 |
---|---|
18. [AWS] RDS에 대해서 알아보자 - (활용편) (0) | 2021.02.09 |
16. [AWS] CDN 서비스인 CloudFront에 대해서 알아보자 (0) | 2021.02.07 |
15. [AWS] S3로 정적 웹사이트 호스팅하기 (0) | 2021.02.07 |
14. [AWS] S3에 대해서 알아보자 (0) | 2021.02.07 |