자체 관리형 체인 복제
이 페이지의 내용
버전 2.0 부터 MongoDB 는 체인 복제 를 지원합니다. 체인 복제 는 세컨더리 멤버가 프라이머리 가 아닌 다른 세컨더리 멤버로부터 복제할 때 발생합니다. 예를 예시 세컨더리 멤버가 핑 시간을 기준으로 복제 소스를 선택하고 가장 가까운 멤버가 다른 세컨더리 멤버인 경우가 이에 해당할 수 있습니다. 작업의 복제 소스는 데이터를 읽는 멤버입니다.
체인 복제는 프라이머리의 로드를 줄일 수 있습니다. 그러나 체인 복제는 네트워크 토폴로지에 따라 복제 지연이 증가할 수도 있습니다.
자체 관리 복제본 세트 settings.chainingAllowed
구성 의 설정을 사용하여 체인 복제 로 인해 지연이 발생하는 상황에 대해 체인 복제 를 비활성화할 수 있습니다.
MongoDB는 기본적으로 체인 복제를 활성화합니다. 이 절차에서는 이 기능을 비활성화하는 방법과 다시 활성화하는 방법을 설명합니다.
참고
체인 복제가 비활성화된 경우에도 replSetSyncFrom
을 사용하여 세컨더리가 다른 세컨더리로부터 복제하도록 지정할 수 있습니다. 그러나 해당 구성은 세컨더리가 동기화할 멤버를 다시 계산할 때까지만 지속됩니다.
체인 복제 비활성화
체인 복제 를 비활성화하려면 자체 settings.chainingAllowed
관리형 복제본 세트 구성 설정하다 필드 를 false
로 설정합니다.
다음 명령 순서를 사용하여 settings.chainingAllowed
를 false
로 설정할 수 있습니다.
구성 설정을
cfg
객체에 복사합니다.cfg = rs.config() 현재 구성 설정에
settings
내장된 문서가 포함되어 있는지 확인하세요. 포함된 경우 이 단계를 건너뛰세요.경고
구성 설정에
settings
내장된 문서가 포함되어 있는 경우 데이터 손실을 방지하려면 이 단계를 건너뛰세요.현재 구성 설정에
settings
내장 문서가 없는 경우 다음 명령을 실행하여 내장된 문서를 생성합니다.cfg.settings = { } 다음 명령 순서를 실행하여
settings.chainingAllowed
를false
로 설정합니다.cfg.settings.chainingAllowed = false rs.reconfig(cfg)
체인 복제 재활성화
체인 복제를 다시 활성화하려면 settings.chainingAllowed
를 true
로 설정합니다. 다음 명령 순서를 사용할 수 있습니다.
cfg = rs.config() cfg.settings.chainingAllowed = true rs.reconfig(cfg)