AWS RDS

양승현·2022년 7월 30일
0

aws

목록 보기
5/12

RDS란?

  • 관계형 데이터베이스로 데이터베이스 서비스들을 제공한다. 이 서비스를 이용하면 MySQL, MariaDB, PostgreSQL, SQLServer 등 데이터베이스를 직접 운영하지 않고 AWS에 대행

AWS 상에서 DB 이용

  • AWS에서 DB를 운용하고 싶다면 두가지 방법이 존재한다.

1. EC2에 DB 직접 설치

  • EC2에 직접 DB를 설치하여 이용하는 방법이며, 사용자가 DB의 업데이트와 관리, 백업 등을 모두 직접 관리하는 장점 및 단점이 존재한다.

2. RDS 사용

  • AWS에서 모든것을 직접 관리하기 때문에, DB에 대해 신경쓰지 않고 개발을 진행할 수 있는 장점이 있다. 하지만 RDS를 사용하면 요금을 예측하기 어려울 뿐만 아니라 부가적인 요금이 발생한다

RDS 인증방법

1. 암호 인증

  • 암호 인증을 통해 모든 사용자 계정 관리를 수행한다.
  • MySQL에서 명령문은 CREATE USER 이름 IDENTIFIED BY 암호이지만 PostgreSQL에서 명령문은 CREATE USER 이름 WITH PASSWORD 암호이다.
  • AWS Secret Manager(RDS를 비롯해 DB, 여러 인증을 관리해주는 서비스, 자동으로 일정 주기마다 패스워드 변경, 다른 서비스들이 RDS 혹은 서비스들을 접근할 때 암호를 하드코딩할 필요 없게 만들어줌)와 통합하면 보안이 강화될 수 있다.

2. IAM 데이터베이스 인증

  • AWS Identity and Access Management(IAM) 데이터베이스 인증을 사용하여 DB 인스턴스에 인증할 수 있다.
  • DB 인스턴스에 연결할 때 암호를 사용할 필요가 없으나 대신에 인증 토큰을 사용해야한다.

3. Kerberos 인증

  • Microsoft Active Directory를 사용하여 데이터베이스 사용자의 외부 인증을 지원한다.
  • 티켓과 대칭 키 암호화를 사용하여 네트워크를 통해 암호를 전송할 필요가 없는 네트워크 인증 프로토콜이다.
  • 사용자 자격 증명을 Active Directory에 보관할 수 있습니다. Active Directory는 여러 DB 인스턴스에 대한 자격 증명을 보관하고 관리할 수 있는 중앙 집중식 공간을 제공한다.

Multi AZ(Multi Availability Zone)

  • 고가용성을 위해 두 개의 독립된 DB가 정보를 공유하고 하나의 DB가 고장난다면 나머지 하나의 DB를 사용한다.
  • 안전성을 높일 수 있으며, 시스템이 항상 작동하며 시스템의 가동 중단을 최소화 할 수 있다.
  • Master RDS DB에서 무언가 변화가 생기면 동기방식을 복제하여 다른 AZ에서 동인한 데이터를 보유한 복제본이 생기고 데이터를 유지한다.(데이터 유지 기능만 함)
  • AWS에서 자동으로 관리가 이루어진다.

Read Replica

  • 기본 복제 기능을 사용하여 원본 데이터베이스 인스턴스의 읽기 전용 복사본을 추가로 생성할 수 있다. 각 인스턴스 당 최대 5개의 읽기 전용 복제 인스턴스를 생성할 수 있다.
  • 성능을 극대화시키기 위해 존재하며 읽기 전용 복제 인스턴스(Read Replica)를 생성할 수 있다.
  • Master 인스턴스에서는 쓰기 작업을 담당하고, 복제 인스턴스에서는 읽기 작업을 담당하도록 역할군을 나눌 수 있다.
  • Master 인스턴스의 부하를 해소시켜주는 장점을 가지고 있다. 또한 Multi AZ와는 다르게 쓰기 작업이 진행될 때, 비동기 방식으로 복제 인스턴스에 변경된 값을 복제하여 동일한 데이터가 유지되도록 작동한다.

0개의 댓글