Search

RDS

RDS
다양한 DB 엔진 제공
즉각적인 DB 컴퓨팅 사이즈 조정
범용(SSD) 스토리지
자동 백업 (가용성 및 내구성 향상)
데이터 및 전송 데이터 암호화
쉽고 빠른 이중화 구성 (Multi-AZ)
Read Replica (읽기 전용 DB)
관리 부담 감소 사용 편의성

백업

DB 인스턴스 백업 및 복구를 위한 두 가지 방법
자동 백업 및 데이터베이스 스냅샷을 제공
특정 시점으로 복구 또는 DB 스냅샷에서 복구 작업을 수행하면 새로운 엔드포인트를 가지는 새 DB 인스턴스가 생성됨
RDS DB 스냅샷과 자동 백업은 S3에 저장
자동 백업
백업을 수행하는 백업 기간을 설정
백업 보존 기간은 1일부터 최대 35일까지 설정 가능
DB 인스턴스를 특정 시점으로 복구 가능
RDS는 DB 트랜잭션 로그를 5분마다 백업하므로 가장 오래된 시점부터 5분전까지 시점으로 복구 가능
자동백업을 비활성화 하려면 보존기간을 0으로 설정
데이테베이스 스냅샷
사용자가 수동으로 스냅샷 생성가능(수동 백업)
사용자가 지정한 만큼 백업을 보존할 수 있음 (스냅샷 보존기간 없음)

보안

SSL/TLS를 사용하여 애플리케이션과 DB 인스턴스 간의 전송 중 암호화 가능
KMS를 통해 관리하는 키를 사용하여 모든 데이터베이스 엔진에 대한 저장 중 암호화 가능
암호화 되지 않은 DB 인스턴스 암호화
1.
RDS 인스턴스 스냅샷 생성
2.
암호화 된 스냅샷 복사본 생성
3.
암호화 된 스냅샷에서 RDS 인스턴스 복원
암호/패스워드 이외에 IAM 사용자 및 역할을 통해 데이터베이스 인증 적용 가능
RDS에 보안그룹을 연결하여 IP 주소, EC2 인스턴스에 대한 데이터베이스 연결 제어 가능
RDS Audit Logs 기능을 사용하여 보안 감사에 활용 가능 (로그 데이터 장기 보관을 위해 로그를 CloudWatch Logs에 보낼 수 있음)

RDS Custom

EC2RDS를 설치하여 구성하는 경우는 사용자가 서버를 포함한 모든 부분을 관리
사용자가 데이터베이스와 운영체제에 대한 관리 권한을 가짐

RDS Proxy

데이터베이스 프록시 기능
애플리케이션이 데이터베이스와 연결을 풀링하고 공유하도록 하는 기능
여러 애플리케이션 연결에서 데이터베이스 연결을 공유할 수 있으므로 데이터베이스 리소스를 효율적으로 사용
데이터 베이스 장애 조치 시간 감소
애플리케이션 연결을 유지하면서 예비 DB 인스턴스에 자동으로 연결
보안 개선
데이터베이스에 IAM 인증을 필요에 따라 적용하고 Secret Manager에 보안 인증 정보를 안전하게 저장
데이터베이스 성능 유지
데이터베이스 연결 풀을 설정하고 매번 새 데이터베이스 연결을 여는데 필요한 메모리 및 CPU 오버헤드없이 이 풀에서 연결을 다시 사용
연결 요청이 지정된 한도를 초과하는 경우 애플리케이션 연결을 거부하여 부하 감소 (데이터베이스 열린 연결 수 제어)
Multi-AZ
서로 다른 가용영역의 Standby 형태의 Slave DB가 생성되고 동기식으로 복제가 됨
Master DB에 장애가 발생할 경우 자동으로 감지한 후 Failover 함
내구성과 가용성을 향상 시킬 수 있음
Standby Replica는 읽기 트래픽 처리 불가 (Multi-AZ RDS는 읽기 트래픽 분산 용도가 아님)
DB 인스턴스에 대한 업데이트는 가용영역 전체에서 예비 복제본에 동기식으로 복제
2배의 비용
Read Replica
읽기 용도의 동일한 DB를 여러 개 생성해서 읽기 용도의 부하 분산을 할 수 있음
읽기를 별도로 분리하여 성능을 향상
SQL 쿼리를 많이하는 리포팅 툴의 경우 읽기 복제본으로 연결하여 쿼리 성능 향상
읽기 전용 복제본이 작동하려면 백업이 활성화된 상태로 유지되어야 함
활성 상태의 장기 실행 트랜잭션이 있으면 완료 후에 읽기 전용 복제본을 생성하는 것을 권장

Parameter Group

DB 엔진의 동작을 제어하는 구성 설정 모음
기본으로 제공되는 파라미터 그룹과 사용자가 커스터마이징된 파라미터 그룹이 있다.
예시) max_connections: 최대 동시 접속 수

Option Group

RDS 인스턴스에 추가 기능(옵션)을 제공하는 설정 모음
데이터베이스 엔진의 기본 기능 외에 추가적으로 필요한 기능을 활성화할 때 사용한다.

Aurora