Estoy trabajando con un grupo de servidores Linux detrás de la función de escalado automático de la nube de Amazon ( documentación ). Hay archivos que se acumulan en cada servidor, son archivos de caché para la aplicación. Estoy buscando una forma automatizada para que los servidores sincronicen esa carpeta entre ellos.
Rsync
funcionaría si alguien tuviera una forma inteligente de hacer la detección de pares.- Lo mismo vale para
Unison
. - También hemos considerado usar un SaaS como Dropbox.
- Gluster parece exagerado, y no estoy seguro de lo fácil que es tener una nueva computadora uniéndose automáticamente al clúster.
Idealmente, lo que sucedería es cuando se inicia un nuevo servidor, descubre sus pares y comienza a sincronizar la carpeta. A partir de ese momento, la última marca de archivo gana la sincronización P2P.
¿Hay algo por ahí que haga esto?
Respuestas:
Sabes lo extraño que puede parecer, pero usar rtorrent con DHT habilitado en el rango privado ec2 podría funcionar
Esto te daría
fuente
Rsync upstream proporciona soporte para SLP (protocolo de ubicación del servicio). No está habilitado en fuentes rsync de vainilla, pero puede encontrar el soporte de SLP en rsync-parches tarball en la página de inicio de rsync (slp.diff). Por ejemplo, el paquete SUSE rsync está construido con este parche; No sé sobre otras distribuciones.
Sin embargo, no estoy seguro de que esto sea lo que está buscando ni tengo ninguna experiencia con SLP.
fuente
Tal vez me estoy perdiendo algo aquí, pero ¿hay alguna razón por la que no solo configure un directorio NFS simple y solo haga que todas las máquinas lo monten? Cada vez que la aplicación escribe el nuevo archivo de caché, simplemente debe sobrescribir los antiguos.
fuente
Estoy bastante seguro de que hay alguna herramienta de administración de Amazon, como Command Line Tools , que le permite escribir un script de arranque para que los nodos se descubran entre sí, a través de direcciones IP privadas o públicas.
Por cierto, rsync y Unison no son la herramienta correcta, si tienen que distribuir cambios a la memoria caché con mucha frecuencia. En este caso, debe considerar algún sistema de archivos realmente distribuido.
fuente
¿Quizás DRBD (dispositivo de bloque distribuido)?
fuente