이 참조 아키텍처는 다음과 같은 사용 사례에 가장 적합합니다.
- 미션 크리티컬 애플리케이션을 위해 영역 보호뿐만 아니라 리전 보호도 필요합니다.
이 가용성 참조 아키텍처는 리전 내에서의 읽기 복제본을 활용해 HA를 제공하고, 여러 리전 간에는 DR을 제공합니다. 이러한 멀티 리전 배포는 광범위한 정전이나 대규모 자연재해와 같은 심각한 중단으로부터 보호합니다.
가용성 참조 아키텍처 고려사항
이 가용성 참조 아키텍처를 평가할 때는 다음 요소를 고려하세요.
- 리전 내 및 리전 간 네트워크 지연 시간과 대역폭
- 데이터베이스와 애플리케이션 서버의 지리적 배치
- 읽기 전용 워크로드를 복제본에 오프로드하는 전략
- 원격 DR 리전에서의 고가용성 배포
읽기 전용 부하 분산이 필요할 수 있습니다. 특히 리전 애플리케이션 서버를 사용하는 경우에는 응답 속도가 가장 빨라질 수 있도록 요청이 가장 가까운 데이터베이스로 전달되어야 합니다. 자세한 내용은 멀티 리전 기본 애플리케이션 부하 분산기로 라우팅 요청을 참조하세요.
트랜잭션 부하 또는 네트워크 용량으로 인해 복제 지연이 증가하지 않도록 보장하기 위해서는 교차 리전 복제에 대한 추가 모니터링이 필요할 수 있습니다.
DR이 성공적으로 수행되도록 하려면 철저한 DR 테스트를 수행해야 합니다. 특히 애플리케이션 서버와 데이터베이스 간에 지연 시간이 긴 네트워크 연결이 있는 경우 애플리케이션 기능과 처리량을 테스트하는 것이 중요합니다.
리전 내 HA 및 리전 간 DR 아키텍처
그림 1은 3개의 가용성 영역과 2개의 리전에 걸쳐 배치된 3개의 읽기 복제본 대기 데이터베이스를 포함하는 권장 HA 및 DR 구성을 보여줍니다.
그림 1. AlloyDB Omni의 백업 및 리전 간 고가용성 옵션
그림 1에서 보듯이, 동일 리전 내 로컬 복제본으로의 동기 스트리밍 복제는 고가용성을 제공하며, 지리적으로 분리된 원격 복제본으로의 비동기 스트리밍 복제는 리전별 재해 복구 보호를 제공합니다. 전체 구성에서 읽기-쓰기 작업은 기본 인스턴스만 수행할 수 있으며 다른 복제본은 읽기 쿼리만 처리할 수 있습니다.
기본에서 리전 내 복제본으로의 복제는 동기 모드로 구성해야 하며, 리전 간 복제본으로의 복제는 지연 시간이 기본 쓰기 성능에 영향을 주지 않도록 비동기 모드로 구성해야 합니다. 리전 장애가 발생할 경우 이 설정은 0이 아닌 RPO를 초래할 수 있습니다. 하지만 이 설정을 사용하면 장애 발생 시 더 빠른 RTO가 가능합니다. 이는 기본 데이터베이스가 원격 대기 데이터베이스의 확인을 기다릴 필요 없이 트랜잭션을 커밋할 수 있기 때문입니다.
또한 추가적인 리전 간 백업을 통해 읽기 복제본 데이터베이스에서 백업을 수행함으로써 기본 데이터베이스에서 수행한 백업에 중복성을 추가할 수도 있습니다.
읽기 복제본 백업
Kubernetes 배포를 사용하는 경우 대체 리전의 보조 배포는 자동으로 추가 백업과 함께 설정됩니다. 비Kubernetes 배포를 사용하는 경우 비즈니스 요구사항에 맞게 백업을 배포하도록 선택할 수 있습니다. 다음 사항을 고려하세요.
- 원격 백업이 리전 장애에 취약할 수 있는 경우 다른 리전에서 추가 백업을 시작해야 합니다.
- 백업 중복성이 필요한 경우 리전 읽기 복제본 백업을 수행해야 합니다.
다중 영역 가용성을 지원하는 읽기 복제본 위치
비Kubernetes 배포에서는 기본 장애가 발생할 경우 기본 역할을 맡을 특정 읽기 복제본을 선택할 수 있습니다. AlloyDB Omni Kubernetes 연산자는 영역 내 노드 배치와 포드를 어떤 노드에 배포할지 자동으로 처리합니다. 포드 선호도 및 톨러런스(tolerance)와 같이 배치에 영향을 주는 일부 구성 옵션은 AlloyDB Omni 연산자를 사용해 배포할 때 활용되는 데이터베이스 구성에서 사용할 수 있습니다.
HA 전용 아키텍처에서 HA 및 DR 아키텍처로 마이그레이션
비Kubernetes 배포의 경우 새 리전에 새로운 대기 인스턴스를 빌드하고 이 구성을 Patroni 클러스터 구성에 추가해야 합니다. Kubernetes 배포의 경우 새 리전에 보조 데이터베이스 클러스터라고 불리는 새로운 Kubernetes 배포를 빌드하고 데이터 센터 간 복제를 사용 설정해야 합니다.
구현
가용성 참조 아키텍처를 선택할 때는 다음 이점, 제한사항, 옵션을 고려하세요.
이점
- 영역 및 인스턴스 장애로부터 보호
- 리전 장애로부터 보호
- 데이터베이스에 리전 장애가 발생했을 때 RTO 감소
제한사항
- 동기식 복제를 사용하면 리전 복구 시 RPO를 줄일 수 있지만 이 접근 방식은 트랜잭션 성능에 추가 지연 시간을 초래합니다. 따라서 DR 및 원격 리전 복제에는 비동기 복제만 사용하는 것이 좋습니다.
- 동기 모드에서 PostgreSQL WAL 스트리밍을 구성하면 정상 작동 또는 일반적인 장애 조치 중에 데이터 손실이 전혀 발생하지 않습니다(
RPO=0
). 하지만 이 접근 방식은 모든 대기 인스턴스가 손실되거나 기본 인스턴스에서 연결할 수 없게 된 후 기본 인스턴스가 즉시 다시 시작되는 등 특정 이중 장애 상황에서 데이터 손실을 방지하지는 않습니다.
데이터 보호 옵션
- 백업 및 복구 옵션의 표준 가용성 아키텍처
- 고가용성 옵션을 위한 향상된 가용성 아키텍처
다음 단계
- AlloyDB Omni 가용성 참조 아키텍처 개요
- AlloyDB Omni 표준 가용성
- AlloyDB Omni 향상된 가용성
- 데이터 센터 간 복제 작업
- 멀티 리전 기본 애플리케이션 부하 분산기로 라우팅 요청