AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

자체 관리형 세컨더리를 중재자로 전환

복제본 세트에 데이터를 더 이상 보유할 필요가 없지만 세트에서 프라이머리를 선택할 수 있도록 세트에 남아 있어야 하는 세컨더리가 있는 경우 이 튜토리얼의 두 절차 중 하나를 사용하여 세컨더리를 중재자로 변환할 수 있습니다. 두 절차는 운영상 동일합니다.

  1. 애플리케이션이 세컨더리에 직접 연결된 경우 MongoDB 쿼리가 세컨더리에 도달하지 않도록 애플리케이션을 수정합니다.

  2. 세컨더리를 종료합니다.

  3. 메서드를 호출하여 복제본 세트 에서 rs.remove() 세컨더리 를 제거합니다. 의 현재 프라이머리 에 연결된 상태에서 이 mongosh 작업을 수행합니다.

    rs.remove("<hostname><:port>")
  4. 에서 메서드를 호출하여 복제본 세트 더 rs.conf() mongosh 이상 세컨더리 포함되어 있지 않은지 확인합니다.

    rs.conf()
  5. 세컨더리 데이터 디렉터리를 아카이브 폴더로 옮깁니다. 예를 들면 다음과 같습니다.

    mv /data/db /data/db-old

    참고

    옵션

    대신 데이터를 삭제할 수 있습니다.

  6. mongod 인스턴스를 다시 시작할 때 가리킬 새 빈 데이터 디렉토리를 만듭니다. 이전 이름을 재사용할 수 있습니다. 예를 들면 다음과 같습니다.

    mkdir /data/db
  7. 포트 번호, 빈 데이터 디렉터리 및 복제본 세트를 지정하여 세컨더리 인스턴스에 대한 mongod 인스턴스를 재시작합니다. 이전에 사용한 것과 동일한 포트 번호를 사용할 수 있습니다. 다음과 유사한 명령을 실행합니다.

    경고

    인스턴스를 공개적으로 접근 가능한 IP 주소에 바인딩하기 전에 무단 접근으로부터 클러스터를 보호해야 합니다. 보안 권장 사항의 전체 목록은 자체 관리 배포서버에 대한 보안 검사 목록을 참조하세요. 최소한 인증을 활성화하고 네트워크 인프라를 강화하는 것을 고려합니다.

    mongod --port 27021 --dbpath /data/db --replSet rs --bind_ip localhost,<hostname(s)|ip address(es)>
  8. mongosh에서 메서드를 사용하여 세컨더리 를 중재자 rs.addArb() 로 변환합니다.

    rs.addArb("<hostname><:port>")
  9. mongosh에서 메서드를 rs.conf()호출하여 중재자 가 복제본 세트 에 속하는지 확인합니다.

    rs.conf()

    중재자 멤버에는 다음이 포함되어야 합니다.

    "arbiterOnly" : true
  1. 애플리케이션이 세컨더리 서버에 직접 연결하거나 세컨더리 서버를 참조하는 연결 문자열이 있는 경우 MongoDB 쿼리가 세컨더리 서버에 도달하지 않도록 애플리케이션을 수정합니다.

  2. 새 포트 번호와 함께 사용할 빈 데이터 디렉토리를 새로 생성합니다. 예를 들면 다음과 같습니다.

    mkdir /data/db-temp
  3. 새 데이터 디렉터리와 기존 복제본 세트를 지정하여 새 포트 번호에서 새 mongod 인스턴스를 시작합니다. 다음과 유사한 명령을 실행합니다.

    경고

    인스턴스를 공개적으로 접근 가능한 IP 주소에 바인딩하기 전에 무단 접근으로부터 클러스터를 보호해야 합니다. 보안 권장 사항의 전체 목록은 자체 관리 배포서버에 대한 보안 검사 목록을 참조하세요. 최소한 인증을 활성화하고 네트워크 인프라를 강화하는 것을 고려합니다.

    mongod --port 27021 --dbpath /data/db-temp --replSet rs --bind_ip localhost,<hostname(s)|ip address(es)>
  4. mongosh 현재 프라이머리 에 연결된 mongod 에서 메서드를 사용하여 새 인스턴스 중재자 로 변환합니다.rs.addArb()

    rs.addArb("<hostname><:port>")
  5. mongosh에서 rs.conf()메서드를 호출하여 중재자 복제본 세트 에 추가되었는지 확인합니다.

    rs.conf()

    중재자 멤버에는 다음이 포함되어야 합니다.

    "arbiterOnly" : true
  6. 세컨더리를 종료합니다.

  7. mongosh에서 rs.remove() 메서드를 호출하여 복제본 세트 에서 세컨더리를 제거합니다.

    rs.remove("<hostname><:port>")
  8. 에서 메서드를 호출하여 복제본 세트 더 이상 rs.conf() mongosh 이전 세컨더리 포함되어 있지 않은지 확인합니다.

    rs.conf()
  9. 세컨더리 데이터 디렉터리를 아카이브 폴더로 옮깁니다. 예를 들면 다음과 같습니다.

    mv /data/db /data/db-old

    참고

    옵션

    대신 데이터를 삭제할 수 있습니다.