lsyncd
My understanding is, it’s kind of rsync
daemon.
Install on source servers (no need to install on destination servers).
apt update
apt install lsyncd
Set kernel parameter fs.inotify.max_user_watches
.
/etc/sysctl.conf
# for lsyncd
fs.inotify.max_user_watches = 8192000
We should configure firewall so that the source server can SSH to destination servers.
Here is my ssh snippets.
Here is the configuration example.
mkdir /etc/lsyncd
vim /etc/lsyncd/lsyncd.conf.lua
settings{
logfile = "/var/log/lsyncd.log",
statusFile = "/tmp/lsyncd.stat",
statusInterval = 1,
delay=0,
}
fundation = {
default.rsync,
source="/path/to/source/sync/dir",
target="user@dest.com:/path/to/dest/dir",
delay=0,
rsync = {
owner = true,
group = true,
archive = true,
links = true,
update = true,
verbose = false,
bwlimit = 30000,
rsh = "/usr/bin/ssh -i /home/atlex00/.ssh/id_rsa -l atlex00 -o StrictHostKeyChecking=no"
}
}
sync{ fundation, target="user@dest.com:/path/to/dest/dir" }
systemctl restart lsyncd