环境部署

源机:192.168.31.140
目标机:192.168.31.130

源机配置

基于rsync的lsyncd 自动同步,rsync的配置省略

安装lsyncd

rpm -ivh lsyncd-2.1.5-1.x86_64.rpm
配置文件:/usr/local/lsyncd/etc/lsyncd.conf
日志文件:/usr/local/lsyncd/logs/lsyncd.log
状态文件(由程序自动生成):/usr/local/lsyncd/logs/lsyncd.status

配置lsyncd

[root@baseos-1_192.168.31.140 ~]# vim /usr/local/lsyncd/etc/lsyncd.conf
settings {
logfile = "/usr/local/lsyncd/logs/lsyncd.log",
statusFile = "/usr/local/lsyncd/logs/lsyncd.status",
maxDelays = 100,
delay = 5,
exitcodes = {[0] = "ok", [1] = "again", [2] = "die"},
maxProcesses = 5,
statusInterval = 5 }
sync {
default.rsync,
source = "/tmp/src_src",
target = "sync_user@192.168.31.130::sync_data",
exclude = { ".*", "*.tmp", "*.bak" },
delete = true,
rsync = {
compress = false,
archive = true,
verbose = false,
timeout = 3600,
password_file = "/usr/local/lsyncd/etc/rsync1.pass"
}
}
sync {
default.rsync,
source = "/tmp/sync",
target = "sync_user2@192.168.31.130::data_backup",
exclude = { ".*", "*.tmp", "*.bak" },
delete = true,
rsync = {
compress = false,
archive = true,
verbose = false,
timeout = 3600,
password_file = "/usr/local/lsyncd/etc/rsync2.pass"
}
} # 配置认证密码,要求密码权限为400,否则rsync无法正常同步。
[root@baseos-1_192.168.31.140 ~]# cat /usr/local/lsyncd/etc/rsync.pass
123456sync
[root@baseos-1_192.168.31.140 ~]# cat /usr/local/lsyncd/etc/rsync2.pass
654321sync

目标机配置

[root@baseos-2_192.168.31.130 ~]# vim /etc/rsyncd.conf
uid=root
gid=root
max connections=10
log file=/var/log/rsyncd.log
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsyncd.lock
[sync_data]
comment=backup data
path=/tmp/src_dist
read only=no
exclude=test
auth users=sync_user
secrets file=/etc/rsyncd.passwd
[data_backup]
comment=backup data
path=/tmp/sync
read only=no
auth users=sync_user2
secrets file=/etc/rsyncd.passwd # 配置认证用户和密码
[root@baseos-2_192.168.31.130 ~]# vim /etc/rsyncd.passwd
sync_user:123456sync
sync_user2:654321sync

启动lsyncd服务

[root@baseos-1_192.168.31.140 ~]# /etc/init.d/lsyncd start
Starting lsyncd: [ OK ]
[root@baseos-1_192.168.31.140 ~]# cat /usr/local/lsyncd/logs/lsyncd.log
Tue Jun 27 14:09:09 2017 Normal: recursive startup rsync: /tmp/src_src/ -> sync_user@192.168.31.130::sync_data/ excluding
.*
*.tmp
*.bak
Tue Jun 27 14:09:09 2017 Normal: recursive startup rsync: /tmp/sync/ -> sync_user2@192.168.31.130::data_backup/ excluding
.*
*.tmp
*.bak
Tue Jun 27 14:09:09 2017 Normal: Startup of "/tmp/src_src/" finished.
cannot delete non-empty directory: frontends/php/local
cannot delete non-empty directory: frontends/php/local
cannot delete non-empty directory: frontends/php/include
cannot delete non-empty directory: frontends/php/include
cannot delete non-empty directory: frontends/php/conf
cannot delete non-empty directory: frontends/php/conf
cannot delete non-empty directory: frontends/php/app
cannot delete non-empty directory: frontends/php/app
cannot delete non-empty directory: frontends/php
cannot delete non-empty directory: frontends/php
cannot delete non-empty directory: frontends
Tue Jun 27 14:09:10 2017 Normal: Startup of "/tmp/sync/" finished.
Tue Jun 27 14:10:19 2017 Normal: Calling rsync with filter-list of new/modified files/dirs
/anaconda-ks.cfg
/
/install.log
/install.log.syslog
/ip_name_list.txt
/mysql_login
/name_list.txt
/nginx_reload
/nginx_start
/php_reload
/php_start
/redis6000.login
/redis6000.start
/redis6000.stop
/redis6001.login
/redis6001.start
/redis6001.stop
Tue Jun 27 14:10:20 2017 Normal: Finished a list after exitcode: 0
Tue Jun 27 14:20:09 2017 Normal: --- TERM signal, fading ---
Tue Jun 27 14:22:45 2017 Normal: recursive startup rsync: /tmp/src_src/ -> sync_user@192.168.31.130::sync_data/ excluding
.*
*.tmp
*.bak
Tue Jun 27 14:22:45 2017 Normal: recursive startup rsync: /tmp/sync/ -> sync_user2@192.168.31.130::data_backup/ excluding
.*
*.tmp
*.bak
Tue Jun 27 14:22:46 2017 Normal: Startup of "/tmp/sync/" finished.
Tue Jun 27 14:22:46 2017 Normal: Startup of "/tmp/src_src/" finished.

基于rsync的lsyncd自动同步配置的更多相关文章

  1. Rsync结合Inotify 实时同步配置(更新之前繁琐的传输认证)

    今天一位CU的友友根据之前介绍过 通过rsync+inotify-tools+ssh实现触发式远程实时同步  配置分发系统,但是由于认证繁琐,很容易出错,我今天重新整理了下,用rsync密码文件pas ...

  2. centos6.6配置rsync+sersync实现实时同步分布式多客户端分发同步

    1.sersync项目: sersync项目利用inotify与rsync技术实现对服务器数据实时同步到解决方案,其中inotify用于监控sersync所在服务器上文件系统的事件变化,rsync是目 ...

  3. rsyn远程自动同步

    rsync是远程自动同步工具,同时也能实现本地文件的复制,能够实现cp ,scp的功能,但是在远程同步上rsync要scp高效,因为scp能实现增量传输,每次都得全量传输,如果传输大文件时会很消耗网络 ...

  4. vscode 同步配置插件

    目前所用: 1.25.1版本 1,删除 vscode 客户端, 卸载vscode应用软件删除不了用户配置信息,,下载安装还会发现之前下载的插件和个人配置信息都还会重新加载出来 应先彻底清除已安装的插件 ...

  5. lsyncd实时同步搭建指南——取代rsync+inotify

    1. 几大实时同步工具比较 1.1 inotify + rsync 最近一直在寻求生产服务服务器上的同步替代方案,原先使用的是inotify + rsync,但随着文件数量的增大到100W+,目录下的 ...

  6. centos 配置rsync+inotify数据实时同步2

    一.Rsync服务简介 1. 什么是Rsync 它是一个远程数据同步工具,它在同步文件的同时,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“rsync算法”来使本地和远程两个主机 ...

  7. sersync基于rsync+inotify实现数据实时同步

    一.环境描述 需求:服务器A与服务器B为主备服务模式,需要保持文件一致性,现采用sersync基于rsync+inotify实现数据实时同步 主服务器A:192.168.1.23 从服务器B:192. ...

  8. Rsync+Inotify实现文件自动同步

    1>rsync概述 rsync的优点与不足 rsync与传统的cp.tar备份方式相比,rsync具有安全性高.备份迅速.支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求 ...

  9. Rsync+inotify自动同步数据

    一.简介 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐渐暴露出了很多不足. 首先,rsync在同步数据时,需要扫描所有文件后进行比对,进行差量传 ...

随机推荐

  1. php-fpm sock 进程池优化

    更改tcp为sock ;listen = 127.0.0.1:9000 listen = /dev/shm/php-cgi.sock pm = static \\静态进程池 pm.max_childr ...

  2. 2018-2019-1 20189221《Linux内核原理与分析》第一周作业

    Linux内核原理与分析 - 第一周作业 实验1 Linux系统简介 Linux历史 1991 年 10 月,Linus Torvalds想在自己的电脑上运行UNIX,可是 UNIX 的商业版本非常昂 ...

  3. centos上shellcheck的安装

    关于shellcheck的作用和功能,自行查阅. centos7 上安装shellcheck的过程中查了很多资料,大部分都是在ubunt下安装的,centos的比较少,然后好不容易看到一个https: ...

  4. PHP的数组合并

    1. array_merge 字符索引:后面的覆盖前面的. 如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值. 混合索引:如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到 ...

  5. 关于RBAC的文章

    权限系统与RBAC模型概述 RBAC权限管理模型 摘自慕课网的RBAC

  6. vue中使用hotcss--stylus

    页面中一直闪动这个. 后面改成scss后还是这样.还不知道原因

  7. Kotlin provideDelegate

    提供委托 这又是一个蛋疼的叫法,其实,就是给A和委托B之间插入一个中间件而已 这个中件间的作用是用了对委托的参数做一个校验 好了,别的不多说,直接给demo import kotlin.reflect ...

  8. (已解决)Xcode 运行cocos2dx弹出内部错误对话框(Internal Error)

    cocos2dx未捕获的异常升高.选择“继续”继续运行在一个不一致的状态.选择“崩溃”停止应用和崩溃报告一个错误文件. 莫名其妙,代码没有报错,运行时却弹出(内部错误)对话框出来: 再看看崩溃的底层代 ...

  9. Python对list列表及子列表进行排序

    python代码,对list进行升序排序,所有子列表也要进行排序 def iterList(listVar): listVar = sorted(listVar) for i,v in enumera ...

  10. 记录一则FGA审计“A用户对B用户某张表的更新操作”需求

    环境:Oracle 11.2.0.4 我这里测试A用户为JINGYU,要审计的表为B用户SCOTT下的EMP表.通过FGA来实现. 1.添加审计策略 2.测试审计效果 3.控制审计策略 1.添加审计策 ...