So, do I need to stop the
mongodprocess before startrsync?
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 themongodprocess.
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.