본문 바로가기
AWS

AWS Aurora DB Cluster 엔드포인트

by 하르싼 2023. 3. 8.
반응형

서버 클러스터란

각기 다른 서버들을 하나로 묶어서 하나의 시스템같이 동작하게 함으로써 클라이언트들에게 고가용성의 서비스를 제공하는 것을 말한다. 클러스터로 묶인 한 시스템에 장애가 발생하면, 정보의 제공 포인트는 클러스터로 묶인 다른 정상적인 서버로 이동한다. 서버클러스터는 사용자로 하여금 서버 기반 정보를 지속적이고 끊기지 않게 제공받을 수 있게 한다.

 

혼자 생각하고 있던게 AWS Aurora DB Cluster 에서는 하나의 엔드포인트만 존재해서 그 하나로 라이터/리더 인스턴스 와 리더 인스턴스를 분산 시켜주는 걸로 인지하고 있다가 아니라는걸 알게되어 포스팅

 

Amazon Aurora DB cluster

하나 이상의 DB 인스턴스와 이 DB 인스턴스의 데이터를 관리하는 클러스터 볼륨으로 구성됩니다. Aurora 클러스터 볼륨은 다중 가용 영역을 아우르는 가상 데이터베이스 스토리지 볼륨으로서, 각 가용 영역에는 DB 클러스터 데이터의 사본이 있습니다. Aurora DB 클러스터는 다음과 같이 두 가지 유형의 DB 인스턴스로 구성됩니다.

  • 기본 DB 인스턴스 – 읽기 및 쓰기 작업을 지원하고, 클러스터 볼륨의 모든 데이터 수정을 실행합니다. Aurora DB 클러스터마다 기본 DB 인스턴스가 하나씩 있습니다.
  • Aurora 복제본 – 기본 DB 인스턴스와 동일한 스토리지 볼륨에 연결되며 읽기 작업만 지원합니다. 각 Aurora DB 클러스터는 기본 DB 인스턴스에 더해 최대 15개까지 Aurora 복제본을 구성할 수 있습니다. Aurora 복제본을 별도의 가용 영역에 배치하여 고가용성을 유지합니다. Aurora는 기본 DB 인스턴스를 사용할 수 없는 경우 자동으로 Aurora 복제본으로 장애 조치합니다. Aurora 복제본에 대해 장애 조치 우선 순위를 지정할 수 있습니다. 또한 Aurora 복제본은 기본 DB 인스턴스에서 읽기 워크로드를 오프로드할 수 있습니다.

 

 

Database Replication 구성하는 이유

  • 트래픽이 급증할 경우 1대의 데이터베이스에 쓰기(insert, update, delete)와 읽기(select)를 모두 처리하게될 시 많은 부하가 발생되는데 이러한 부하를 분산하기위해 Primary에서는 쓰기를 Secondary에서는 읽기를 처리하게끔 구성한다.
  • Secondary를 N대로 구성하는 이유는 어플리케이션에서 데이터베이스에 액세스할 때 쓰기보단 읽기가 더 많이 발생되고 처리시간도 더 오래 걸릴 수 있기 때문이다.

 

반응형

댓글