美文网首页
第五章:Lsyncd实时同步

第五章:Lsyncd实时同步

作者: chenkang | 来源:发表于2019-10-16 11:54 被阅读0次

第一节:lsyncd概述

1.lsyncd简介

Lysncd 实际上是lua语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13 及以后)里的 inotify 触发机制,然后通过rsync去差异同步,达到实时的效果。我认为它最令人称道的特性是,完美解决了 inotify + rsync海量文件同步带来的文件频繁发送文件列表的问题 —— 通过时间延迟或累计触发事件次数实现。另外,它的配置方式很简单,lua本身就是一种配置语言,可读性非常强。lsyncd也有多种工作模式可以选择,本地目录cp,本地目录rsync,远程目录rsyncssh。
实现简单高效的本地目录同步备份(网络存储挂载也当作本地目录),一个命令搞定。

2.lsyncd官方仓库

[https://github.com/axkibe/lsyncd](https://github.com/axkibe/lsyncd)

3.参考博客地址

[https://www.cnblogs.com/zxci/p/6243574.html](https://www.cnblogs.com/zxci/p/6243574.html)
https://www.cnblogs.com/zxci/p/6243574.html

第二节:lsyncd的使用

1.安装lsyncd服务

[root@nfs01 ~]# yum install lsyncd -y

2.创建配置文件

[root@nfs01 ~]# cat /etc/lsyncd.conf
settings {
  logfile = "/var/log/lsyncd/lsyncd.log",
  statusFile = "/var/log/lsyncd/lsyncd.status",
  inotifyMode = "CloseWrite",
  maxProcesses = 8,
}
sync {
  default.rsync,
  source = "/data",            <--监控的目录
  target = "rsync_backup@172.16.1.41::data",    <--备份的位置
  delete = true,
  exclude = { ".*" },
  delay = 1,
  rsync = {
    binary = "/usr/bin/rsync",
    archive = true,
    compress = true,
    verbose = true,
    password_file = "/etc/rsync.passwd",
    _extra = {"--bwlimit=200"}
  }
}

3.启动命令

[root@nfs01 ~]# systemctl start lsyncd

相关文章

网友评论

      本文标题:第五章:Lsyncd实时同步

      本文链接:https://www.haomeiwen.com/subject/bbiymctx.html