Chinaunix

标题: 如何实时同步两个主机的文件? [打印本页]

作者: flowingtree    时间: 2011-08-04 14:17
标题: 如何实时同步两个主机的文件?
我用nginx做反向代理。两台后端服务器的文件,不能同步。刚开始用unsion同步文件。后来文件太多了,效果不好。

因为没有做过集群,可能思路就错了。请大家给指点一下。

有没有集群入门的书呢?
作者: yuhongchun    时间: 2011-08-04 20:11
提示: 作者被禁止或删除 内容自动屏蔽
作者: godymoon    时间: 2011-08-04 23:05
回复 2# yuhongchun


     NFS 不就是直接共享,然后去取么,那还用得着rsync ?
作者: yuhongchun    时间: 2011-08-05 00:56
提示: 作者被禁止或删除 内容自动屏蔽
作者: flowingtree    时间: 2011-08-05 06:43
可以用rsync啊,或者rsync+inotify,

rsync同步海量小文件效果老好了

公司用的是专门的文件服务器 ...
yuhongchun 发表于 2011-08-04 20:11



   unison 每一次有文件更改,都会重新扫瞄所有node. 海量文件会有延迟。rsync,用不着扫瞄吗?
作者: yuhongchun    时间: 2011-08-05 10:42
提示: 作者被禁止或删除 内容自动屏蔽
作者: flowingtree    时间: 2011-08-05 13:09
本帖最后由 flowingtree 于 2011-08-05 13:11 编辑
回复  flowingtree

rsync有自己的算法,每次同步都只改动有变化的文件~建议楼主用rsync3.x的版本,效果会 ...
yuhongchun 发表于 2011-08-05 10:42


请问是inotify分别两边监视,双向同步?,这样会不会陷入循环?
作者: kns1024wh    时间: 2011-08-05 13:35
回复 1# flowingtree


    rsync+inotify配置触发式(实时)远程同步
作者: bigxu    时间: 2011-08-05 22:30
回复  flowingtree


    rsync+inotify配置触发式(实时)远程同步
kns1024wh 发表于 2011-08-05 13:35



A<---->B

A, B两边都运行rsync+inotify吗
作者: bun    时间: 2011-08-07 12:57
提示: 作者被禁止或删除 内容自动屏蔽
作者: yuhongchun    时间: 2011-08-07 14:35
提示: 作者被禁止或删除 内容自动屏蔽
作者: bun    时间: 2011-08-07 17:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: yuhongchun    时间: 2011-08-07 22:33
提示: 作者被禁止或删除 内容自动屏蔽
作者: bun    时间: 2011-08-07 22:46
提示: 作者被禁止或删除 内容自动屏蔽
作者: tianlijian    时间: 2011-08-08 21:59
关注一下
作者: zyxabczyx    时间: 2011-08-09 09:55
DRBD
作者: yuhongchun    时间: 2011-08-09 15:00
提示: 作者被禁止或删除 内容自动屏蔽
作者: kns1024wh    时间: 2011-08-09 16:20
AB

A, B两边都运行rsync+inotify吗
bigxu 发表于 2011-08-05 22:30



    要做到A B相互同步么?
   如果是要做到A B相互同步 还不如直接用存储来解决
作者: kns1024wh    时间: 2011-08-09 16:27
回复 1# flowingtree

源于网络的一个关于rsync  unison drdb 三者之间的对比,供参考
   
RsyncUnisonDRBD
简介远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。 目前由rsync.samba.org维护Unison是windows和unix平台下都可以使用的双向文件同步工具,它能使两个文件夹(本地或网络 上的)保持内容的一致。目前已停止开发。DRBD,是分布式复制块设备,是一种通过TCP/IP网络实现块设备数据实时镜像的方案。,可以被用于高可用(HA)之中.它类似于一个网络RAID-1功能.
功能及特点1.镜像保存整个目录树和文件系统;

2.保持原来文件的权限、时间、软硬链接等;
3.无须特殊权限即可安装;
4.优化的流程,文件传输效率高;使用“Rsync算法”同步两个文件的不同部分,而不是每次都整份传送;
5.可以使用rsh、ssh等方式来传输文件,也可以通过直接的socket连接;
6.支持匿名传输。
1、跨平台使用;

2、对内核和用户 权限 没有特别要求;
3、支持双向同步,能自动处理两份拷贝中更新没有冲突的部分,有冲突的部分将会显示出来让用户选择更新策略;

4、可以直接使用 socket 连接或安全的 ssh 连接方式,对带宽的要求不高,使用类似 rsync 的压缩传输协议。
1、DRBD是一种块设备

2、可用于高可用集群(HA)
3、通过网络实现块设备数据实时镜像
4、类似于一个网络RAID-1
使用平台类unix平台(Linux、Solaris、BSD)

Windows平台相应版本:cwRsync
Windows平台

Unix/Linux平台
Linux平台
依赖性需要内核支持
传输方式rsh、ssh、socket连接、daemon模式socket 连接或安全的 ssh 连接方式通过TCP/IP网络实现块设备数据实时镜像
稳定性一般(超时严重)
同步速度小文件同步速度:快

大文件同步速度:一般
小文件同步速度:快

大文件同步速度:慢
缺点不支持双向传输超时严重不支持双向传输,传输速度慢

作者: flowingtree    时间: 2011-08-09 17:05
rsync有没办法回滚恢复文件?
bun 发表于 2011-08-07 12:57



   
没有
作者: yjs_sh    时间: 2011-08-09 19:27
DRBD可以作成双主模式,互相同步。
作者: sanyork    时间: 2011-08-12 12:13
没有
flowingtree 发表于 2011-08-09 17:05


rsync有dry-run模式,可以将需要修改的文件先存起来,然后在真正执行,这样就可以回滚了。

rsync确实不支持ftp,但是可以使用ftpfs,将ftp挂载成一个文件系统,在本地的这个文件系统上可以运行rsync。
作者: yuhongchun    时间: 2011-08-12 12:32
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2