독립형 자체 관리형 mongod를 복제본 세트로 변환
독립형 mongod
인스턴스는 테스트 및 개발에 유용합니다. 독립형 인스턴스는 단일 실패 지점이 될 수 있으므로 프로덕션 배포에는 적합하지 않습니다.클러스터 라고도 하는 복제본 세트 는 중복성과 가용성을 제공합니다. 항상 프로덕션 환경에서 복제본 세트를 사용하세요.
프로덕션에서 사용하려는 데이터 포함 독립형 서버가 있는 경우, 먼저 독립형 서버를 복제본 세트로 변환합니다.
중요
프로덕션에서 사용하기 위해 개발 서버를 복제본 세트로 변환하는 경우, 클러스터를 인터넷에 노출하기 전에 보안 체크리스트를 참조하세요.
시작하기 전에
독립형 인스턴스를 변환하기 전에 복제본 세트와 샤드 클러스터 중 어느 것이 워크로드에 더 적합한지 고려하세요.
샤드 클러스터는 특별한 종류의 클러스터입니다. 샤드 클러스터는 중복성과 가용성을 제공하며, 샤드 간에 데이터를 분산시킵니다. 샤드는 일반적으로 여러 서버에서 호스팅되며 수평 확장이 가능합니다.
절차
복제본 세트의 이름을 지정합니다.
명령줄에서 mongod
인스턴스를 구성하는 경우, --replSet
옵션을 사용하여 복제본 세트의 이름을 설정합니다.
일반적인 명령줄 호출에는 다음이 포함될 수 있습니다.
목적 | 옵션 |
---|---|
cluster 이름 | |
네트워크 세부 정보 | |
데이터 경로 | |
인증 세부 정보 |
배포서버 설정을 통해 예제 코드를 업데이트합니다.
mongod --replSet rs0 \ --port 27017 \ --dbpath /path/to/your/mongodb/dataDirectory \ --authenticationDatabase "admin" \ --username "adminUserName" \ --password
구성 파일을 사용하여 mongodb
를 시작하는 경우, 구성 파일에 replication
섹션을 추가하세요. replSetName
값을 편집하여 복제본 세트의 이름을 설정합니다.
replication: replSetName: rs0
복제본 세트를 초기화합니다.
복제본 세트를 초기화하려면 mongosh
를 사용하여 서버 인스턴스에 다시 연결합니다. 그런 다음 rs.initiate()
를 실행합니다.
rs.initiate()
복제본 세트는 한 번만 시작하면 됩니다.
복제본 세트 구성을 보려면 rs.conf()
를 사용합니다.
복제본 세트의 상태를 확인하려면 rs.status()
를 사용합니다.
복제본 세트에 노드를 추가합니다.
새 복제본 세트에는 단일 프라이머리 노드가 있습니다. 다음 단계는 복제본 세트에 새 노드를 추가하는 것입니다. 노드를 추가하기 전에 클러스터에 대한 설명서를 검토하세요.
노드를 추가할 준비가 되면 rs.add()
를 사용합니다.
애플리케이션 연결 문자열을 업데이트합니다.
mongod를 복제본 세트로 변환한 후에는 애플리케이션에서 사용하는 연결 문자열을 복제본 세트의 연결 문자열로 업데이트합니다. 그런 다음 애플리케이션을 다시 시작합니다.