mongodb backup de conjunto de réplicas usando o rsync

1

Eu configurei o conjunto de réplicas mongodb (tenho 3 instâncias de db -Redhat) e gostaria de fazer um backup do arquivo db (dbPath: / var / lib / mongo ) usando rsync , 10 ou 12 vezes por dia.

  1. Então, preciso interromper o processo mongod antes de iniciar o rsync ?

    • selecione um dos servidores do conjunto de réplicas e pare o processo mongod
    • faça o backup (usando o rsync)
    • inicie o processo do mongod
  2. ou então, posso iniciar rsync (dbPath: / var / lib / mongo ) sem interromper o processo mongod .

  3. qual é o método de backup recomendado diferente do backup do LVM e mongodump ?

por Prabath Dolawatta 09.06.2017 / 19:55

1 resposta

3

So, do I need to stop the mongod process before start rsync?

Para fazer um backup de cópia de arquivo com rsync ou cp , é necessário quiesce as gravações, parando o mongod service ou emitindo o db.fsyncLock() comando no shell mongo ou através de um driver. Já que o secundário do qual você está fazendo o backup estará intermitentemente disponível com essa abordagem, seria melhor torná-lo oculto para evitar que os drivers tentem ler esse membro quando ele estiver inoperante ou fsyncLock'd.

Eu certificaria-se de testar vários ciclos completos de backup e restauração. Especificamente, desconfie de rsync opções que podem invalidar backups (por exemplo: --ignore-existing , --size-only , --partial ).

Observação: se você estiver usando a abordagem fsyncLock() , há um db.fsyncUnLock() comando para restaurar a operação normal após a conclusão do backup. Outra advertência: o mecanismo de armazenamento WiredTiger suporta apenas fsyncLock no MongoDB 3.2 ou mais recente.

can I start rsync (dbPath: /var/lib/mongo) without stopping the mongod process.

Não. Isso resultará em um backup inconsistente.

what is the recommended backup method other than LVM backup and mongodump?

As abordagens de backup com suporte estão descritas na documentação: Métodos de backup do MongoDB .

Existem abordagens de backup menos disruptivas (e mais contínuas), como o uso de um serviço de backup baseado em agente (por exemplo, o MongoDB Cloud Manager).

Se você deseja fazer backup copiando os arquivos de dados subjacentes, os instantâneos do sistema de arquivos (LVM / EBS / ...) geralmente são menos prejudiciais e mais recomendáveis do que pausar todas as gravações para um mongod . As capturas instantâneas do sistema de arquivos em execução com mongod possuem alguns requisitos se você deseja capturar um backup consistente: todos os dados devem estar no mesmo volume, o registro no diário deve estar ativado e o sistema de arquivos deve suportar instantâneos pontuais. Para detalhes completos, confira a documentação oficial e os tutoriais de backup.

    
por 12.06.2017 / 16:07

Tags