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 shard de configuração, execute o comando listShards
no admin
banco de dados de dados enquanto estiver conectado a um e inspecione a saída de um documento em mongos
que _id
esteja definido como "config"
. Se a listShards
saída não contiver um documento em que _id
esteja definido como "config"
, o cluster não usará um fragmento de configuração.
O exemplo a seguir executa o comando listShards
e tenta localizar um documento em que _id
está definido como "config"
.
db.adminCommand({ listShards: 1 })["shards"].find(element => element._id === "config")
Neste exemplo, o documento retornado tem _id
definido como "config"
, o que confirma que esse cluster usa um shard de configuração.
{ _id: "config", host: "configRepl/localhost:27018", state: 1, topologyTime: Timestamp({ t: 1732218671, i: 13 }), replSetConfigVersion: Long('-1') }
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
.