banner

Modernização de Infraestrutura Crítica: Migração de MongoDB Community 4 para Percona Server for MongoDB 8

escrito por Daniel Leite

5 minutos de leitura

Pessoa usando um notebook com gráficos e telas de análise de mercado sobrepostas, em ambiente de escritório com monitor e código na tela, atmosfera azul de tecnologia e dados.

Como a adoção do Percona Server for MongoDB e do MongoShake permitiu modernizar um ambiente bancário legado com mais segurança, alta performance e apenas 10 minutos de downtime.

No setor bancário, a integridade e a segurança dos dados são pilares inegociáveis em projetos de modernização de infraestrutura crítica. Recentemente, conduzimos um projeto desafiador de atualização tecnológica que envolveu a migração de um ambiente MongoDB Community v4 para o Percona Server for MongoDB v8. O objetivo central foi elevar o patamar de segurança através da criptografia em repouso e garantir a sustentabilidade do ambiente com uma versão moderna e de alta performance.

As Peças-Chave da Estratégia

1. Percona Server for MongoDB

O Percona Server for MongoDB é uma alternativa open-source e totalmente compatível ao MongoDB Community Edition. A grande vantagem estratégica desta distribuição é a inclusão de funcionalidades de nível Enterprise de forma gratuita. No nosso caso, o diferencial foi o suporte à Criptografia em Disco (Encryption at Rest), recurso que na distribuição oficial estão disponíveis apenas em licenças pagas.

2. MongoShake

Para realizar a migração dos dados entre clusters de versões tão distintas, utilizamos o MongoShake. Ele é uma ferramenta de replicação de dados baseada no oplog do MongoDB, funcionando como uma ponte que lê as alterações na origem e as aplica no destino quase em tempo real. É ideal para cenários de migração com mínimo downtime.

O Desafio da Versão: A Necessidade de um Stage

Migrar diretamente da versão 4 para a 8 apresenta saltos significativos no formato interno dos dados e protocolos de comunicação. Durante os testes, o MongoShake encontrou dificuldades de compatibilidade ao tentar interpretar o oplog da v4 e replicar diretamente na v8.

Para contornar essa limitação, desenhamos uma arquitetura de transição utilizando um MongoDB Single Node na versão 6 como ambiente de stage. O fluxo final de dados foi estabelecido da seguinte forma: aaaa.png

Essa etapa intermediária serviu para "normalizar" os dados em uma versão de meio de caminho, permitindo que a replicação fluísse sem erros até o destino final na versão 8.

Segurança e Performance: Os Ganhos do Case

O maior benefício alcançado foi a implementação da encriptação em disco. Para uma instituição financeira, garantir que os dados estejam ilegíveis em caso de acesso físico indevido ao storage é uma conformidade crítica. Além disso, a atualização para a versão 8 trouxe:

  • Melhoria em índices: Otimização no uso de memória e CPU para consultas complexas.

  • Compression: Melhores algoritmos de compressão de dados, reduzindo o custo de armazenamento.

  • Segurança Nativa: Correções de vulnerabilidades presentes em versões legadas (v4).

Execução com Mínimo Downtime

A estratégia foi desenhada para priorizar a continuidade do negócio. A migração foi realizada com apenas 10 minutos de downtime.

  • Sincronização: Os dados foram replicados via MongoShake até que o atraso (lag) fosse próximo de zero. Virada de Chave: No momento da janela, o cluster de origem foi desligado.
  • Preservação de IPs: Para evitar alterações em centenas de connection strings e datasources espalhados pela infraestrutura, o cluster Percona v8 assumiu os IPs originais do cluster v4.
  • Aplicações Legadas: Embora a transparência de rede tenha sido mantida, identificamos que alguns drivers de aplicações muito antigas precisaram de atualizações pontuais para suportar os novos protocolos de autenticação e comunicação da versão 8.

Este case demonstra que é possível modernizar ambientes legados e atingir conformidades rígidas de segurança (como criptografia de dados) utilizando ferramentas open-source de alta performance. A escolha do Percona Server permitiu ao cliente obter recursos Enterprise sem o custo de licenciamento proprietário, enquanto o uso estratégico do MongoShake com um ambiente de stage garantiu a integridade da migração entre versões distantes.

Compartilhe esse post: