Fragmento de configuração
Nesta página
A partir do MongoDB 8.0, você pode configurar um servidor de configuração de configuração para armazenar os dados do aplicação , além dos metadados usuais do cluster fragmentado . Um nó mongod
que fornece funcionalidade de servidor de servidor de configuração de shard é chamado de shard de configuração. Um nó do mongod
que executa como um --configsvr
autônomo sem funcionalidade de servidor de fragmento é chamado de servidor de configuração dedicado.
Um cluster fragmentado deve ter um servidor de configuração, mas pode ser um shard de configuração ( servidor de configuração incorporado) ou um servidor de configuração dedicado. Usar um shard de configuração reduz o número de nós necessários e pode simplificar seu sistema. Um cluster de shard de configuração também é chamado de cluster de servidor de configuração incorporado. Você não pode usar o mesmo servidor de configuração para vários clusters fragmentados.
Casos de uso
Considere usar um fragmento de configuração se o cluster tiver três ou menos fragmentos.
Se o seu aplicação tiver requisitos rigorosos de disponibilidade e resiliência, considere implementar um servidor de configuração dedicado. Um servidor de configuração dedicado oferece isolamento, recursos dedicados e desempenho consistente para operações críticas de cluster.
Você deve usar um servidor de configuração dedicado se satisfizer uma ou mais das seguintes condições:
Você planeja usar mais de três shards.
Você planeja usar coleções de séries temporais ou collections de Queryable Encryption .
Você planeja usar queryable backups (on-prem).
Comportamento
Em um cluster de servidor de configuração incorporado, um fragmento de configuração será usado para armazenar metadados do cluster e dados do usuário. Ajuda a reduzir a complexidade de um cluster fragmentado .
Você pode armazenar dados de collection fragmentados e não fragmentados em seu shard de configuração. Ele tem todas as propriedades de um shard , além de atuar como servidor de configuração.
Confirmar uso do Config Shard
Para confirmar que um cluster fragmentado usa um fragmento de configuração, execute o comando serverStatus
configServerInShardCache
e verifique o status:
db.adminCommand( { serverStatus: 1, } ).shardingStatistics.configServerInShardCache
true
Documento de identidade do Config Shard
Para identificar o servidor de configuração como um fragmento de configuração, inspecione o documento na coleção admin.system.version
. Neste exemplo, shardName
é definido como 'config'
:
{ _id: 'shardIdentity', shardName: 'config', clusterId: ObjectId("<objectID>"), configsvrConnectionString: '<config server replica set connection string>', }
O exemplo a seguir recupera um documento de identidade de fragmento de admin.system.version
no banco de dados admin:
use admin db.system.version.find()
Extração de saída:
{ _id: 'shardIdentity', shardName: 'config', clusterId: ObjectId("6441bdd6779584849dcac095"), configsvrConnectionString: 'configRepl/localhost:27007' }
Comandos
Para configurar um servidor de configuração dedicado para ser executado como um shard de configuração, execute o comando transitionFromDedicatedConfigServer
.
Para configurar um shard de configuração para ser executado como um servidor de configuração dedicado, execute o comando transitionToDedicatedConfigServer
.