使用Lsyncd进行服务器不分主从实时同步

前提

我是在进行 服务器主从实时同步 完了之后再进行不分主从测试的。

所以在操作之前,服务器上应该已经配置好了免密码SSH登录,装好了 rsynclsyncd

从 1主 2从 进步到 不分主从,需要先在各个服务器上装好 lsyncd,之前是只在主服务器上装,现在是每个服务器都装。

然后配置文件如下:

[root@localhost wwwroot]# vim /etc/lsyncd.conf 

----
-- User configuration file for lsyncd.
--
-- Simple example for default rsync, but executing moves through on the target.
--
-- For more examples, see /usr/share/doc/lsyncd*/examples/
--

-- 基本设置
settings{
    statusFile = "/var/log/lsyncd/lsyncd.log",
    statusInterval = 1
}
-- 服务器
servers = {
    "192.168.199.230",
    "192.168.199.105"
}

for _, server in ipairs(servers) do
sync{
    default.rsyncssh,
    source="/home/wwwroot/",
    host=server,
    targetdir="/home/wwwroot/",
    delay = 0,
    rsync = {
        binary = "/usr/bin/rsync",
        compress = true,
        archive = true,
        verbose = true,
        --rsh = "/usr/bin/shh -p 22 -o StrichHostKeyChecking=no"
    }
}
end

不同服务器之间区别只是 servers 中有变化,那就是把自己的IP去掉,把其他服务器的IP都加进来。

然后每个服务器都开启 lsyncd 服务就行

systemctl start lsyncd.service

不要试图设置开机启动,因为开机启动后,lsyncd 开始检查配置文件中的 servers 服务器列表,只要其中有一台还未启动成功,就会导致开机启动失败。

你可能感兴趣的:(使用Lsyncd进行服务器不分主从实时同步)