MongoDB 샤딩된 클러스터는 다음 컴포넌트로 구성됩니다.
mongos
를 사용한 라우팅:mongos
는 클라이언트 애플리케이션과 샤딩된 클러스터 간의 인터페이스를 제공하는 쿼리 라우터 역할을 합니다.config 서버: config 서버는 클러스터에 대한 메타데이터와 구성 설정을 저장합니다. config 서버는 복제본 세트(CSRS)로 배포되어야 합니다.
프로덕션 구성
프로덕션 클러스터에서는 데이터가 중복되고 시스템의 가용성이 높은지 확인하십시오. 프로덕션 샤딩 클러스터 배포의 경우 다음 사항을 고려하세요.
복제본 세트 배포
프로덕션 배포의 경우 최소 3개의 데이터 센터에 config 서버 및 샤드 복제본 세트를 배포하는 것이 좋습니다. 이 구성은 단일 데이터 센터 다운될 경우 고가용성 제공합니다.
샤드 개수
샤딩된 데이터를 배포하기 위해 최소 2개의 샤드가 필요합니다. 가까운 미래에 샤딩을 활성화할 계획이지만 배포 시에는 필요하지 않은 경우 단일 샤드로 샤딩된 클러스터가 유용할 수 있습니다.
mongos
수 및 분포
mongos
라우터는 여러 개의 mongos
인스턴스를 배포할 때 고가용성 및 확장성을 지원합니다. 프록시 또는 로드 밸런서가 애플리케이션과 mongos
라우터 사이에 있는 경우, 이를 클라이언트 선호도에 맞게 구성해야 합니다. 클라이언트 선호도는 단일 클라이언트의 모든 연결이 동일한 mongos
에 도달할 수 있도록 합니다. 샤드 수준의 고가용성을 위해서는 다음 중 하나를 수행해야 합니다.
mongos
인스턴스가 이미 실행 중인 동일한 하드웨어에mongos
인스턴스를 추가.애플리케이션 수준에서
mongos
라우터를 포함.
mongos
라우터는 config 서버와 자주 통신합니다. 라우터 수를 늘리면 성능이 저하될 수 있습니다. 성능이 저하되면 라우터 수를 줄이세요.
다음 다이어그램은 프로덕션에서 사용되는 일반적인 샤딩된 클러스터 아키텍처를 보여줍니다.

개발 구성
테스트 및 개발을 위해 최소한의 구성 요소로 샤딩된 클러스터를 배포할 수 있습니다. 이러한 비프로덕션 클러스터에는 다음과 같은 구성 요소가 있습니다.
다음 다이어그램은 개발용으로만 사용되는 샤딩된 클러스터 아키텍쳐를 보여줍니다.

경고
테스트 및 개발용으로만 테스트 클러스터 아키텍처를 사용하십시오.