Definição
Inicia a transição de um servidor de configuração incorporado para um servidor de configuração dedicado .
Quando o comando é executado, ele informa ao balanceador que você deseja iniciar a transição para um servidor de configuração dedicado. De forma assíncrona, o balanceador então começa a mover partes do fragmento para outros fragmentos no cluster. Depois que o balanceador terminar esse processo e você tiver migrado manualmente todas as coleções não fragmentadas para um fragmento diferente, poderá removê-la com segurança do cluster porque ela não contém mais dados. Consulte o comando moveCollection para mais informações.
Observação
Você deve habilitar o balanceador para startTransitionToDedicatedConfigServer mover partes do fragmento do servidor de configuração incorporado. Se você desabilitar o balanceador, nenhuma parte migrará e getTransitionToDedicatedConfigServerStatus continuará relatando o trabalho restante no fragmento.
O comando retorna um erro se a transição falhar, caso contrário, retorna ok.
Para interromper a transição em andamento de um servidor de configuração incorporado para um servidor de configuração dedicado, consulte o comando stopTransitionToDedicatedConfigServer.
Para mostrar o status da transição de um servidor de configuração incorporado para um servidor de configuração dedicado, consulte o comando getTransitionToDedicatedConfigServerStatus.
Para confirmar a transição de um servidor de configuração incorporado para um servidor de configuração dedicado, consulte o comando commitTransitionToDedicatedConfigServer.
Novidades na versão 8.3.
Compatibilidade
Esse comando está disponível em implantações hospedadas nos seguintes ambientes:
MongoDB Enterprise: a versão autogerenciada e baseada em assinatura do MongoDB
MongoDB Community: uma versão com código disponível, de uso gratuito e autogerenciada do MongoDB
Observação
Este comando não é suportado no MongoDB Atlas. Consulte Modificar seu cluster fragmentado do Atlas para drenar o servidor de configuração incorporado.
Sintaxe
O comando tem a seguinte sintaxe:
db.adminCommand( { startTransitionToDedicatedConfigServer: 1 } )
Comportamento
Requisitos de acesso
Se você tiver authorization habilitado, deverá ter a função clusterManager ou qualquer função que inclua a ação removeShard .
Nenhum backup de cluster durante a drenagem de fragmentos
Você não pode fazer backup do cluster ao iniciar a transição.
Requisitos de migração de reconhecimento de data center
Se o servidor de configuração incorporado também for o primário de um dos bancos de dados do cluster, você deverá mover manualmente os bancos de dados para um novo fragmento após migrar todos os dados do fragmento. Consulte o comando movePrimary e Remover fragmentos de um cluster fragmentado para obter mais informações.
Requisitos de migração de coleção
Se uma das collections não fragmentadas estiver no servidor de configuração incorporado, você deverá primeiro migrar a collection para um fragmento diferente.
Para migrar uma collection não fragmentada, consulte o comando moveCollection.
Balanceamento de partes
Quando você faz a transição para um servidor de configuração dedicado e o cluster tem uma distribuição desigual de chunks, o balanceador primeiro remove os chunks do fragmento de drenagem e, em seguida, equilibra a distribuição desigual de chunks restante.
Escreva preocupação
mongos converte a write concern do comando startTransitionToDedicatedConfigServer para "majority".
Fluxos de alterações
A drenagem do servidor de configuração incorporado pode fazer com que um cursor de fluxo de alteração aberto feche e o cursor de fluxo de alteração fechado pode não ser totalmente retomável.
Operações de DDL
Se você executar startTransitionToDedicatedConfigServer enquanto o cluster estiver executando uma operação DDL (operação que modifica uma collection como reshardCollection), a transição só será executada após a conclusão da operação DDL simultânea.
Exemplos
Para iniciar a transição, use o método db.adminCommand():
db.adminCommand( { startTransitionToDedicatedConfigServer: 1 } )