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

Configure mongot

Use a YAML configuration file to configure mongot for MongoDB Search and Vector Search deployments. The following example shows the full configuration structure with all available settings:

syncSource:
replicaSet: <object>
hostAndPort: <string or list of strings>
x509: <object>
caFile: <string>
tlsCertificateKeyFile: <string>
tlsCertificateKeyFilePasswordFile: <string>
scramAuth: <object>
username: <string>
passwordFile: <string>
authSource: <string>
tls: <object>
enabled: <boolean>
caFile: <string>
tlsCertificateKeyFile: <string>
tlsCertificateKeyFilePasswordFile: <string>
router: <object>
hostAndPort: <string or list of strings>
x509: <object>
caFile: <string>
tlsCertificateKeyFile: <string>
tlsCertificateKeyFilePasswordFile: <string>
scramAuth: <object>
username: <string>
passwordFile: <string>
authSource: <string>
tls: <object>
enabled: <boolean>
caFile: <string>
tlsCertificateKeyFile: <string>
tlsCertificateKeyFilePasswordFile: <string>
replicationReader:
readPreference: <string>
tagSets: <string or list of strings>
storage: <object>
dataPath: <string>
server: <object>
grpc: <object>
address: <string>
tls: <object>
mode: <string>
certificateKeyFile: <string>
certificateKeyFilePasswordFile: <string>
caFile: <string>
name: <string>
metrics: <object>
enabled: <boolean>
address: <string>
healthCheck: <object>
address: <string>
logging: <object>
verbosity: <string>
logPath: <string>
embedding:
providerEndpoint: <string>
queryKeyFile: <string>
indexingKeyFile: <string>
isAutoEmbeddingViewWriter: <boolean>
advancedConfigs: <object>
indexing: <object>
lucene: <object>
refresh: <object>
intervalMs: <int>
mergePolicy: <object>
tiered: <object>
vectorMergePolicy: <object>
mergeBudgetMb: <int>
mergeScheduler: <object>
concurrent: <object>
maxThreadCount: <int>
fieldLimit: <int>
querying: <object>
lucene: <object>
maxClauseLimit: <int>
vectorFloorSegmentMB: <double>
replication: <object>
mongodb: <object>
numConcurrentInitialSyncs: <int>
numConcurrentChangeStreams: <int>
numIndexingThreads: <int>
numConcurrentSynonymSyncs: <int>
autoEmbedding: <object>
materializedView: <object>
numConcurrentChangeStreams: <int>
numIndexingThreads: <int>
numEmbeddingThreads: <int>
numConcurrentInitialSyncs: <int>
matViewWriterMaxConnections: <int>
mvWriteRateLimitRps: <int>
embeddingProviderRpsLimit: <int>
ftdc: <object>
enabled: <boolean>
directorySizeMb: <int>
fileSizeMb: <int>
collectionPeriodMillis: <int>

This section describes settings required for all mongot deployments. If you define only the required settings, mongot uses the defaults for all optional settings.

syncSource.replicaSet

유형: 객체

mongot에 대한 mongod 에 대한 복제 연결입니다.

syncSource.replicaSet.hostAndPort

Type: String or List of Strings

One or more host and port specifiers used to construct the seed list in the mongod connection string. Regardless of the number of specifiers provided, mongot establishes the connection in replica set mode, not standalone mode.

storage.dataPath

유형: 문자열

Path that mongot must use as a base path for storing index data and the local index catalog.

server

유형: 객체

mongot 쿼리 서버에 대한 설정입니다.

server.grpc

유형: 객체

Listen server settings for gRPC communication between mongot and mongod.

server.grpc.address

유형: 문자열

Address on which the gRPC listen server listens. Use the following format:

<host>:<port>

In self-managed deployments, this address must be reachable by the mongod processes that send search and index management traffic to mongot. Configure it so it matches the host and port that mongod uses for its mongotHost and searchIndexManagementHostAndPort settings.

For single-host development, localhost is the safest default. If mongod and mongot run on different hosts, set server.grpc.address to an interface that mongod can reach.

경고

시스템 토폴로지 에 따라 mongot 쿼리 서버 MongoDB 클러스터에서 액세스할 수 있는 인터페이스에 바인딩해야 할 수 있습니다. 0.0.0.0 IP 주소 에 대한 바인딩은 허용되지만 서버 모든 공용 네트워크에 노출되고 무단 액세스 의 위험이 있습니다.

보안을 강화하려면 localhost 또는 기타 신뢰할 수 있는 내부 주소와 같이 네트워크 계층에서 제어되고 보호되는 특정 인터페이스로 server.grpc.address 를 제한하는 것이 좋습니다.

This section describes optional and conditionally required settings for mongot. If you omit these settings, mongot uses the specified default value when applicable.

syncSource.replicaSet.x509

유형: 객체

Necessity: Required if you do not use syncSource.replicaSet.scramAuth

X.509 certificate settings for authenticating mongot with mongod.

syncSource.replicaSet.x509.caFile

유형: 문자열

Necessity: Required if you use syncSource.replicaSet.x509

Certificate Authority (CA) file that contains trusted certificates for verifying the certificate presented by mongod. The file must contain an X.509 certificate collection in PEM format.

syncSource.replicaSet.x509.tlsCertificateKeyFile

유형: 문자열

Necessity: Required if you use syncSource.replicaSet.x509

Path to the PEM file that contains the X.509 certificate and private key for authenticating mongot with mongod. Required when you configure syncSource.replicaSet.x509.

syncSource.replicaSet.x509.tlsCertificateKeyFilePasswordFile

유형: 문자열

필요성: 선택 사항

Path to the file that contains the password to decrypt the certificate key file specified in syncSource.replicaSet.x509.tlsCertificateKeyFile.

syncSource.replicaSet.scramAuth

유형: 객체

Necessity: Required if you do not use syncSource.replicaSet.x509

Settings for SCRAM authentication.

syncSource.replicaSet.scramAuth.username

유형: 문자열

필요성: 필수

The username to authenticate with.

syncSource.replicaSet.scramAuth.passwordFile

유형: 문자열

필요성: 필수

Path to a file that contains the password to authenticate with.

syncSource.replicaSet.scramAuth.authSource

유형: 문자열

필요성: 선택 사항

기본값: admin

Name of the database associated with the mongot authentication credentials.

syncSource.replicaSet.scramAuth.tls

유형: 객체

필요성: 선택 사항

기본값: false

Settings for TLS.

syncSource.replicaSet.scramAuth.tls.enabled

유형: 부울

Necessity: Required if you specify syncSource.replicaSet.scramAuth.tls

Flag to enable TLS authentication. Set to true to enable TLS authentication.

syncSource.replicaSet.scramAuth.tls.caFile

유형: 문자열

필요성: 선택 사항

Certificate Authority (CA) file that contains trusted certificates for verifying the certificate presented by mongod. The file must contain an X.509 certificate collection in PEM format.

syncSource.replicaSet.scramAuth.tls.tlsCertificateKeyFile

유형: 문자열

필요성: 선택 사항

Path to the PEM file that contains the X.509 certificate and private key for authenticating mongot with mongod.

syncSource.replicaSet.scramAuth.tls.tlsCertificateKeyFilePasswordFile

유형: 문자열

필요성: 선택 사항

Path to the file that contains the password to decrypt the certificate key file specified in syncSource.replicaSet.scramAuth.tls.tlsCertificateKeyFile.

syncSource.router

유형: 객체

Replication connections to mongos for mongot. If omitted, mongot assumes it is running in a non-sharded environment. Required for sharded cluster deployments.

syncSource.router.x509

유형: 객체

Necessity: Required if you do not use syncSource.router.scramAuth

X.509 certificate settings for authenticating mongot with mongos.

syncSource.router.x509.caFile

유형: 문자열

Necessity: Required if you use syncSource.router.x509

Certificate Authority (CA) file that contains trusted certificates for verifying the certificate presented by mongos. The file must contain an X.509 certificate collection in PEM format.

syncSource.router.x509.tlsCertificateKeyFile

유형: 문자열

Necessity: Required if you use syncSource.router.x509

Path to the PEM file that contains the X.509 certificate and private key for authenticating mongot with mongos. Required when you configure syncSource.router.x509.

syncSource.router.x509.tlsCertificateKeyFilePasswordFile

유형: 문자열

필요성: 선택 사항

Path to the file that contains the password to decrypt the certificate key file specified in syncSource.router.x509.tlsCertificateKeyFile.

syncSource.router.scramAuth

유형: 객체

Necessity: Required if you do not use syncSource.router.x509

Settings for SCRAM authentication.

syncSource.router.scramAuth.username

유형: 문자열

필요성: 필수

The username to authenticate with.

syncSource.router.scramAuth.passwordFile

유형: 문자열

필요성: 필수

Path to a file that contains the password to authenticate with.

syncSource.router.scramAuth.authSource

유형: 문자열

필요성: 선택 사항

mongot 인증 자격 증명 과 연결된 데이터베이스 의 이름입니다. 지정하지 않으면 authSource 의 기본값은 admin입니다.

syncSource.router.scramAuth.tls

유형: 객체

필요성: 선택 사항

기본값: false

Settings for TLS.

syncSource.router.scramAuth.tls.enabled

유형: 부울

Necessity: Required if you specify syncSource.router.scramAuth.tls

Flag to enable TLS authentication. Set to true to enable TLS authentication.

syncSource.router.scramAuth.tls.caFile

유형: 문자열

필요성: 선택 사항

Certificate Authority (CA) file that contains trusted certificates for verifying the certificate presented by mongos. The file must contain an X.509 certificate collection in PEM format.

syncSource.router.scramAuth.tls.tlsCertificateKeyFile

유형: 문자열

Necessity: Optional.

Path to the PEM file that contains the X.509 certificate and private key for authenticating mongot with mongos.

syncSource.router.scramAuth.tls.tlsCertificateKeyFilePasswordFile

유형: 문자열

Path to the file that contains the password to decrypt the certificate key file specified in syncSource.router.scramAuth.tls.tlsCertificateKeyFile.

syncSource.replicationReader

유형: 객체

Controls the read preference that mongot uses when reading from the replica set for replication.

To filter reads by replica set member tags, specify syncSource.replicationReader.tagSets.

syncSource.replicationReader.readPreference

유형: 문자열

기본값: secondaryPreferred

Read preference mongot uses for replication operations. You can specify the following values:

  • primary

  • primaryPreferred

  • secondary

  • secondaryPreferred

  • nearest

참고

인덱스 관리 명령은 이 설정과 관계없이 항상 primary 읽기 설정(read preference)을 사용합니다.

syncSource.replicationReader.tagSets

Type: Array

Array of tag sets that filter which replica set members receive replication reads. You cannot configure this setting if syncSource.replicationReader.readPreference is primary.

tagSets의 각 요소는 복제본 세트 멤버 태그와 일치하는 { name: <name>, value: <value> } 객체의 배열입니다. mongot는 태그 세트를 순서대로 평가하고 멤버와 일치하는 첫 번째 태그 세트를 사용합니다. 예시는 다음과 같습니다.

tagSets:
- [ { name: hostname, value: mongod1 },
{ name: region, value: us-east-1 } ]

The server.grpc.address setting is required. All other server.grpc settings are optional.

server.grpc.tls

유형: 객체

TLS configuration options for the gRPC listen server.

server.grpc.tls.mode

유형: 문자열

TLS mode for the gRPC server. Must be one of the following values:

  • "TLS"

  • "mTLS"

  • "disabled"

Required when you configure server.grpc.tls.

server.grpc.tls.certificateKeyFile

유형: 문자열

PEM file that contains a valid X.509 certificate for mongot using a PKCS#8 private key. mongod validates this certificate using a Certificate Authority (CA) file that you specify with the --tlsCAFile option. Required when server.grpc.tls.mode is "TLS" or "mTLS".

server.grpc.tls.certificateKeyFilePasswordFile

유형: 문자열

Path to the file that contains the password to decrypt the certificate key file specified in server.grpc.tls.certificateKeyFile.

server.grpc.tls.caFile

유형: 문자열

Certificate Authority (CA) file that contains trusted certificates for verifying the certificate presented by mongod. The file must contain an X.509 certificate collection in PEM format. Required when server.grpc.tls.mode is "mTLS".

server.name

유형: 문자열

User-provided name to identify a mongot instance. MongoDB uses server.name to identify mongot hosts across programmatic interfaces such as $listSearchIndexes. If you omit this setting, MongoDB generates a name automatically.

metrics

유형: 객체

mongot Prometheus 지표 엔드포인트 리스너에 대한 설정입니다.

metrics.enabled

유형: 부울

Flag that enables the Prometheus metrics endpoint. If you set this to false, MongoDB parses and validates the syntax of the other settings in the metrics block but does not start the Prometheus metrics listener. Required when you configure metrics.

metrics.address

유형: 문자열

기본값: localhost:9946

Socket address (IPv4 or IPv6) on which the Prometheus /metrics endpoint is exposed. Use the following format:

<host>:<port>
healthCheck

유형: 객체

Settings for the mongot health check endpoint. You cannot disable the health check endpoint, but you can configure its listen address.

healthCheck.address

유형: 문자열

기본값: localhost:8080

Address on which the health check listener listens. Use the following format:

<host>:<port>
logging

유형: 객체

로깅 옵션.

logging.verbosity

유형: 문자열

기본값: INFO

Verbosity of logging. The value must be a valid Logback log level.

logging.logPath

유형: 문자열

Path to a file where mongot writes logs using a Logback file appender. If you omit this setting, MongoDB does not create or configure a log file appender.

Configure the following settings to enable Automated Embedding.

참고

  • queryKeyFile and indexingKeyFile work as a pair. If you do not configure either file, mongot logs a warning and disables auto-embedding.

  • providerEndpoint is optional. When set, mongot applies it as an override for the configured embedding service endpoint.

  • isAutoEmbeddingViewWriter defaults to false if you omit it.

embedding.providerEndpoint

유형: 문자열

URL of the embedding provider endpoint. Optional override for the default embedding provider endpoint. Use this if you want mongot to send embedding requests to a specific provider endpoint instead of the default endpoint.

embedding.queryKeyFile

유형: 문자열

Path to the file that contains the key for the query-time embedding requests. Required for Automated Embedding.

embedding.indexingKeyFile

유형: 문자열

Path to the file that contains the key for the index-time embedding requests. Required for Automated Embedding.

embedding.isAutoEmbeddingViewWriter

유형: 부울

Flag to designate the leader mongot instance responsible for writing the automated embedding View. If true, this mongot instance acts as the writer for auto-embedding materialized-view updates.

For single-instance deployments, set this to true to enable the instance to write the automated embeddings View.

If you have multiple mongot instances for replica sets or sharded clusters, ensure that only one instance writes the automated embedding View to prevent duplication or conflicts. Set the value to:

  • true mongot 인스턴스 자동 임베딩 뷰 작성을 담당하는 리더로 지정합니다.

  • false to designate a mongot instance as a follower that does not write the auto-embeddings View.

advancedConfigs.autoEmbedding.materializedView.numConcurrentChangeStreams

유형: 정수

필요성: 선택 사항

Default: 2 times the host's CPU core count

Maximum number of steady-state change streams that the materialized view replication process can have outstanding at any one time. Must be a positive integer.

advancedConfigs.autoEmbedding.materializedView.numIndexingThreads

유형: 정수

필요성: 선택 사항

Default: The host's CPU core count, with a minimum of 1

Number of threads used to write embedding data into the materialized view's indexes. Must be a positive integer.

advancedConfigs.autoEmbedding.materializedView.numEmbeddingThreads

유형: 정수

필요성: 선택 사항

Default: The host's CPU core count, with a minimum of 1

Number of threads used to request embeddings from the embedding provider. Must be a positive integer.

advancedConfigs.autoEmbedding.materializedView.numConcurrentInitialSyncs

유형: 정수

필요성: 선택 사항

Default: Half of advancedConfigs.replication.mongodb.numConcurrentInitialSyncs. If the result is less than 1, then it uses 1. If you don not setn advancedConfigs.replication.mongodb.numConcurrentInitialSyncsn also, then it defaults to 1.

Maximum number of Automated Embedding indexes that can run their initial sync at the same time. Limiting concurrency reduces the load placed on the source mongod node and embedding provider during initial builds. Must be a positive integer.

advancedConfigs.autoEmbedding.materializedView.matViewWriterMaxConnections

유형: 정수

필요성: 선택 사항

기본값: 4

Maximum number of connections used to write to the materialized view collection. Must be a positive integer no greater than 16.

advancedConfigs.autoEmbedding.materializedView.mvWriteRateLimitRps

유형: 정수

필요성: 선택 사항

Default: No limit

Maximum number of bulk write commits per second to the materialized view collection on this node. Use this setting to limit write throughput to the source mongod node. Must be a positive integer.

advancedConfigs.autoEmbedding.materializedView.embeddingProviderRpsLimit

유형: 정수

필요성: 선택 사항

Default: No limit

Maximum number of requests per second this node can send to the embedding provider. This is a node-level limit. Must be a positive integer no greater than 100.

advancedConfigs.indexing.lucene.refresh.intervalMs

유형: 정수

필요성: 선택 사항

기본값: 1000

Interval, in milliseconds, that mongot waits before refreshing an index to make recently indexed changes visible to queries. Lower values reduce the delay between writing a document and being able to query it, at the cost of more frequent refresh work. Must be a positive integer.

advancedConfigs.indexing.lucene.mergePolicy.tiered.vectorMergePolicy.mergeBudgetMb

유형: 정수

필요성: 선택 사항

Default: 10% of the host's total memory

Memory budget, in megabytes, available to background merges of vector index segments. A larger budget allows more segments to be merged together at once, which can improve query performance but uses more memory during merges. Must be a positive integer.

advancedConfigs.indexing.lucene.mergeScheduler.concurrent.maxThreadCount

유형: 정수

필요성: 선택 사항

Default: The number of CPU cores available to the host

Maximum number of threads that can perform index segment merges concurrently. Higher values allow more merges to run in parallel. Must be a positive integer.

advancedConfigs.indexing.lucene.fieldLimit

유형: 정수

필요성: 선택 사항

Default: No limit

Maximum number of indexed fields allowed in an index. Use this setting to guard against unbounded field growth in indexes. Must be at least 3.

advancedConfigs.querying.lucene.maxClauseLimit

유형: 정수

필요성: 선택 사항

기본값: 1024

Maximum number of clauses a single query can expand to. mongot rejects queries that expand beyond this limit. Raising this limit allows larger queries but increases their memory and CPU cost. Must be a positive integer.

advancedConfigs.querying.lucene.vectorFloorSegmentMB

유형: double

필요성: 선택 사항

기본값: 64.0

Floor segment size, in megabytes, used by the merge policy for MongoDB Vector Search indexes. mongot merges segments smaller than advancedConfigs.querying.lucene.vectorFloorSegmentMB together more aggressively to reduce the total number of segments and improve query performance. Value must be a positive number.

advancedConfigs.replication.mongodb.numConcurrentInitialSyncs

유형: 정수

필요성: 선택 사항

Default: The lesser of the host's CPU core count and 2

Maximum number of indexes that can run their initial sync at the same time. Limiting concurrency reduces the load placed on the source mongod node while many indexes build simultaneously. Must be a positive integer.

advancedConfigs.replication.mongodb.numConcurrentChangeStreams

유형: 정수

필요성: 선택 사항

Default: 2 times the host's CPU core count

Maximum number of steady-state change streams that can have outstanding requests to the source mongod node at any one time. This setting controls how many indexes can pull updates concurrently after their initial sync completes. Must be a positive integer.

advancedConfigs.replication.mongodb.numIndexingThreads

유형: 정수

필요성: 선택 사항

Default: Half the host's CPU core count, with a minimum of 1

Number of threads used to write replicated documents and changes into indexes. Higher values can improve indexing throughput but might increase CPU and memory usage. Value must be a positive integer.

advancedConfigs.replication.mongodb.numConcurrentSynonymSyncs

유형: 정수

필요성: 선택 사항

기본값: 2

Maximum number of synonym source collections that can sync concurrently. Must be a positive integer.

advancedConfigs.ftdc.enabled

유형: 부울

필요성: 선택 사항

기본값: true

Flag that enables full-time diagnostic data capture (FTDC). FTDC diagnostic data collection is enabled by default. When false, mongot creates no FTDC reporter at bootstrap, so it captures no diagnostic data.

advancedConfigs.ftdc.directorySizeMb

유형: 정수

필요성: 선택 사항

기본값: 100

Maximum total size, in megabytes, of the FTDC archive directory. Must be at least 10 and greater than advancedConfigs.ftdc.fileSizeMb.

advancedConfigs.ftdc.fileSizeMb

유형: 정수

필요성: 선택 사항

기본값: 10

Maximum size, in megabytes, of an individual FTDC archive file. Must be at least 1 and less than advancedConfigs.ftdc.directorySizeMb.

advancedConfigs.ftdc.collectionPeriodMillis

유형: 정수

필요성: 선택 사항

기본값: 1000

Sampling interval, in milliseconds, that controls how often mongot collects metrics into FTDC. Must be at least 100.