4 ms·
You could write a simple script/daemon to wrap rsync. To make the install, configure, run process dirt simple and reliable. You could write a nice agent in Go
by DLA 8y ago
You could write a simple script/daemon to wrap rsync. To make the install, configure, run process dirt simple and reliable.
You could write a nice agent in Go (golang.com) that watches directories and sends files over your choice of protocols, maybe to an AWS S3 bucket. A little dev work could get you a single file program (zero dependencies, just copy program and run it on each host). Here's one example: https://github.com/Redundancy/go-sync https://github.com/Redundancy/go-sync
Here's a search for more similar libs: https://golanglibs.com/search?q=rsync&sort=top https://golanglibs.com/search?q=rsync&sort=top
I've used this method extensively and can tell you it works very well. You can add whitelist/blacklist filters, specify folders, recursively traverse a tree of folders/files, etc.
A single file binary with zero dependencies is a huge plus for a situation like this. You can cross compile the same source for Windows and nearly every flavor of Linux with ease. Just my $0.02.
Google turned up FileJuggler which looks nice: https://www.filejuggler.com https://www.filejuggler.com (Disclaimer: No personal knowledge of this software).