sync dois sistemas de arquivos enormes

2

Eu preciso sincronizar dois sistemas de arquivos enormes regularmente em uma direção. Ambos os lados executam o linux com acesso root completo.

Minha solução preferida: posso ler a lista de arquivos e diretórios alterados e sincronizar apenas os arquivos alterados. Mas como posso obter a lista de alterações? Inotify precisa de um manipulador para cada diretório, mas há muitos. Talvez do diário do sistema de arquivos?

Aqui estão algumas soluções e por que elas não se encaixam:

  • rsync: Precisa verificar recursivamente todos os arquivos. Existem alguns milhões de arquivos e apenas pequenas mudanças. O cheque demora muito.
  • inotify: Eu preciso de um manipulador para cada diretório e há muitos. Inotify não foi criado para cenários "assistir a todos os arquivos".
  • DRDB: Ambos os lados devem ser independentes. Pode acontecer que os anfitriões não consigam ligar durante alguns dias.

As duas máquinas precisam ser sincronizadas a cada 15 minutos. A sincronização inicial não é problema, esta questão é apenas sobre a sincronização das mudanças.

    
por guettli 21.06.2012 / 11:04

2 respostas

4

Que tal o GlusterFS? Descobri que o tráfego que ele desenvolve é consideravelmente menor do que o do DRBD.

    
por 21.06.2012 / 11:23
0

+1 para o GlusterFS, é uma plataforma Clustering de Armazenamento do espaço do usuário, é muito fácil de configurar e funciona no nível do arquivo.

Uma vez instalado, tudo o que você precisa fazer é criar um novo Gluster Volume replicado no servidor principal, ele replicará o conteúdo em tempo real sobre TCP / IP. Em seguida, configure o cliente (que é basicamente montar um sistema de arquivos), você pode até fazer isso em um dos servidores e, em seguida, gravar os dados sempre nesse novo sistema de arquivos montado.

    
por 22.06.2012 / 23:27