MongoDB를 복제와 함께 사용하고 싶습니다. 나는 2 개 차 노드와 한 중재자로 VM을 생성 :중재인이있는 AZURE의 Mongodb Replicet
- 1 차
- 2 차
- 1 아비터
나는이 시스템이 어떻게 작동하는지 이해하려고 노력 중이 야, 그래서 나는이
1) 정보에 따르면 "복제본 집합에 짝수 개의 구성원이있는 경우 중재자를 추가하십시오."중재자를 추가했습니다. 하지만 제대로했는지 확실하지 않습니다. 이 짝수는 보조 또는 전체 회원 모두에게 적용됩니까?
2)이 중재자는 무엇을하고 있습니까? 사실 그 직업을 이해하지 못합니다.
3) 외부에서 연결하기 위해 각 VM마다 공용 IP 주소를 만들었습니다.
MongoDB를 : // 사용자 이름 : 암호 @의 vm0 : 27017, VM1 : 27017, VM2 : 27017/DBNAME replicaSet = XXX & readPreference = primaryPreferred
나는 성공적으로 연결 문자열을 사용, 내 응용 프로그램에서 연결이 연결 문자열에 중재자를 추가하지 않았지만 추가해야합니까?
4) 기본 시스템을 종료하면 보조 시스템 중 하나가 성공적으로 기본 시스템이됩니다. 이 경우 문제가 없습니다. 하지만 두 번째 기본 시스템을 종료하면 응용 프로그램에서 오류가 발생합니다. 두 번째 보조 노드가 기본 노드가되지 않습니다. 왜 이런 일이 발생합니까?
5) 모든 VM이 작동하지만 arbiter를 종료하면 응용 프로그램이 다시 오류를 발생시키고 db에 연결할 수 없습니다. 나는 중재자 기계에 무언가 잘못 될 경우를 생각하고 있고 유지 보수 또는 다른 문제로 인해 장래에 종료 될 수 있기 때문에 이것을 시도하고있다.
아마 중재자의 역할을 이해하지 못했을 수 있습니다. 나는 이것이 잘못된 것이라고 생각하지만 왜 보조 기계를 중재자로 변환하지 않는가? 그리고 왜 내가 중재자를 종료 할 때 전체 시스템이 작동하지 않습니까?
감사합니다.
이것은 프로그래밍 관련 질문이 아니라 MongoDB 문서 관련 질문입니다. 그리고 실제로 Azure (또는 bitnami)와는 아무 관계도 없습니다. 그에 따라 태그를 삭제했습니다. –