sincronizar dos grandes filesystems

Necesito sincronizar dos grandes filesystems regularmente en una dirección. Ambos lados ejecutan linux con acceso root completo.

Mi solución preferida: puedo leer la list de files y directorys cambiados y sincronizar sólo los files modificados. Pero, ¿cómo puedo get la list de cambios? Inotify necesita un controller para cada directory, pero hay demasiados. Tal vez de la revista del sistema de files?

Aquí hay algunas soluciones y por qué no encajan:

  • rsync: Necesita comprobar recursivamente todos los files. Hay algunos millones de files y sólo pequeños cambios. El cheque tarda demasiado.
  • inotify: Necesito un manejador para cada directory y hay demasiados. Inotify no fue construido para "ver todos los files" escenarios.
  • DRDB: Ambos lados deben funcionar independientemente. Puede ocurrir que los hosts no puedan conectarse durante algunos días.

Ambas máquinas necesitan sincronizarse aproximadamente cada 15 minutos. La synchronization inicial no es un problema, esta pregunta es sólo acerca de la synchronization de los cambios.

¿Qué tal GlusterFS? He descubierto que el tráfico que se desarrolla es considerable less que DRBD.

+1 para GlusterFS, es una plataforma de almacenamiento en clúster de usuarios, es bastante fácil de configurar y funciona a nivel de file.

Una vez instalado todo lo que necesitas hacer es crear un nuevo volumen replicado de Gluster en el server principal, se replicará el contenido en time real a través de TCP / IP. A continuación, configurar el cliente (que es básicamente montar un sistema de files), incluso puede hacer que en uno de los serveres y luego escribir datos siempre a ese nuevo sistema de files montado.