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

Converter um conjunto de réplicas em um cluster fragmentado com um servidor de configuração incorporado

Nesta página

  • Sobre esta tarefa
  • Passos
  • Saiba mais

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 metadadoscluster fragmentado . Um servidor de configuração que armazena dados de aplicação é chamado de shard de configuração ou servidor de configuração incorporado.

Converter seu conjunto de réplicas em um cluster fragmentado com um servidor de configuração incorporado pode reduzir:

  • O número de nós necessários em seu sistema.

  • complexidade para manter clusters de um fragmento.

Você não pode converter diretamente um conjunto de réplicas em um shard de configuração. Para converter um conjunto de réplicas em um servidor de configuração incorporado, você deve:

Se o controle de acesso estiver habilitado, o transitionFromDedicatedConfigServer comando exigirá a transitionFromDedicatedConfigServer ação de autorização para o cluster.

A função tem clusterManager a transitionFromDedicatedConfigServer ação de autorização e pode ser atribuída a um usuário.

O exemplo a seguir converte um conjunto de réplicas autogerenciado em um fragmento de configuração que contém dados de usuário pré-existentes do conjunto de réplicas.

1

Este tutorial pressupõe que você saiba como converter seu conjunto de réplicas cluster fragmentado. Para obter instruções completas, consulte Converter um conjunto de réplicas autogerenciadas em um cluster fragmentado.

2

Por exemplo, para se conectar à sua instância mongos em execução no host mongodb6.example.net como um usuário administrador chamado admin01:

mongosh "mongodb://admin01@mongodb6.example.net:27017"
3

Para configurar seu servidor de configuração dedicado para ser executado como um shard de configuração, execute o comando transitionFromDedicatedConfigServer do banco de banco de dados admin:

db.adminCommand( {
transitionFromDedicatedConfigServer: 1
} )
4

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')
}

Observação

Se o balanceador estiver em execução, ele migrará automaticamente os dados entre os fragmentos. Caso contrário, utilize os moveCollection comandos ou para distribuir manualmente seus dados.moveChunk

5

Para reduzir o cluster a um único fragmento após adicionar o fragmento de configuração, mova todas as coleções não fragmentadas para o fragmento de configuração usando o moveCollection comando e remova o primeiro fragmento no cluster com o removeShard comando. Esta etapa reduz seu cluster a um único fragmento de configuração.

Para obter instruções completas sobre como remover fragmentos em seu cluster, consulte Remover fragmentos de um cluster fragmentado.

Voltar

Fragmento de configuração