어쩌다 IT
article thumbnail
반응형

AWS RDS

 

RDS

  • Relational Database Service, 관계형 데이터베이스 서비스
  • Postgres, MySQL, MariaDB, Oracle, Microsoft SQL Server, Aurora
  • 관리형 서비스
    • 데이터베이스 프로비저닝, 기본 운영체제 패치 자동화
    • 지속적인 백업으로 특정 시점으로 복원 가능
    • 대시보드에서 모니터링 가능
    • 읽기 전용 복제본을 활용해 읽기 성능 개선
    • 다중 AZ 설정 가능
    • Storage Auto Scaling 가능
    • 스토리지는 EBS로 구성 (gp2, io1)
  • SSH를 통해 접속할 수 없음

 

Read Replica

  • 읽기 전용 복제본으로 최대 5개까지 생성 가능
  • 동일 AZ, 타 AZ나 타 리전에 걸쳐서 생성 가능
  • 권한을 획득하여 데이터베이스로 승격 가능

 

Multi AZ

  • 다중 AZ는 주로 재해 복구에 사용
  • AZ A의 마스터 데이터베이스 인스턴스를 AZ B에 대기 인스턴스로 동기적 복제
  • 하나의 DNS 이름을 갖고 마스터에 변경 사항이 생기면 대기 인스턴스에도 변경 사항 적용
  • 읽기 전용 복제본도 다중 AZ 설정 가능
  • 단일 AZ에서 다중 AZ로 전환할 때 다운 타임이 없음

 

RDS Custom

  • RDS Custom은 Oracle, Microsoft SQL Server에서만 사용 가능
  • 기저 운영 체제와 데이터베이스에 대한 관리자 권한 전체를 가짐


Amazon Aurora

 

Aurora

  • 오픈 소스가 아닌 AWS 고유의 기술로 Postgres와 MySQL과 호환
  • Aurora의 스토리지는 자동으로 확장, 10GB부터 최대 128TB까지
  • 읽기 전용 복제본 (Read Replica) 의 경우 최대 15개의 복제본 생성 가능하고 복제 속도도 훨씬 빠름
  • Aurora는 높은 가용성을 가지고 장애 발생 시 30초 이내에 즉각적인 장애 조치
  • Writer / Reader Endpoint 를 제공하여 Writer 에서는 마스터로 접근하고 Reader 에서는 읽기 전용 복제본으로 접근
  • Aurora 특징
    • 자동 장애 조치
    • 백업 및 복구
    • 격리 및 보안
    • 산업 규정 준수
    • 자동 스케일링
    • 제로 다운 타임 자동 패치
    • 고급 모니터링
    • 통상 유지 관리
    • 백트랙 - 과거의 어떤 시점의 데이터로 복원하는 기능

 

Aurora 고급 개념

  • 복제본 자동 스케일링을 통해 읽기 요청을 분산하고 전반적인 CPU 사용량 감소 가능
  • 사용자 지정 엔드포인트를 통해 특정 복제본에서 작업 가능
  • Serverless 기능으로 실제 사용량에 기반한 자동 데이터베이스 인스턴스화와 자동 스케일링을 가능하게 함
  • 비정기적, 간헐적 또는 예측 불허한 워크로드에 유용
  • 멀티 마스터 기능으로 Wirter Node 에 높은 가용성 부여 가능 (모든 인스턴스에서 읽기 / 쓰기가 가능)
  • Global Aurora로 리전 간 복제 가능하고 리전에 걸쳐 데이터를 복제하는 데 걸리는 시간은 평균 1초 미만
  • Aurora는 AWS 내의 머신 러닝 서비스와의 통합을 지원


RDS & Aurora

 

RDS Backup

  • 자동 백업
    • 자동으로 매일 데이터베이스 유지 관리 시간에 데이터베이스 전체를 백업
    • 5분마다 트랜잭션 로그 백업
    • 자동 백업 보유 기간은 1일에서 최대 35일까지 설정 가능, 0으로 설정해서 자동 백업 비활성화도 가능
  • 수동 DB 스냅샷 생성
    • 수동으로 진행해야 하지만 원하는 만큼 장기간 보관 가능
    • 스냅샷을 만들고 원본 데이터베이스는 삭제하는 방법으로 비용 절감 가능

 

Aurora Backup

  • 자동 백업
    • 자동 백업 보유 기간은 1일에서 최대 35일까지 설정 가능, 비활성화는 불가능
    • 지정 시간 복구 기능으로 정해진 시간 범위 내의 어느 시점으로도 복구 가능
  • 수동 DB 스냅샷 생성 - RDS Backup 과 유사

 

Restore

  • 스냅샷으로 복원
  • S3로부터 MySQL RDS 데이터베이스 복원
    • 기본적인 개념은 온프레미스 데이터베이스의 백업 파일을 객체 스토리지인 S3에 업로드하고 해당 파일로 복원
  • S3로부터 MySQL Aurora 클러스터로 복원
    • Percona XtraBackup 이라는 소프트웨어를 사용하여 백업한 후 S3에 업로드하고 해당 파일로 복원

 

Aurora 데이터베이스 복제

  • 기존의 데이터베이스로부터 새로운 Aurora DB 클러스터를 복제하는 기능
  • 기존 데이터베이스에 영향을 주지 않고 복제하여 개발 또는 테스트를 수행
  • 스냅샷을 만들고 복원하는 것보다 복제한 Aurora를 사용하는 편이 더 빠름

 

Security

  • 데이터베이스 생성 시 정의하며 KMS를 사용해 마스터와 모든 복제본의 암호화가 이루어짐
    • 마스터 데이터베이스에서 암호화를 하지 않으면 읽기 전용 복제본 암호화 불가능
    • 암호화되지 않은 기존 데이터베이스를 스냅샷 생성하여 암호화 활성화 후 생성하는 방법으로 암호화 가능
  • IAM 역할을 사용해서 데이터베이스에 접속하거나 username / PW 조합으로 접속 가능
  • 보안 그룹을 통해 네트워크 액세스 통제
  • RDS와 Aurora는 SSH로 액세스가 불가능 (단, RDS Custom 서비스는 예외)

 

RDS Proxy

  • RDS 데이터베이스 인스턴스의 연결을 최소화
  • Serverless로 Auto Scaling이 가능해 용량 관리가 필요 없고 다중 AZ로 가뇽성이 높음
  • 장애 조치 시간을 최대 66% 감소
  • 데이터베이스에 IAM 인증을 강제하는 데 사용되고 자격 증명은 AWS Secret Manager 서비스에 저장
  • RDS Proxy는 MySQL, PostgreSQL, MariaDB 용 RDS를 지원하고 MySQL, PostgreSQL 용 Aurora를 지원

Amazon ElastiCache

 

ElastiCache

  • RDS와 동일한 방식으로 관계형 데이터베이스를 관리
  • 캐시 - 높은 성능과 낮은 지연 시간을 가진 인 메모리 데이터베이스
  • Redis, Memcached와 같은 캐시 기술을 관리
  • ElastiCache를 사용하여 읽기 집약적인 워크로드의 부하를 낮춤
  • Redis는 다중 AZ와 읽기 전용 복제본 기능으로 가용성이 높고 백업 및 복원이 가능, RDS와 유사
  • Memcached는 단순한 분산 캐시로 가용성이 높지 않고 백업과 복원 기능 없음

 

 

반응형

'자격증 > SAA-C03' 카테고리의 다른 글

[SAA-C03] Amazon S3 - 고급  (0) 2023.08.31
[SAA-C03] Amazon S3 - 기본  (0) 2023.08.30
[SAA-C03] 고가용성 및 확장성 - ELB, ASG  (0) 2023.08.28
[SAA-C03] EC2 인스턴스 스토리지  (0) 2023.08.25
[SAA-C03] EC2 - SAA Level  (0) 2023.08.24
profile

어쩌다 IT

@jwlish

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!