2017-12-27 2 views
0

현재이 질문에 어려움을 겪고 있습니다.두 데이터 센터간에 연결이 끊어졌습니다

저는 MongoDB 인스턴스가 있는데, 유럽 (주를 포함)과 미국의 두 데이터 센터를 통해 복제본으로 분할되어 있습니다. 각 데이터 센터에는 필요한 모든 구성 요소 (mongod, mongos, rcrs)가 들어 있습니다. 백엔드 및 프론트 엔드조차도 두 데이터 센터를 통해 분할됩니다.

유럽과 미국의 연결이 끊어진 경우 지금 어떻게됩니까? 우리의 mongo 인스턴스가 새로운 기본을 선출하고 자체적으로 계속 작동합니까? 그리고 이것이 사실이라면, 우리와 우리 사이의 연결이 고정되면 어떻게됩니까?

답변

1

복제 세트를 설정하는 방법은 매우 다릅니다. 연결이 끊어지면 먼저 과반수에 도달 할 수있는 데이터 센터가 예비 선출됩니다. 그 말은 미국의 데이터 센터에 2 명의 회원이 있고 3 명의 회원이 유럽에 있고 네트워크 결함 일 뿐이고 시스템이 실제로 다운되지 않는다고 가정하면 유럽 데이터 센터는 3 명의 회원을 보유하고 있으므로 대다수에 도달 할 수 있습니다. 남아있는 2 명의 위원이 다수를 가지지 않기 때문에 유럽에있을 수 있습니다. 미국에서 1 차가된다하더라도 그것이 다수에게 다가 갈 수 없다는 것을 알게 되 자마자 물러날 것입니다. 항상 복제본 세트가 항상 기본을 갖는 방식으로 파티션을 설계하는 것이 좋습니다.

전체 세트가 돌아 왔을 때 가장 새로운 데이터, 우선 순위, 숨겨진 멤버 등 많은 것들이 있습니다. 미국의 경우 우선 순위가 있지만 최신 데이터가 없으므로 즉시 기본이됩니다. 최신 레코드까지 동기화 한 후에 만 ​​기본 레코드가됩니다.

희망이 다소 도움이됩니다.

+0

나를위한 흥미로운 경우는 eu에 나머지 3 명의 회원이 있고 Google에 3 명의 회원이있는 경우입니다. 따라서 각자 스스로 새로운 기본을 선출 할 수 있습니다. 그런 다음 두 개의 파티션을 혼자서 사용할 수 있으며이 시간대에는 두 명의 마스터가 있습니다. – Philipp

+0

6 명의 회원은 대다수 4 명이 필요합니다. https://docs.mongodb.com/manual/core/replica-set-architectures/를 참조하십시오. 또한 회원 세트가 짝수 일 경우 선거 문제를 해결할 중재자가 필요합니다. 또한 최하위 시나리오를 선택하지 않고도 세트를 그대로 둘 수 있으며 세트 재구성을 고려해야 할 수도 있습니다. - https://docs.mongodb.com/manual/tutorial/reconfigure-replica-set-with-unavailable-members/를 참조하십시오. – Avij

관련 문제