리전 간 복제 정보

이 페이지에서는 Redis용 Memorystore 클러스터의 리전 간 복제에 대해 간략히 설명합니다.

리전 간 복제 관리 방법에 대한 안내는 리전 간 복제 사용을 참고하세요.

리전 간 복제를 사용하면 기본 클러스터에서 보조 클러스터를 만들어 여러 리전에서 클러스터를 읽을 수 있습니다. 보조 클러스터는 리전 중단 시 재해 복구 시나리오를 위한 중복성도 제공합니다.

이 페이지에서 다루는 주요 개념은 다음과 같습니다.

  • 기본 클러스터: 단일 리전의 읽기-쓰기 클러스터입니다.
  • 보조 클러스터: 기본 클러스터에서 비동기식으로 복제하는 읽기 전용 클러스터입니다. 보조 클러스터 승격 및 분리에 관한 자세한 내용은 리전 간 복제 관리 방법에 나오는 분리전환 작업을 참고하세요.
  • 리플리케이터 노드: 기본 클러스터의 샤드에 있는 노드로, 보조 클러스터의 팔로어 노드에 복제됩니다. 샤드의 기본 노드 또는 복제본 노드는 리플리케이터 역할을 할 수 있습니다.
  • 팔로어 노드: 기본 클러스터의 리플리케이터 노드에서 복제하는 보조 클러스터의 노드입니다. 보조 클러스터의 기본 노드만 팔로어 역할을 가질 수 있습니다.
  • 샤드 수 및 슬롯 할당: 기본 클러스터와 보조 클러스터의 샤드 수와 슬롯 할당이 동일합니다.

이점

Memorystore for Redis 클러스터의 리전 간 복제 이점은 다음과 같습니다.

  • 재해 복구: 기본 클러스터의 리전을 사용할 수 없게 되면 다른 리전의 보조 클러스터로 분리하거나 전환하여 읽기 및 쓰기 요청을 처리할 수 있습니다. 보조 클러스터는 전환 또는 분리 명령어를 실행하지 않고 읽기 요청을 처리합니다.
  • 지리적으로 분산된 데이터: 데이터를 지리적으로 분산하면 데이터가 사용자와 더 가까워져 읽기 지연 시간이 줄어듭니다.
  • 읽기 트래픽의 지리적 부하 분산: 한 리전의 연결이 느리거나 과부하 상태일 경우 트래픽을 다른 리전으로 라우팅할 수 있습니다.

기능 동작

이 섹션에서는 리전 간 복제 기능의 중요한 동작을 설명합니다.

  • 클러스터 용량 확장: 기본 클러스터의 용량을 확장하면 Memorystore for Redis Cluster가 기본 클러스터에 맞게 보조 클러스터를 자동으로 확장합니다.
  • 복제본 수 확장: 워크로드 요구사항에 따라 기본 클러스터와 보조 클러스터의 복제본 수를 독립적으로 확장할 수 있습니다. 복제본 수 업데이트는 로컬에서만 적용되며 클러스터의 리전 간 복제 컬렉션 내 다른 클러스터로 전파되지 않습니다.
  • 잠재적 장애 발생 시 전환: 장애로 인해 기본 클러스터를 사용할 수 없는 경우에도 전환을 수행하여 보조 클러스터를 승격할 수 있습니다. 서비스 중단이 해결되면 사용할 수 없는 기본 클러스터가 보조 클러스터가 됩니다.
  • 온라인 보조 클러스터 만들기: 기본 클러스터에 보조 클러스터를 추가할 때 기본 클러스터는 온라인 상태로 유지됩니다. Redis용 Memorystore 클러스터가 보조 클러스터를 만드는 동안 기본 클러스터는 요청을 처리하고 데이터를 복제합니다.
  • 보조 클러스터 만들기: 보조 클러스터는 최대 2개까지 만들 수 있습니다. 이러한 인스턴스는 서로 동일한 리전에 있거나 서로 다른 리전에 있을 수 있습니다. 기존 클러스터를 보조 클러스터로 만들 수 없습니다. 새 클러스터만 보조 클러스터로 추가할 수 있습니다.
  • 설정 동기화: Memorystore for Redis Cluster는 기본 클러스터와 보조 클러스터 간에 대부분의 클러스터 설정을 자동으로 동기화합니다. 이러한 설정에 대한 자세한 내용은 클러스터 설정을 참고하세요.
  • 가격 책정: Memorystore for Redis Cluster는 리전 간 복제에 대해 Memorystore for Redis Cluster에서 프로비저닝하는 보조 클러스터에 리전 간 복제를 사용하는 고객에게 요금을 청구합니다. Redis용 Memorystore 클러스터가 보조 클러스터에 배포하는 각 노드와 복제본에 대해 다른 기본 클러스터와 동일한 요금이 청구됩니다. 또한 서로 다른 리전의 클러스터 간에 데이터를 전송하면 네트워킹 요금이 발생합니다.
  • 유지보수 업데이트 실행: 리전 간 복제와의 호환성을 보장하기 위해 보조 클러스터를 만드는 동안 기본 클러스터에 유지보수 업데이트가 적용될 수 있습니다. 기본 클러스터가 필요한 소프트웨어 버전을 실행하지 않으면 이 업데이트가 발생합니다. 업데이트 프로세스로 인해 보조 클러스터를 만들 때 추가 지연 시간이 발생할 수 있습니다. 자세한 내용은 유지보수 정보를 참고하세요.

리전 간 복제 관리 방법

리전 간 복제에는 다음 작업이 포함됩니다.

  • 보조 클러스터 만들기: 기본 클러스터에서 데이터를 지속적으로 복제하는 보조 클러스터를 만듭니다.
  • 보조 클러스터 보기: 복제 그룹의 기본 클러스터 이름 및 기타 보조 클러스터를 비롯한 보조 클러스터에 관한 정보를 봅니다.
  • 보조 클러스터 분리: 보조 클러스터 분리는 보조 클러스터를 기본 클러스터에서 분리하는 작업입니다. 이렇게 하면 읽기와 쓰기 모두를 허용하는 완전히 작동하는 독립적인 클러스터가 됩니다. 분리 작업 후 보조 클러스터는 이전에 연결되었던 기본 클러스터의 데이터를 더 이상 복제하지 않습니다. 원래 기본 클러스터와 새로 분리된 클러스터 (이전 보조 클러스터)는 서로 관련이 없는 독립 클러스터로 작동합니다.

    다음과 같은 이유로 보조 클러스터를 분리합니다.

    • 리전 마이그레이션: 기본 리전에서 다른 리전으로 Memorystore for Redis Cluster 리소스의 계획된 마이그레이션을 수행합니다.
    • 재해 복구: 기본 리전의 리소스를 사용할 수 없는 경우 보조 리전에서 Redis용 Memorystore 클러스터 리소스를 신속하게 활성화합니다. 보조 클러스터가 기본 클러스터와 완전히 동기화되지 않으면 일부 데이터가 손실될 수 있습니다.
  • 클러스터 전환: 전환을 실행하여 기본 클러스터와 보조 클러스터의 역할을 반대로 지정합니다. 다음과 같은 이유로 전환을 실행할 수 있습니다.

    • 재해 복구 설정 테스트
    • 실제 재해 복구 시나리오 중에 전환
    • 워크로드 마이그레이션 실행

    전환을 완료하면 Redis용 Memorystore 클러스터에서 복제 방향을 반대로 전환합니다. 이제 이전 보조 클러스터는 읽기와 쓰기를 모두 수락할 수 있으며 이전 기본 클러스터는 읽기 전용으로 전환됩니다.

리전 간 복제의 아키텍처 예시

이 다이어그램은 us-east1 리전의 기본 클러스터와 us-west1asia-east1 리전의 보조 클러스터를 보여줍니다. 복제 방향은 항상 기본 클러스터에서 보조 클러스터로 향합니다 (이 예에서는 us-east1 리전에서 다른 리전으로).

이 다이어그램에는 모든 리전에 동일한 수의 복제본이 표시되어 있지만 리전 간 복제를 사용하면 요구사항에 따라 다양한 수의 복제본을 사용할 수 있습니다.

이미지

클러스터 설정

이 섹션에서는 리전 간 복제를 사용하는 기본 클러스터와 보조 클러스터에 필요한 설정, 복사되는 설정, 재정의되는 설정을 설명합니다. 또한 기본 클러스터에서 구성하는 설정과 로컬로 구성하는 설정을 설명합니다.

보조 클러스터를 만드는 데 필요한 매개변수

보조 클러스터를 만들려면 다음 매개변수의 값을 설정해야 합니다.

  • Google Cloud project: 기본 클러스터가 있고 보조 클러스터를 만드는 프로젝트입니다.
  • 리전: 보조 클러스터를 배치할 리전입니다.
  • Private Service Connect 구성: 보조 클러스터의 네트워크 설정입니다.
  • 기본 클러스터: 보조 클러스터를 만들 때 기본 클러스터를 표시해야 합니다. 보조 클러스터가 아닌 클러스터는 기본 클러스터로 사용할 수 있습니다. 기본 클러스터가 없으면 만듭니다.

보조 클러스터가 기본 클러스터에서 복사하는 설정

보조 클러스터를 만들면 이 클러스터는 기본 클러스터에서 다음 설정을 복사합니다.

기본 설정 재정의

보조 클러스터를 만들 때 다음 설정을 사용하여 기본 설정을 재정의할 수 있습니다.

클러스터 설정 업데이트

Redis용 Memorystore 클러스터에서 클러스터 설정을 업데이트할 때 기본 클러스터에서만 일부 설정을 변경할 수 있습니다. Memorystore for Redis Cluster는 이러한 변경사항을 보조 클러스터에 자동으로 동기화합니다.

기본 클러스터와 보조 클러스터의 다른 설정은 독립적으로 변경할 수 있습니다. Redis용 Memorystore 클러스터는 이러한 변경사항을 로컬에만 적용하며 다른 클러스터와 동기화하지 않습니다.

기본 클러스터에서 설정 구성

기본 클러스터에서 다음 설정을 변경해야 합니다. Memorystore for Redis Cluster는 이러한 변경사항을 보조 클러스터와 자동으로 동기화합니다.

로컬 설정 구성

다음 설정을 로컬로 구성합니다.

기본 클러스터와 보조 클러스터 전환 권장사항

전환을 수행할 때는 이 섹션의 안내를 따르는 것이 좋습니다. 이렇게 하면 애플리케이션이 쓰기를 추적하고 쓰기를 적절한 클러스터로 전송할 수 있습니다.

  1. 애플리케이션에서 기본 클러스터에 쓰지 못하도록 합니다.
  2. 승격할 보조 클러스터가 여러 개인 경우 기본 클러스터로 승격할 보조 클러스터를 결정합니다. 다음 요소는 승격할 보조 클러스터를 결정하는 데 도움이 됩니다.

    • 애플리케이션이 클러스터에 얼마나 가까운지 이는 쓰기 지연 시간에 영향을 줄 수 있습니다.
    • 데이터 측면에서 가장 많이 따라잡은 보조 클러스터입니다.
    • 설정 측면에서 기본 클러스터와 가장 가까운 보조 클러스터
  3. 보조 클러스터에서 전환 실행

  4. 전환 작업이 완료될 때까지 기다립니다.

  5. 2단계에서 선택한 새로 승격된 클러스터에 쓰기를 전송하도록 애플리케이션을 업데이트합니다.