Página inicial do Docs → Desenvolver aplicações → Manual do MongoDB
Faça upgrade para MongoDB Enterprise (cluster fragmentado)
O MongoDB Enterprise oferece várias funcionalidades não disponíveis no MongoDB Community Edition, como:
As etapas a seguir descrevem o procedimento para atualizar um cluster fragmentado do MongoDB Community Edition para o MongoDB Enterprise Edition. Por exemplo, as etapas podem ser usadas para atualizar o MongoDB 4.0 Comunidade para MongoDB 4.0 Enterprise.
Consideração
Aviso
Não use estas instruções para atualizar para outra versão de lançamento. Para atualizar as versões de lançamento, consulte as instruções de atualização de versão apropriadas, como Atualizar para MongoDB 5.0.
Baixar binários empresariais
Dependendo do seu sistema operacional, você pode instalar os binários do MongoDB Enterprise usando um gerenciador de pacotes ou baixando os binários manualmente.
Procedimento
Para minimizar o tempo de inatividade, você pode atualizar do MongoDB Community para o Enterprise Edition usando uma atualização "rolante", atualizando os membros individualmente enquanto os outros membros estão disponíveis.
Desative o Balanceador.
Conecte mongosh
a uma instância mongos
no cluster fragmentado e execute sh.stopBalancer()
para desabilitar o balancer:
sh.stopBalancer()
Observação
Se houver uma migração em andamento, o sistema a concluirá antes de encerrar o balancer. Você pode executar o sh.isBalancerRunning()
para verificar o estado atual do balanceador.
Para verificar se o balanceador está desativado, execute sh.getBalancerState()
, que retorna falso se o balanceador estiver desativado:
sh.getBalancerState()
A partir do MongoDB 4.2, sh.stopBalancer()
também desabilita a divisão automática para o cluster fragmentado.
Para obter mais informações sobre como desativar o balancer, consulte Desabilitar o balancer.
Atualize os servidores de configuração.
Atualize os membros secundários da réplicas para definir um de cada vez:
Desligue a instância
mongod
secundária.Reinicie o membro com a Enterprise
mongod
, especificando as mesmas opções de configuração (por exemplo, mesmo diretório de dados, arquivo de configuração, etc.).Aguarde até que o membro se recupere para o estado
SECONDARY
antes de atualizar o próximo membro secundário. Para verificar o estado do membro, emitars.status()
emmongosh
.
Repita para cada membro secundário restante.
Reduza o conjunto de réplicas primário.
Conecte
mongosh
à primária e users.stepDown()
para reduzir a primária e forçar a eleição de uma nova primária:rs.stepDown() Quando
rs.status()
indicar que o primário foi desativado e outro membro for o principal, faça upgrade do primário desativado:Encerrar o primary desativado.
Reinicie com o Enterprise
mongod
, especificando as mesmas opções de configuração (por exemplo, mesmo diretório de dados, arquivo de configuração etc).
Atualize os shards.
Atualize os fragmentos um de cada vez.
Para cada conjunto de réplicas de shard:
Atualize os membros secundários da réplicas para definir um de cada vez:
Desligue a instância
mongod
secundária.Reinicie o membro com a Enterprise
mongod
, especificando as mesmas opções de configuração (por exemplo, mesmo diretório de dados, arquivo de configuração, etc.).Aguarde até que o membro se recupere para o estado
SECONDARY
antes de atualizar o próximo membro secundário. Para verificar o estado do membro, emitars.status()
emmongosh
.
Repita para cada membro secundário restante.
Reduza o conjunto de réplicas primário.
Conecte
mongosh
à primária e users.stepDown()
para reduzir a primária e forçar a eleição de uma nova primária:rs.stepDown() Quando
rs.status()
indicar que o primário foi desativado e outro membro for o principal, faça upgrade do primário desativado:Encerrar o primary desativado.
Reinicie com o Enterprise
mongod
, especificando as mesmas opções de configuração (por exemplo, mesmo diretório de dados, arquivo de configuração etc).
Reative o balancer.
Usando mongosh
, conecte-se a um mongos
no cluster e execute sh.startBalancer()
para reativar o balancer:
sh.startBalancer()
A partir do MongoDB 4.2, o sh.startBalancer()
também habilita a divisão automática para o cluster fragmentado.
Para obter mais informações sobre o balanceador, consulte Habilitar o balanceador.
Importante
Antes de usar qualquer recurso do Enterprise, certifique-se de que todos os membros tenham sido atualizados para a edição Enterprise.