다음을 통해 공유


Azure Cosmos DB for MongoDB vCore의 지역 간 복제

적용 대상: MongoDB vCore

이 문서에서는 Azure Cosmos DB for MongoDB vCore에 대한 지역 간 DR(재해 복구)에 대해 설명합니다. 또한 읽기 작업 확장성을 위해 다른 지역의 클러스터 복제본에 대한 읽기 기능도 다룹니다.

지역 간 복제 기능을 사용하면 클러스터의 데이터를 다른 Azure 지역의 읽기 전용 클러스터로 복제할 수 있습니다. 복제본은 비동기 복제 기술로 업데이트됩니다. 기본 Azure Cosmos DB for MongoDB vCore 클러스터에 대해 선택한 다른 지역에 하나의 클러스터 복제본이 있을 수 있습니다. 드물게 지역 중단이 발생하는 경우 MongoDB 데이터베이스의 지속적인 작업을 위해 다른 지역의 클러스터 복제본을 새로운 읽기-쓰기 클러스터로 승격할 수 있습니다. 다른 지역의 클러스터 복제본이 새 기본 클러스터로 승격된 후에도 애플리케이션은 동일한 연결 문자열을 계속 사용할 수 있습니다.

복제본은 일반 클러스터와 유사하게 관리하는 새 클러스터입니다. 읽기 복제본의 경우, vCore 및 스토리지에 프로비저닝된 컴퓨팅에 대한 비용이 GiB/월 단위로 청구됩니다. 복제본 클러스터의 컴퓨팅 및 스토리지 비용은 만들어진 Azure 지역의 일반 클러스터 및 가격과 구조가 동일합니다.

클러스터 읽기 복제본을 사용한 재해 복구

지역 간 복제는 Azure BCDR(비즈니스 연속성 및 재해 복구) 전략의 몇 가지 중요한 요소 중 하나입니다. 지역 간 복제는 재해 복구 보호를 위해 다른 Azure 지역에서 동일한 애플리케이션 및 데이터를 비동기적으로 복제합니다. 모든 Azure 서비스가 자동으로 데이터를 복제하거나 실패한 지역에서 자동으로 대체되어 활성화된 다른 활성화된 지역으로 교차 복제되는 것은 아닙니다. Azure Cosmos DB for MongoDB vCore는 다른 지역에 클러스터 복제본을 만들고 기본 클러스터에 기록된 데이터가 해당 복제본에 자동으로 복제되도록 하는 옵션을 제공합니다. 주 지역에 중단이 발생한 경우 클러스터 복제본에 대한 대체를 수동으로 시작해야 합니다.

Azure Cosmos DB for MongoDB vCore 클러스터에서 지역 간 복제가 사용하도록 설정되면 각 분할된 데이터베이스가 다른 지역에 지속적으로 복제됩니다. 이 복제는 선택한 지역의 데이터 복제본을 유지합니다. 이러한 복제본은 드물게 주 지역이 중단되는 경우 재해 복구 계획의 일부로 사용할 수 있습니다. 복제는 비동기적이며, 기본 클러스터의 분할에 대한 쓰기 작업은 성공적인 쓰기 확인을 보내기 전에 해당 복제본의 분할에 대한 복제가 완료될 때까지 기다리지 않습니다. 비동기식 복제는 기본 클러스터에서 쓰기 작업의 대기 시간 증가를 방지하는 데 도움이 됩니다.

연속 쓰기, 클러스터 복제본에 대한 읽기 작업 및 연결 문자열

Azure Cosmos DB for MongoDB의 전역 읽기-쓰기 연결 문자열 쓰기를 활성 쓰기 지원 클러스터에 일관되게 전달합니다. 복제본 클러스터 승격을 시작할 때 지역 B의 복제본 클러스터는 쓰기 모드로 전환되고 지역 A의 원래 주 클러스터는 읽기 전용으로 전환됩니다. 승격하기 전에 전역 읽기-쓰기 연결 문자열 지역 A의 주 클러스터를 대상으로 한 다음 쓰기 책임을 가정할 때 지역 B를 가리키도록 업데이트합니다. 전역 읽기/쓰기 연결 문자열 사용하는 애플리케이션의 경우 승격 프로세스 전체에서 쓰기 작업이 원활하게 진행되어 중단 없는 데이터 흐름을 유지합니다.

복제본 클러스터를 읽기에도 사용할 수 있습니다. 이는 기본 클러스터에서 집약적인 읽기 작업을 오프로드하거나 복제 영역에 더 가까운 클라이언트에 대한 읽기 작업의 대기 시간을 줄이는 데 도움이 됩니다. 지역 간 복제를 사용하도록 설정하면 애플리케이션에서 복제본 클러스터 자체 연결 문자열 사용하여 클러스터 복제본에서 읽기를 수행할 수 있습니다. 기본 클러스터는 자체 자체 연결 문자열 사용하여 읽기 및 쓰기 작업에 사용할 수 있습니다.

전역 읽기-쓰기 연결 문자열 및 자체 연결 문자열 포함하여 Azure Cosmos DB for MongoDB(vCore) 클러스터를 연결 문자열 클러스터의 스크린샷

지역 간 복제를 사용하도록 설정하여 복제본을 만들면 기본 클러스터의 방화벽 규칙과 같은 네트워킹 설정을 상속하지 않습니다. 이러한 설정은 복제본에 대해 독립적으로 설정되어야 합니다. 복제본은 기본 클러스터에서 관리자 계정을 상속합니다. 사용자 계정은 기본 클러스터에서 관리되어야 합니다. 동일한 사용자 계정을 사용하여 기본 클러스터와 해당 복제본 클러스터에 연결할 수 있습니다.

복제본 클러스터 승격

지역 중단이 발생하면 쓰기가 가능하도록 다른 지역의 클러스터 복제본을 승격하여 재해 복구 작업을 수행할 수 있습니다. 복제본 승격 작업 중에는 다음 단계가 수행됩니다.

  1. 읽기 외에 지역 B의 복제본에 대한 쓰기도 사용하도록 설정됩니다. 이전 복제본은 새로운 읽기-쓰기 클러스터가 됩니다.
  2. 지역 B의 승격된 복제본 클러스터는 해당 연결 문자열 및 전역 읽기/쓰기 연결 문자열 사용하여 쓰기를 허용합니다.
  3. 지역 A의 클러스터는 읽기 전용으로 설정되고 연결 문자열을 유지합니다.

Important

복제는 비동기식이므로 지역 B의 클러스터 복제본이 승격될 때 지역 A에 있는 클러스터의 일부 데이터가 지역 B로 복제되지 않을 수 있습니다. 이 경우 승격하면 복제되지 않은 데이터가 두 클러스터 모두에 존재하지 않게 됩니다.