본문 바로가기
Amazon Web Serivce 자격증 쉽게 공부하기/AWS Solutions Architect Associate 핵심

SAA-C03 핵심 #7, RDS(1)

by 네트워크 엔지니어 환영 2023. 11. 11.
반응형

Relational Database Service란?

  • 관계형 데이터베이스를 AWS 상에서 사용할 수 있도록 지원하는 서비스, 쉽게 말해 Database 서비스
  • 생성 후 서비스를 이용하기만 되므로 SaaS에 해당
  • MySQL, MariaDB, Postgre SQL, Oracle, MS SQL, Aurora 사용 가능
  • DB 인스턴스에 대한 SSH 액세스 불가 및 OS 제어 불가능(AWS가 관리하는 소위 Manged Service이기 때문)
  • 백업, 소프트웨어 패치, 장애 감지 및 복구를 AWS가 관리함
  • Storage 용량에 대하여 Auto Scaling 지원

 

DB Instance

  • Instance : RDS 기본 구성요소로서 클라우드에서 실행하는 격리된 데이터베이스 환경을 의미함
  • 이 인스턴스 내에서는 여러 사용자가 만든 데이터베이스가 포함되며 액세스할 여러 도구와 앱 사용 가능
  • MySQL, MariaDB, PostgreSQL, Oracle, Microsoft SQL Server, Amazon Aurora 데이터베이스 엔진을 지원함
  • DB 인스턴스도 EC2처럼 다양한 클래스를 가지고 있음(db.m5, db.r5 등)
  • 앞서 말한 것처럼 RDS도 클라우드에서 실행되기 때문에 하나의 AZ에서 격리되어 인스턴스로서 실행

 

DB Instance Storage

  • Instance Storage : 데이터베이스 유지를 위해 EBS(Elastic Block Storage)를 사용하며 필요한 스토리지 용량에 맞춰 자동으로 데이터를 여러 EBS 볼륨에 나누어 저장
  • 스토리지 유형
    • 범용 SSD : 대부분의 워크로드에서 사용하는 무난한 스토리지
    • 프로비져닝 IOPS : 빠르고 일관적인 I/O 성능이 필요하고 일관적으로 낮은 지연시간이 요구될 경우 사용하는 스토리지
    • 마그네틱 : 접속 빈도가 적은 워크로드에 적합한 스토리지

 

Multi-AZ

  • RDS는 Multi-AZ라는 기능을 통해 고가용성을 지원함
  • Multi-AZ를 활성화한 상태에서 마스터 DB 인스턴스에 문제가 발생하면 자동으로 다른 AZ의 예비 복제본(Standby)로 전환하며 서비스를 이어나감
    • 한 개의 DNS 네임을 공유하여 즉시 장애 조치가 가능하도록 구현
  • 말그대로 다수의 AZ에 DB 인스턴스를 둠으로써 하나 혹은 그 이상의 AZ가 파괴되어 서비스가 불가능할 때를 대비함
  • 마스터 DB 인스턴스가 수행해야 할 작업(백업, 스냅샷 생성) 등을 대신하여 수행함으로서 마스터 DB 인스턴스의 부담을 줄임
  • 마스터 DB 인스턴스에서 스냅샷을 캡쳐한 후에 다른 AZ에 복원하여 '동기식' 예비 복제본을 생성함
  • Active(AZ A)-Standby(AZ B,C) 구조를 형성한 후, 지속적으로 동기화함
  • '예비' 복제본이기 때문에 읽기 및 쓰기 작업을 수행할 수 없음
  • Multi-AZ를 사용하는 경우, 단일 AZ 배포에 비해 쓰기 및 저장 지연 시간이 길어질 수 있음(Standby에 데이터를 동기화해야 하기 때문)
  • 전환되는 상황
    • 가용 영역(AZ) 중단   
    • 마스터 DB 인스턴스 오류
    • DB 인스턴스 서버 유형 변경
    • 마스터 DB 인스턴스 OS에서 소프트웨어 패치 실시
    • 장애 조치 재부팅(Failover) 실시
  • Single-AZ에서 Multi-AZ로 전환시 중단시간(Down time)은 없으나 변환간 성능에 영향을 미칠 수 있음
  • Multi-AZ 활성화시, DB 인스턴스 생성시 스냅샷이 자동생성되고 스냅샷을 기반으로 스탠바이 DB 인스턴스를 생성하게 되며 이를 기반으로 동기식 복제를 수행

 

Read Replica

  • 읽기 작업만을 수행하는 DB 인스턴스의 읽기 전용 복제본
  • RDS로 들어오는 쿼리를 읽기 전용 복제본으로 우회시켜 마스터 DB 인스턴스의 부하를 줄일 수 있음
  • 우선 마스터 DB 인스턴스의 스냅샷을 캡쳐한 후, 이를 기반으로 Read Replica를 생성하며 데이터를 '비동기' 복제 방식을 통해 업데이트함
    • 읽기 전용 복제본이 마스터 DB 인스턴스의 최신 데이터를 복제하기 전까지 지연 발생 가능성 내재
  • MySQL, Oracle, PostgreSQL, Maria DB에서 사용 가능
  • 교차 리전 읽기 전용 복제본 포함 인스턴스당 최대 15개 생성 가능
  • 읽기 복제본 또한 독립 실행형 인스턴스로 승격 가능
  • 장애 대응을 위한 Multi-AZ로 지정 가능

댓글