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