Menu Docs
Página inicial do Docs
/ /
MongoDB CLI
/

Arquivo de configuração do cluster

Nesta página

  • Visão geral
  • Propriedades de configuração
  • Arquivo de configuração de amostra

O comando mongocli requer definições de configuração de cluster para criar ou atualizar um cluster do MongoDB Cloud Manager ou do MongoDB Ops Manager . As propriedades de configuração podem ser fornecidas por meio de um arquivo .yaml ou .json . As seções a seguir descrevem as Propriedades de configuração necessárias para criar ou atualizar um cluster e fornecem um arquivo de configuração de amostra que você pode copiar e modificar.

As seções a seguir contêm:

  • Propriedade de configuração em todo o cluster

  • propriedade de configuração do membro do conjunto de réplicas

  • Propriedades de configuração do cluster fragmentado

O arquivo de configuração para criar ou atualizar um cluster do MongoDB Cloud Manager ou do MongoDB Ops Manager deve conter as seguintes configurações em todo o cluster:

Campo
Tipo
Descrição
name
string
Nome do cluster.
version
string
Versão do processo mongod a ser implantado.
featureCompatibilityVersion
string
processes
Array de objetos
Necessário para conjuntos de réplicas. Um array de objetos contendo configurações para cada processo do mongod . Cada mongod tem configurações de membro do conjunto de réplicas.
shards
Array de objetos
Necessário para clusters fragmentados. Uma array de objetos contendo configurações para cada shard.
config
objeto
Necessário para clusters fragmentados. Objeto que contém seu conjunto de réplicas do servidor de configuração.
mongos
Array de objetos
Necessário para clusters fragmentados. Uma array de objetos contendo configurações para cada instância mongos .

O arquivo de configuração para criar ou atualizar um cluster do MongoDB Cloud Manager ou do MongoDB Ops Manager pode conter as seguintes configurações para cada membro do conjunto de réplicas:

Campo
Tipo
Descrição
Obrigatório?
auditLogDestination
string

Configuração que habilita a auditoria e especifica para onde enviar todos os eventos de auditoria. O MongoDB CLI aceita os seguintes valores:

  • syslog

    Envie os eventos de auditoria para syslog no formato JSON.

  • console

    Envie os eventos de auditoria para stdout no formato JSON.

  • file

    Envie os eventos de auditoria para o arquivo especificado na configuração auditLogPath no formato especificado na configuração auditLogFormat .

Esta configuração corresponde à opção de arquivo de configuração auditLog.destination .

no
auditLogFilter
string

A configuração que filtra quais eventos são auditados. O filtro limita os resultados para corresponder ao query que você especificar.

Para saber mais sobre como criar filtros, consulte Configurar filtros de auditoria.

Esta configuração corresponde à opção de arquivo de configuração auditLog.filter .

no
auditLogFormat
string

Formato do arquivo de saída para auditoria se auditLogDestination estiver definido como file.

O MongoDB CLI aceita os seguintes valores:

  • JSON

    Envie os eventos de auditoria no formato JSON para o arquivo especificado na configuração auditLogPath .

  • BSON

    Envie os eventos de auditoria no formato binário BSON para o arquivo especificado na configuração auditLogPath .

Esta configuração corresponde à opção de arquivo de configuração auditLog.format .

no
auditLogPath
string

Arquivo de saída para auditoria se auditLogDestination tiver um valor de file. A opção auditLogPath pode levar um nome de caminho absoluto ou relativo.

Esta configuração corresponde à opção de arquivo de configuração auditLog.path .

no
bindIp
string

Nomes de host e/ou endereços IP e/ou caminhos de soquete de domínio Unix completos nos quais mongos ou mongod devem escutar conexões de cliente . Você pode anexar mongos ou mongod a qualquer interface. Para vincular a vários endereços, insira uma lista de valores separados por vírgula.

Esta configuração corresponde à opção de arquivo de configuração net.bindIp .

no
bindIpAll
booleano

Sinalizador que indica se a instância mongos ou mongod se vincula a todos os endereços IPv4 (por exemplo, 0.0.0.0). Se ipv6 estiver definido como true, bindIpAll também se vinculará a endereços IPv6 (por exemplo, :: ). O MongoDB CLI aceita os seguintes valores: true ou false.

Esta configuração corresponde à opção de arquivo de configuração net.bindIpAll .

no
buildIndexes
booleano

Sinalizador que indica se o mongod deve ser direcionado para criar índices. O MongoDB CLI aceita os seguintes valores: true ou false.

Esta configuração corresponde à opção de configuração do conjunto de réplicas buildIndexes .

no
dbPath
string
Diretório onde a instância do mongod armazena seus dados. Isso não pode ser modificado após a implementação.
sim
delay
int

Número de segundos atrás do membro primário que este membro deve atrasar.

Esta configuração corresponde à opção de configuração do conjunto de réplicas slaveDelay .

no
directoryPerDB
booleano

Sinalizador que indica se o MongoDB deve usar um diretório separado para armazenar dados para cada banco de dados. Os diretórios estão sob o diretório storage.dbPath e cada nome de subdiretório corresponde ao nome do banco de dados.

Por padrão, directoryPerDB é false.

Esta configuração corresponde à opção de configuração do conjunto de réplicas do storage.directoryPerDB mongod .

no
enableMajorityReadConcern
booleano

Sinalizador que indica se a read concern "majority" deve ou não ser ativada. Se ativado, o read concern "majority" garante que a leitura de dados tenha sido reconhecida pela maioria dos membros do conjunto de réplicas para operações de leitura não associadas a transações multidocumento.

Por padrão, enableMajorityReadConcern é true.

Esta configuração corresponde ao replication.enableMajorityReadConcern opção de configuração do conjunto de réplicas.

no
hostname
string
Nome do host a ser adicionado ao conjunto de réplicas. Este é o host no qual o Ops Manager implementa o processo do mongod .
sim
inMemory.engineConfig. inMemorySizeGB
float

Quantidade máxima de memória para alocar dados do mecanismo de armazenamento in-memory , incluindo índices, oplog se o mongod fizer parte do conjunto de réplicas, conjunto de réplicas ou metadados de cluster fragmentado , etc.

O valor pode variar de 256 MB a 10 TB. Por padrão, o storage engine in-memory usa 50% da RAM física menos 1 GB.

Isso está disponível apenas para o MongoDB Enterprise .

Esta configuração corresponde à opção de configuração do conjunto de réplicas do inMemorySizeGB mongod .

no
ipv6
booleano

Sinalizador que indica se a implantação suporta IPv6. O MongoDB CLI aceita os seguintes valores: true ou false.

Esta configuração corresponde à opção de arquivo de configuração net.ipv6 .

no
logDestination
string

Destino para o qual o MongoDB envia toda a saída de log. O MongoDB CLI aceita os seguintes valores: file ou syslog. Ao especificar file, você também deverá especificar logPath.

Se você não especificar logDestination, o MongoDB enviará todos os resultados de log para saída padrão.

Esta configuração corresponde à opção de arquivo de configuração systemLog.destination .

no
logPath
string
Localização e nome do arquivo de log do processo mongod no host.
sim
oplogSizeMB
inteiro

Tamanho máximo em megabytes para o oplog de replicação .

Esta configuração corresponde à opção de configuração do conjunto de réplicas replication.oplogSizeMB .

no
port
inteiro
Porta para o membro do conjunto de réplicas. O processo mongod deve ter acesso exclusivo à porta especificada.
sim
priority
inteiro

Prioridade do membro do conjunto de réplicas durante as eleições. O valor pode ser:

  • 0

  • 1

Membros sem direito a voto devem ter uma prioridade de 0. Os membros do conjunto de réplicas com prioridade de 0 não podem se tornar os primários e não podem trigger eleição.

sim
tls.CAFile
string

.pem que contém a cadeia de certificados raiz da Autoridade de Certificação. Especifique o nome do arquivo .pem usando caminhos relativos ou absolutos.

Essa configuração corresponde à opção de configuração do conjunto de réplicas net.tls.CAFile mongod .

no
tls. certificateKeyFile
string

.pem que contém o certificado e a chave TLS.

tls.certificateKeyFile e tls.certificateSelector são mutuamente exclusivos. Você só pode especificar uma.

Esta configuração corresponde ao net.tls.certificateKeyFile mongod opção de configuração do conjunto de réplicas.

no
tls. certificateKeyFilePassword
string

Senha para descriptografar o arquivo da chave de certificado.

Utilize a opção tls.certificateKeyFilePassword somente se o arquivo da chave de certificado for codificado. Em todos os casos, o mongos ou mongod eliminará a senha de todos os registros e relatórios.

Esta configuração corresponde ao net.tls.certificateKeyFilePassword mongod opção de configuração do conjunto de réplicas.

no
tls.certificateSelector
string

Propriedade do certificado que o MongoDB Agent usa para selecionar um certificado correspondente do armazenamento de certificados do sistema operacional para usar para TLS/SSL.

O MongoDB CLI aceita um dos seguintes mapeamentos de valor-chave como um argumento de tls.certificateSelector:

Chave
Tipo de valor
Descrição
subject
string ASCII
O nome do assunto ou nome comum no certificado.
thumbprint
string hexadecimal

Uma sequência de bytes, expressa em hexadecimal usada para identificar uma chave pública pelo seu resumo SHA-1.

O thumbprint às vezes é denominado fingerprint.

tls.certificateKeyFile e tls.certificateSelector são mutuamente exclusivos. Você só pode especificar uma.

Esta configuração corresponde ao net.tls.certificateSelector mongod opção de configuração do conjunto de réplicas.

no
tls. clusterCertificateSelector
string

propriedade de certificado que o MongoDB Agent usa para selecionar um certificado correspondente do armazenamento de certificados do sistema operacional para usar para x interno. Autenticação de associação 509 .

O MongoDB CLI aceita um dos seguintes mapeamentos de valor-chave como um argumento de tls.clusterCertificateSelector:

Chave
Tipo de valor
Descrição
subject
string ASCII
O nome do assunto ou nome comum no certificado.
thumbprint
string hexadecimal

Uma sequência de bytes, expressa em hexadecimal usada para identificar uma chave pública pelo seu resumo SHA-1.

O thumbprint às vezes é denominado fingerprint.

tls.clusterCertificateSelector e tls.clusterFile são mutuamente exclusivos. Você só pode especificar uma.

Esta configuração corresponde ao net.tls.clustercertificateSelector mongod opção de configuração do conjunto de réplicas.

no
tls.clusterFile
string

.pem que contém o x. Arquivo de chave de certificado 509 para autenticação de associação para o cluster ou conjunto de réplicas.

tls.clusterCertificateSelector e tls.clusterFile são mutuamente exclusivos. Você só pode especificar uma.

Essa configuração corresponde à opção de configuração do conjunto de réplicas net.tls.clusterFile mongod .

no
tls.clusterPassword
string

A senha para descriptografar o arquivo de chave de certificado x.509 especificado com tls.clusterFile.

Utilize a opção tls.clusterPassword somente se o arquivo da chave de certificado for codificado. Em todos os casos, o mongos ou mongod eliminará a senha de todos os registros e relatórios.

Esta configuração corresponde ao net.tls.clusterPassword mongod opção de configuração do conjunto de réplicas.

no
tls.CRLFile
string

O arquivo .pem que contém a lista de revogação de certificado. Especifique o nome do arquivo .pem usando caminhos relativos ou absolutos.

Essa configuração corresponde à opção de configuração do conjunto de réplicas net.tls.CRLFile mongod .

no
tls.disabledProtocols
string

Protocolos ou versões sobre as quais um servidor MongoDB em execução com TLS recusa conexões de entrada.

Esta configuração corresponde ao net.tls.disabledProtocols mongod opção de configuração do conjunto de réplicas.

no
tls.FIPSMode
string

Ative ou desative o uso do modo FIPS da biblioteca TLS para o mongos ou mongod. Seu sistema deve ter uma biblioteca compatível com FIPS para usar essa opção.

Essa configuração corresponde à opção de configuração do conjunto de réplicas net.tls.FIPSMode mongod .

no
tls.mode
string

Habilita o TLS para todas as conexões de rede. O MongoDB CLI aceita os seguintes argumentos para esta configuração:

Valor
Descrição
disabled
O servidor não usa TLS.
allowTLS
As conexões entre servidores não usam TLS. Para conexões recebidas , o servidor aceita TLS e não TLS.
preferTLS
As conexões entre servidores usam TLS. Para conexões recebidas , o servidor aceita TLS e não TLS.
requireTLS
O servidor usa e aceita apenas conexões criptografadas TLS.

Esta configuração corresponde à opção de configuração do conjunto de réplicas net.tls.mode mongod .

no
tls.PEMKeyFile
string

.pem que contém o certificado e a chave TLS.

IMPORTANTE: esta configuração está obsoleta. Em vez disso, use tls.certificateKeyFile .

Essa configuração corresponde à opção de configuração do conjunto de réplicas net.ssl.PEMKeyFile mongod .

no
votes
inteiro

Número que indica se o membro do conjunto de réplicas vota na eleição. O MongoDB CLI aceita os seguintes valores:

  • 0 se o membro do conjunto de réplicas não puder votar

  • 1 se o membro do conjunto de réplicas puder votar

Para saber mais sobre votes, consulte votos.

sim
wiredTiger.engineConfig. cacheSizeGB
float

Tamanho máximo do cache interno que o WiredTiger usa para todos os dados.

O valor pode variar de 0.25 GB a 10000 GB. Por padrão, o tamanho do cache interno do WiredTiger é maior de:

  • 50% de (RAM - 1 GB) ou

  • 256 MB.

Evite aumentar o tamanho do cache interno do WiredTiger acima do valor padrão.

Esta configuração corresponde à opção de configuração do conjunto de réplicas do journalCompressor mongod .

no
wiredTiger.engineConfig. journalCompressor
string

Tipo de compactação a ser usada para compactar os dados do diário do WiredTiger .

Os compactadores disponíveis são:

  • none

  • snappy

  • zlib

  • zstd (Disponível para clusters que executam o MongoDB 4.2 e posterior)

Por padrão, o WiredTiger usa snappy.

Esta configuração corresponde à opção de configuração do conjunto de réplicas do journalCompressor mongod .

no
wiredTiger.engineConfig. directoryForIndexes
booleano

Sinalizador que indica se o mongod armazena índices e coleções em subdiretórios separados sob os dados (ou seja, storage.dbPath) diretório. Especificamente, o mongod armazena os índices em um subdiretório denominado index e os dados de coleta em um subdiretório denominado collection.

Usando um link simbólico, você pode especificar uma localização diferente para os índices. Especificamente, quando a instância do mongod não estiver em execução, mova o subdiretório do index para um novo destino e crie um link simbólico denominado index no diretório de dados para o novo destino.

Por padrão, wiredTiger.engineConfig. directoryForIndexes é false .

Esta configuração corresponde à opção de configuração do conjunto de réplicas do directoryForIndexes mongod .

no
wiredTiger.engineConfig. maxCacheOverflowFileSizeGB
float

Essa configuração só é permitida para clusters que executam versões do MongoDB:

  • 4.0.12 a 4.0.x, e

  • 4.2.1 a 4.2.x.

Tamanho máximo (em GB) para o arquivo "lookaside (ou cache overflow)" chamado WiredTigerLAS.wt. O arquivo não existe mais a partir da versão 4.4 do MongoDB.

A configuração pode aceitar os seguintes valores:

Valor
Descrição
0
O valor padrão. Se definido como 0, o tamanho do arquivo não será limitado.
número >= 0.1
O tamanho máximo (em GB). Se o arquivo WiredTigerLAS.wt exceder esse tamanho, mongod será encerrado com uma declaração fatal. Você pode limpar o arquivo WiredTigerLAS.wt e reiniciar mongod.

Para alterar o tamanho máximo durante o tempo de execução, use o parâmetro wiredTigerMaxCacheOverflowSizeGB .

Esta configuração corresponde à opção de configuração do conjunto de réplicas do maxCacheOverflowSizeGB mongod .

no
wiredTiger.collectionConfig. blockCompressor
string

Compactação padrão para dados de collection. Você pode substituir isso por collection ao criar collections.

Os compactadores disponíveis são:

  • none

  • snappy

  • zlib

  • zstd (Disponível para clusters que executam o MongoDB 4.2 e posterior)

Por padrão, o compressor é snappy.

Esta configuração afeta todas as collection recém-criadas. Se você alterar o valor dessa configuração em um sistema MongoDB existente, todas as novas collection usarão o compressor especificado. Collection existentes continuam a usar o compressor que foi especificado quando foram criadas ou o compressor padrão naquele momento.

Esta configuração corresponde à opção de configuração do conjunto de réplicas do blockCompressor mongod .

no
wiredTiger.indexConfig. prefixCompression
booleano

Sinalizador que indica se a compactação de prefixo deve ser habilitada ou desabilitada para dados do índice.

Se true, a compactação de prefixo está habilitada para dados de índice. Se false, a compactação de prefixo estará desabilitada.

Por padrão, wiredTiger.indexConfig.prefixCompression é true.

Esta configuração afeta todos os índices criados. Se você alterar o valor dessa configuração em um sistema MongoDB existente, todos os novos índices usarão compactação de prefixo. Os índices existentes não são afetados.

Esta configuração corresponde à opção de configuração do conjunto de réplicas do prefixCompression mongod .

no

O arquivo de configuração para criar ou atualizar um cluster do MongoDB Cloud Manager ou MongoDB Ops Manager pode conter as seguintes configurações para cada shard:

Campo
Tipo
Descrição
Obrigatório?
name
string
Nome do shard.
sim
processes
Array de objetos
Um array de objetos contendo configurações para cada processo do mongod . Cada mongod tem configurações de membro do conjunto de réplicas.
sim
name: "myCluster"
version: 4.2.2
featureCompatibilityVersion: 4.2
processes:
- hostname: host0
dbPath: /data/cluster_2/rs1
logPath: /data/cluster_2/rs1/mongodb.log
priority: 1
votes: 1
port: 29010
- hostname: host1
dbPath: /data/cluster_2/rs2
logPath: /data/cluster_2/rs2/mongodb.log
priority: 1
votes: 1
port: 29020
- hostname: host2
dbPath: /data/cluster_2/rs3
logPath: /data/cluster_2/rs3/mongodb.log
priority: 1
votes: 1
port: 29030
{
"name": "myCluster",
"version": "4.2.2",
"featureCompatibilityVersion": "4.2",
"processes": [
{
"hostname": "host0",
"dbPath": "/data/cluster_3/rs1",
"logPath": "/data/cluster_3/rs1/mongodb.log",
"priority": 1,
"votes": 1,
"port": 30010
},
{
"hostname": "host1",
"dbPath": "/data/cluster_3/rs2",
"logPath": "/data/cluster_3/rs2/mongodb.log",
"priority": 1,
"votes": 1,
"port": 30020
},
{
"hostname": "host2",
"dbPath": "/data/cluster_3/rs3",
"logPath": "/data/cluster_3/rs3/mongodb.log",
"priority": 1,
"votes": 1,
"port": 30030
}
]
}
{
"name": "myShardedCluster",
"version": "4.2.2",
"featureCompatibilityVersion": "4.2",
"shards": [
{
"name": "myShard_0",
"processes": [
{
"dbPath": "/data/myCluster/myShard_0/27000",
"hostname": "host0.example",
"logPath": "/data/myCluster/myShard_0/27000/mongodb.log",
"port": 27000,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_0/27001",
"hostname": "host1.example",
"logPath": "/data/myCluster/myShard_0/27001/mongodb.log",
"port": 27001,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_0/27002",
"hostname": "host2.example",
"logPath": "/data/myCluster/myShard_0/27002/mongodb.log",
"port": 27002,
"version": "4.2.8-ent",
"votes": 1
}
]
},
{
"name": "myShard_1",
"processes": [
{
"dbPath": "/data/myCluster/myShard_1/28000",
"hostname": "host3.example",
"logPath": "/data/myCluster/myShard_1/28000/mongodb.log",
"port": 28000,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_1/28001",
"hostname": "host4.example",
"logPath": "/data/myCluster/myShard_1/28001/mongodb.log",
"port": 28001,
"votes": 1
},
{
"dbPath": "/data/myCluster/myShard_1/28002",
"hostname": "host5.example",
"logPath": "/data/myCluster/myShard_1/28002/mongodb.log",
"port": 28002,
"votes": 1
}
]
}
],
"config": {
"name": "configRS",
"processes": [
{
"dbPath": "/data/myCluster/configRS/29000",
"hostname": "host6.example",
"logPath": "/data/myCluster/configRS/29000/mongodb.log",
"port": 29000,
"votes": 1
},
{
"dbPath": "/data/myCluster/configRS/29001",
"hostname": "host7.example",
"logPath": "/data/myCluster/configRS/29001/mongodb.log",
"port": 29001,
"votes": 1
},
{
"dbPath": "/data/myCluster/configRS/29002",
"hostname": "host8.example",
"logPath": "/data/myCluster/configRS/29002/mongodb.log",
"port": 29002,
"votes": 1
}
]
},
"mongos": [
{
"hostname": "host9.example",
"logPath": "/data/myCluster/mongoses/27015/mongodb.log",
"port": 27015
}
]
}

Voltar

Referência