使用lsyncd实时同步.

安装lua关联包:

yum install lua lua-static lua-devel

安装lsyncd:

wget https://lsyncd.googlecode.com/files/lsyncd-2.1.5.tar.gz

tar -xzvf lsyncd-2.1.5.tar.gz

cd lsyncd-2.1.5

./configure -prefix=/usr/local/lsyncd

make&&make install

ln -s /usr/local/lsyncd/bin/lsyncd /usr/bin/lsyncd

配置lsyncd:

本地模式:

mkdir /usr/local/lsyncd/etc

cd /usr/local/lsyncd/etc

vim lsyncd.conf.lua

settings{

logfile ="/var/log/lsyncd.log",

statusFile ="/var/log/lsyncd-status.log",

pidfile ="/var/run/lsyncd.pid",

statusInterval =20,

nodaemon =false, --测试可以开启

inotifyMode ="CloseWrite",

maxProcesses =4,

maxDelays =1,

}

sync{

default.rsync,

source ="/data/test1",

target ="/data/test2",

maxDelays = 5,

delay = 30,

rsync ={

binary ="/usr/bin/rsync",

archive =true,

compress =true,

owner =true,

perms =true,

_extra ={"--include=*-G.jpg","--exclude=*"},

},

}

参数说明:

--//表示注释。

nodaemon=true//表示不启用守护模式。默认是启用。

sync里面是定义同步参数,指定默认以直接模式direct运行。

Lsyncd支持rsync、rsyncssh、direct三种模式。

maxDelays 累计到多少所监控的事件激活一次同步,即使后面的delay延迟时间还未到

delay 累计事件,等待rsync同步延时时间,默认15秒(最大累计到1000个不可合并的事件)。

详细参数说明:

https://github.com/axkibe/lsyncd/wiki/Lsyncd%202.1.x%20‖%20Layer%204%20Config%20‖%20Default%20Behavior

启动:

lsyncd /usr/local/lsyncd/etc/lsyncd.conf.lua

同步远程服务器目录:

远程目录有两种模式,rsync模式和rsyncssh模式。

Rsync模式配置:

settings{

logfile ="/var/log/lsyncd.log",

statusFile ="/var/log/lsyncd-status.log",

pidfile ="/var/run/lsyncd.pid",

statusInterval =20,

nodaemon =false, --测试可以开启

maxProcesses =4,

maxDelays =1,

}

sync{

default.rsync,

source ="/data/test1",

target ="[email protected]:/data/test2",

rsync ={

binary ="/usr/bin/rsync",

archive =true,

compress =true,

owner =true,

perms =true,

password_file="/etc/rsyncd/rsyncd.password",

_extra ={"--include=*-G.jpg","--exclude=*"},

},

}

时间: 2024-10-29 10:46:47

使用lsyncd实时同步.的相关文章

14,Lsyncd实时同步工具服务

1,lsyncd实时同步工具 1)lsyncd实际上是lua语言封装了inotify和rsync工具,采用了Linux内核(2.6.13以后里的) inofify触发机制然后通过rsync去差异同步,达到实时的效果,它最厉害的地方是完美解决 了inotify+rsync的海量文件同步带来的文件频繁发生文件列表问题.其次配置方式简单.2,安装 yum -y install lsyncd3,创建配置文件(配置文件里原是无用信息)1)配置文件信息解析: 参考博客:https://www.cnblogs

lsyncd 实时同步

1. 几大实时同步工具比较 1.1 inotify + rsync 最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是inotify + rsync,但随着文件数量的增大到100W+,目录下的文件列表就达20M,在网络状况不佳或者限速的情况下,变更的文件可能10来个才几M,却因此要发送的文件列表就达20M,严重减低的带宽的使用效率以及同步效率:更为要紧的是,加入inotifywait在5s内监控到10个小文件发生变化,便会触发10个rsync同步操作,结果就是真正需要传输的才2-3M的文

lsyncd实时同步工具

首先介绍一下架构 有3台app服务器,每次上线,是通过shell脚本将代码传输至app_1 然后app_1自动同步到app_2和app_3 最开始的同步策略是rsync+inotify 用了一段时间,发现有时会出现app_2和app_3没有同步代码的问题. 发现是因为inotify的shell脚本,意外终止了. 后来发现有unison,测试发现,还是要写shell脚本 再后来sersync,这个是基于rsync的,需要有rsync客户端和服务端,比较麻烦 配置文件是xml. 最后用的是lsync

sersync/lsyncd实时同步

第一章 sersync/lsync实时同步 1.1 实时同步服务原理/概念 1)需要部署好rsync守护进程服务,实现数据传输 2)需要部署好inotify服务,实现目录中数据变化监控 3)将rsync服务和inotify服务建立联系,将变化的数据进行实时备份传输 1.2 inotify介绍 ? Inotify是一种强大的,细粒度的,异步的文件系统事件监视机制,Linux2.6.13起加入了inotify支持,通过inotify可以监控文件系统中添加,删除,修改,移动等各种事件,利用这个内核接口

lsyncd —— 多机器实时同步文件神器

lsyncd 是一个支持实时.双向.多机器的多模式文件同步工具. 使用 Lua 语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13 及以后)里的 inotify 触发机制,然后通过 rsync 去差异同步,达到实时的效果. 安装 在源文件服务器上安装: yum -y install lsyncd 配置 lsyncd 主配置文件,假设放置在/etc/lsyncd.conf: settings { nodaemon = false, logfile = "/va

用lsyncd和rsyncd实现无ssh支持的文件实时同步

文件存储与同步的基本讨论 网站发展到一定阶段,有时需要将各服务器上传的文件进行集中,这里讨论如果集中的问题,至于如果分散负载均衡.CDN加速.多主机.多域名等blablabla,概不讨论. 集中共享的方案(环境以CentOS 6.5为例)通常的作法是文件同步.共享硬盘空间.硬件堆叠和分布式文件存储四种. 文件同步是用工具定时或自动将分散的文件同步到一个集中的存储区域,如cron配合ftp.ssh.rsync等实现定时同步: 共享空间的做法是用文件存储协议实现挂载和管理,如mount.samba.

rsync+lsyncd实现文件实时同步

可参考http://seanlook.com/2015/05/06/lsyncd-synchronize-realtime/ 可参考http://openlinuxfly.blog.51cto.com/7120723/1679279 一.环境 lsyncd    192.168.3.71 rsync     192.168.3.72 二.配置rsync服务器 配置rsync以xinetd方式运行 [[email protected] ~]# yum install rsync -y [[emai

rsync+lsyncd实现(本地以及远程)文件实时同步

lsyncd基于lua语言开发,整合了rsync和notify 实现文件的实时同步 系统环境  cat /etc/issue CentOS release 6.6 (Final)  uname -sr Linux 2.6.32-504.el6.x86_64 服务器规划 rsync服务器:                   192.168.10.241 rsync + lsyncd服务器 :         192.168.10.231 一.配置rsync服务器 1.配置xinetd来管理rsy

CentOS 6.5 inotify+rsync做实时同步-企业实例(1.0)

inotify+rsync实时同步起源及简介 inotify服务机制 inotify实施准备 inotify配置是建立在rsync服务的基础上 inotify,sersync,lsyncd sersync功能更多,可以做各种过滤,但从性能上看,通过测试得出inotify性能更高,每秒钟能同步好几百张图片,inotify 150张就不能实时了 实施前检查rsync daemon是正常 [[email protected] oldboy]# ps -ef |grep daemon root