|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
欢迎大家来到仓酷云论坛!择要:数据是最可贵的产业!公司的办事器都是必要对数占有着完全的备份战略,使用剧本、企图义务、开源软件等等,不管那种路子,可以对数据的及时同步,才是最幻想的效果!上面具体先容使用rsync共同inotify完成数据及时的触发同步。
rsync:能够镜像保留全部目次树和文件体系。能够很简单做到坚持本来文件的权限、工夫、软硬链接等等。第一次同步时rsync会复制全体内容,但鄙人一次只传输修正过的文件。
计划:后来用rsync举行数据备份是使用企图义务,准时实行一下下令完成rsync的同步,但比来开辟这边修正对照频仍,看来必要及时同步备份来完美备份机制!以是必要使用inotify触发器来改良!到达一旦指定的地位有了新的变化就将其同步!
情况:
CentOS6.464位
rsync-3.0.9
inotify-tools-3.14
申明:
10.10.1.6(rsync+inotify)----------网站步伐(/data0/htdocs/)
10.10.1.9(rsync)------------------网站步伐备份(/data0/htdocs/)
目标:
完成10.10.1.6的/data0/htdocs/目次下产生任何变化都将及时同步到10.10.1.9的/data0/htdocs/上
(另,这两台都跑有keepalived+nginx,来完成呈现妨碍主动切换的容灾,具体设置会在前面补上)
1、web办事器10.10.1.6(rsync+inotify)
1、筹办软件包
#mkdir/data/ftpdata
#wgethttp://rsync.samba.org/ftp/rsync/rsync-3.0.9.tar.gz
#wgethttp://cloud.github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz
2、装置Rsync
1
2
3
4
tar-zxvfrsync-3.0.9.tar.gz
cdrsync-3.0.9
./configure--prefix=/usr/local/rsync
make;makeinstall
创建暗码认证文件
[root@ftp~]#echo"111111">/etc/rsyncd/rsyncd.secrets创建暗码认证文件
*个中111111能够本人设置暗码,rsyncd.secrets名字也能够本人设置;
权限:要将/etc/rsyncd/rsyncd.secrets设置为root具有,且权限为600。
#chmod600/etc/rsyncd/rsyncd.secrets
3、装置inotify
1
2
3
4
tar-zxvfinotify-tools-3.14.tar.gz
cdinotify-tools-3.14
./configure--prefix=/usr/local/inotify
make;makeinstall
4、创立rsync复制剧本
此项功效次要是将ftp真个目次/data0/htdocs/里的内容,假如修正了(不管是增加、修正、删除文件)可以经由过程inotify监控到,并经由过程rsync及时的同步给10.10.1.9的/data0/htdocs里,上面是经由过程shell剧本完成的。
[root@web~]#vim/root/shell/rsync.sh
1
2
3
4
5
6
7
8
#!/bin/bash
host=10.10.1.9
src=/data0/htdocs/
/usr/local/inotify/bin/inotifywait-mrq--timefmt%d/%m/%y%H:%M--format%T%w%f%eCemodify,delete,create,attrib$src|whilereadfiles
do
/usr/bin/rsync-vzrtopg--delete--password-file=/etc/rsyncd/rsyncd.secrets$srcroot@$host::htdocs>/dev/null
echo"${files}wasrsynced">>/var/log/rsync.log2>&1
done
[root@web~]#chmodu+x/root/shell/rsync.sh
[root@web~]#setsid/root/shell/rsync.sh&
#背景运转剧本,封闭shell终端持续背景运转
rsync.sh剧本到场开机启动项
#echo"/root/shell/rsync.sh">>/etc/rc.local
防火墙开启rsync端口:873
增加:
iptables-AINPUT-mstate--stateNEW-mtcp-ptcp--dport873-jACCEPT
重启:
#/etc/init.d/iptablesrestart
2、备份办事器10.10.1.9(rsync)
1、筹办事情
创立备份目次:
#mkdir/data0/htdocs
2、装置rsync(备份主机只装置rsync)
1
2
3
4
tar-zxvfrsync-3.0.9.tar.gz
cdrsync-3.0.9
./configure--prefix=/usr/local/rsync
make;makeinstall
3、创建用户与暗码认证文件
[root@backup~]#echo"root:111111">/etc/rsyncd/rsyncd.secrets
[root@backup~]#less/etc/rsyncd/rsyncd.secrets
root:111111
注重:
请记着,在10.10.1.6端创建的暗码文件,只要暗码,没有效户名;而在10.10.1.9里创建的暗码文件,用户名与暗码都有。
权限:要将/etc/rsyncd/rsyncd.secrets设置为root具有,且权限为600。
#chmod600/etc/rsyncd/rsyncd.secrets
4、创建rsync设置文件
[root@backup~]#vim/etc/rsyncd/rsyncd.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
pidfile=/var/run/rsyncd.pid
port=873
address=10.10.1.9
#uid=nobody
#gid=nobody
uid=root
gid=root
usechroot=no
readonly=no
#limitaccesstoprivateLANs
hostsallow=10.10.1.0/255.255.255.0
hostsdeny=*
maxconnections=5
motdfile=/etc/rsyncd/rsyncd.motd
#Thiswillgiveyouaseparatelogfile
logfile=/var/log/rsync.log
#transferlogging=yes
logformat=%t%a%m%f%b
syslogfacility=local3
timeout=300
[htdocs]
path=/data0/htdocs
list=yes
ignoreerrors
authusers=root
secretsfile=/etc/rsyncd/rsyncd.secrets
#comment=rsynchtdocs
启动rsync办事
#/usr/local/rsync/bin/rsync--daemon--config=/etc/rsyncd.conf
#ps-ef|greprsync
Rsync办事到场开机启动项
#echo"/usr/local/rsync/bin/rsync--daemon--config=/etc/rsyncd.conf">>/etc/rc.local
防火墙开启rsync端口:873
增加:
iptables-AINPUT-mstate--stateNEW-mtcp-ptcp--dport873-jACCEPT
重启:
#/etc/init.d/iptablesrestart
完成,实在这个时分数据已同步了!
测试一下:
因为/data0/htdocs/下触及到一些公司信息,以是就以/data0/htdocs/tmp/为例
主机名能够区分是两台呆板,内里的内容完整一向,连文件的属性都一样
再对内里修正一下尝尝,创立一个文件,然后删除user目次尝尝
有人说利用mv挪动目次偶然会碰着数据同步地位毛病,特地测试了一下,没有产生这类情形,今后碰着再增补!
本文出自“Tuesday”博客,请务必保存此出处http://cuimk.blog.51cto.com/6649029/1322241
欢迎大家来到仓酷云论坛! |
|