Atualizar um conjunto de réplicas para 6.0
Nesta página
Use este tutorial para atualizar do MongoDB 5.0 para o MongoDB 6.0. Para atualizar para uma nova versão de patch dentro da mesma série de lançamentos, consulte Atualizar para a versão de patch autogerenciada mais recente do MongoDB.
Familiarize-se com o conteúdo deste documento, incluindo a revisão minuciosa dos pré-requisitos, antes de atualizar para MongoDB 6.0.
As seguintes etapas esboçam o procedimento para atualizar um mongod
que é um membro do conjunto de réplica da versão 5.0 para 6.0.
Se você precisar de orientação sobre como atualizar para a versão 6.0, os serviços profissionais do MongoDB oferecem suporte de atualização da versão principal para ajudar a garantir uma transição tranquila, sem interrupção para seu aplicativo MongoDB.
Recomendações de upgrade e listas de verificação
Ao atualizar, considere o seguinte:
Atualizar caminho da versão
Para atualizar uma implantação MongoDB existente para 6,0, você deve estar executando uma versão da série 5,0.
Para atualizar de uma versão anterior à série 5.0, você deve atualizar sucessivamente as principais versões até ter atualizado para a série 5.0. Por exemplo, se você estiver executando uma série 4.4, deverá atualizar primeiro para a série 5.0 antes de poder atualizar para a 6.0.
Verifique a compatibilidade do driver
Antes de fazer upgrade do MongoDB, verifique se você está usando um driver compatível com o MongoDB 6.0. Consulte a documentação do driver para seu driver específico para verificar a compatibilidade com o MongoDB 6.0.
As implementações atualizadas que são executadas em drivers incompatíveis podem encontrar comportamentos inesperados ou indefinidos.
Preparação
Antes de iniciar sua atualização, consulte o documento Alterações de compatibilidade no MongoDB 6.0 para garantir que seus aplicativos e sistemas sejam compatíveis com o MongoDB 6.0. Resolva as incompatibilidades em seus sistema antes de iniciar a atualização.
Antes de atualizar o MongoDB, sempre teste seu aplicativo em um ambiente de preparação antes de implantar a atualização em seu ambiente de produção.
Consideração de rebaixamento
A partir do MongoDB 7.0, você não pode fazer downgrade da versão binária do seu lançamento sem assistência do suporte.
Para saber mais, consulte Downgrade 7.0 para 6.0.
Pré-requisitos
Versão de todos os membros
Todos os nós do conjunto de réplicas devem executar a versão 5.0. Para atualizar um conjunto de réplicas de uma versão da série 4.4 e anterior, primeiro atualize todos os nós do conjunto de réplicas para a versão mais recente da série 5.0 e, em seguida, siga o procedimento para atualizar do MongoDB 5.0 para o 6.0.
Versão de compatibilidade de recursos
O conjunto de réplicas 5.0 deve ter featureCompatibilityVersion
definida como "5.0"
.
Para garantir que todos os membros do conjunto de réplicas tenham featureCompatibilityVersion
configurado para "5.0"
, conecte a cada membro do conjunto de réplicas e marque o featureCompatibilityVersion
:
db.adminCommand( { getParameter: 1, featureCompatibilityVersion: 1 } )
Todos os membros devem retornar um resultado que inclua "featureCompatibilityVersion" : { "version" : "5.0" }
.
Para definir ou atualizar featureCompatibilityVersion
, execute o seguinte comando no primário. A maioria dos membros portadores de dados deve estar disponível:
db.adminCommand( { setFeatureCompatibilityVersion: "5.0" } )
Para mais informações, consulte setFeatureCompatibilityVersion
.
Estado do membro do conjunto de réplicas
Certifique-se de que nenhum membro do conjunto de réplicas esteja no estado ROLLBACK
ou RECOVERING
, emitindo o comando replSetGetStatus
:
db.adminCommand( { replSetGetStatus: 1 } )
Baixe binários 6.0
Através do Gerenciador de Pacotes
Se você instalou MongoDB a partir dos repositórios MongoDB apt
, yum
, dnf
ou zypper
, você deverá atualizar para 6.0 utilizando seu gerenciador de pacote.
Siga as instruções de instalação do 6.0 apropriadas para seu sistema Linux. Isso envolverá a adição de um repositório para a nova versão e, em seguida, a execução do processo de atualização real.
Manualmente
Se você não tiver instalado o MongoDB usando um gerenciador de pacotes, poderá fazer o download manual dos binários do MongoDB no MongoDB Download Center.
Consulte as instruções de instalação do 6.0 para mais informações.
Procedimento de atualização
Você pode atualizar do MongoDB 5.0 para o 6.0 com uma atualização "contínua," que permite atualizar um nó de cada vez, mantendo os demais em funcionamento para minimizar o tempo de inatividade.
Atualize os membros secundários do conjunto de réplicas.
Atualize os membros secundários da réplicas para definir um de cada vez:
Substitua o binário 5.0 pelo binário 6.0.
Reinicie o membro.
Reduza o conjunto de réplicas primário.
Conecte o mongosh
ao primário e use rs.stepDown()
para reduzir o primário e forçar a eleição de um novo primário.
Atualize o primary.
Quando rs.status()
indicar que o primário foi desativado e outro membro tiver assumido o estado PRIMARY
, faça upgrade do primário desativado:
Desligue o primário com redução gradual e substitua o binário
mongod
pelo binário 6.0.Reinicie o membro.
Ative recursos 6.0 incompatíveis com versões anteriores.
Neste ponto, você pode executar os binários do 6.0 sem as funcionalidades do 6.0 que são incompatíveis com 5.0.
Para habilitar estes recursos do 6.0, defina a versão de compatibilidade de recursos (fCV
) para 6.0.
Dica
Habilitar essas recursos funcionalidades com versões anteriores pode complicar o processo de downgrade, pois você deve remover todos as funcionalidades persistentes incompatíveis com versões anteriores antes de fazer o downgrade.
É recomendável que, após a atualização, você permita que seu sistema seja executado sem habilitar essas funcionalidades por um período de burn-in para garantir que a probabilidade de downgrade seja mínima. Quando você estiver confiante de que a probabilidade de downgrade é mínima, habilite essas funcionalidades.
Dica
Certifique-se de que não haja initial sync em andamento. A execução do comando setFeatureCompatibilityVersion
enquanto uma initial sync estiver em andamento fará com que a initial sync seja reiniciada.
No primário, execute o comando setFeatureCompatibilityVersion
no banco de dados admin
:
db.adminCommand( { setFeatureCompatibilityVersion: "6.0" } )
Definindo featureCompatibilityVersion (fCV) : "6.0" executa implicitamente um replSetReconfig
para adicionar o campo term
ao documento de configuração e bloqueia até que a nova configuração se propague para a maioria dos nós do conjunto de réplicas.
Este comando deve executar gravações em uma collection interna do sistema. Se, por algum motivo, o comando não for concluído com êxito, você poderá tentar novamente o comando no primary com segurança, pois a operação é idempotente.
Procedimentos de atualização adicionais
Para atualizar um standalone, consulte Atualizar um standalone para 6.0.
Para atualizar um cluster fragmentado, consulte Atualizar um cluster fragmentado para 6.0.