Linux下的Rsync多服务器互为备份方案

Rsync多服务器互为备份方案

功能目的

功能:
实现两台(多台)服务器互为备份,且当一台服务器文件新增时另一台也会及时同步,并且仅仅对新增的文件进行备份

实现原理:
方案基于rsync工具实现。
将AB两台服务器都安装rsync工具,执行命令互相拉取对方指定目录下的文件,实现两台服务器文件一致。再结合crontabl定时任务将命令作为守护进程定时执行,以达到如一台服务器新增文件时,能及时同步到其他服务器中的效果

使用场景:
本方案未使用实时同步功能,可适用于文件变化量不是特别大的情况
Rsync一般为centos7以上自带工具,使用方便快捷,适用于大多容灾备份数需求。

操作步骤:(两台进行相同配置)

1、安装rsync:(使用ROOT用户

yum -y install rsync

2、修改rsync配置文件

vim /etc/rsyncd.conf

uid = reko
gid = reko
use chroot = yes/no                  //是否给与root权限
max connections = 30                 //最大连接数
ready only = no                      //是否只读
port = 873                           //端口号
pid file = /var/run/rsyncd.pid       //运行时的PID文件
log file = /var/log/rsyncd.log       //日志文件
lock file = /var/runrsyncd.lock
#主机连接限制,按需分配
#limit access
host allow=192.168.2.10 192.168.2.11       //每个IP中间以空格分隔
#host deny=
exclude = lost+found/    
transfer logging = yes
timeout = 900     //超时时长

#以下为具体的模块配置

[test]
path = /test/reko                //该分组下的工作目录
comment = ftp export area
auth users = reko                //鉴权用户
secrets file = /etc/rsyncd.pass  //指定用户密码文件

3、设置用户密码文件 (使用ROOT用户

echo “reko:123456” >  /etc/rsyncd.pass   //本地用户的密码文件
chmod 600 /etc/rsyncd.pass

4、设置用户登陆密码文件 (使用ROOT用户

echo “123456” > /etc/rsyncd.pass1  //本地储存对方用户的密码
chmod 600 /etc/rsyncd.pass1

5、创建工作目录 (使用reko用户

mkdir -p /test/reko

6、启动rsync服务 (使用root用户

systemctl start rsyncd

7、新建文件测试
在主机A上创建文件 //使用reko用户执行

touch test.txt

在主机B上执行命令 //使用root用户执行

rsync -avz --password-file=/etc/rsyncd.pass1 reko@172.16.16.101::test /test/reko/  

测试从B主机拉取A主机文件,反之亦然
8、创建定时任务每分钟同步一次(使用root用户
crontab -e

* * * * * cd /usr/bin/ && nohup rsync -avz --password-file=/etc/rsyncd.pass1 reko@172.16.16.101::test /test/reko/ &

操作完成后,使用reko用户上传文件即可

注1:当rsync所同步的文件夹每次更新的文件教大时,适当延长定时任务的执行时间,否则会出现服务或服务器异常,比如CPU持续过高等异常情况。定时任务的执行间隔按照实际情况设定。

注2:当同步目录中有其他用户上传的文件需要同步时,可将其他用户的附加组加上reko

注3reko@172.16.16.101::test 为用户,对端ip、模块名;/test/reko/ 为本地贮存目录

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值