一、服务节点安装inotify-tools。

确保系统后以下输出=>

[root@xxxx]# ll /proc/sys/fs/inotify/
total 0
-rw-r--r-- 1 root root 0 Aug 23 20:02 max_queued_events
-rw-r--r-- 1 root root 0 Aug 23 20:02 max_user_instances
-rw-r--r-- 1 root root 0 Aug 23 20:02 max_user_watches

(1)yum -y install inotify-tools.x86_64

(2)配置server端的inotify监测脚本

<1>cat /opt/zkrsync/rsyncfile.sh

#!/bin/bash
host_pubbak=10.0.138.136 src=/data/zookeeper
dest_pubbak=zkpub
user=root /bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e close_write,delete,create,attrib $src \
| while read file
do
/bin/rsync -vzrtopg --delete --progress $src $user@$host_pubbak::$dest_pubbak
echo "${$(date +%Y%m%d_%H%M%S)} ${files} was rsynced" >> /tmp/rsync.log 2>&1
done

sh /opt/zkrsync/rsyncfile.sh &

<2>supervisord配置

cat /etc/supervisord.d/rsync.ini

[program:rsync]
command=/opt/zkrsync/rsyncfile.sh
startsecs=3
startretries=3
stopsignal=QUIT
stopasgroup=true
stopwaitsecs=10
user=root
redirect_stderr=true
stdout_logfile=/data/log/rsync/running.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=10
stderr_logfile=/data/log/rsync/error.log
stderr_logfile_maxbytes=50MB
stderr_logfile_backups=10

二、客户端

(1)rsync配置文件设置

cat /etc/rsyncd.conf
uid = root
gid = root
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[zkpub]
path = /tmp
comment = zk transaction log trans
read only = no
hosts allow = 10.0.138.152 #server端ip
hosts deny = * 

(2)启动rsync进程服务

rsync --daemon --config=/etc/rsyncd.conf -v

三、 测试

向这个目录"/tmp/test"进行文件的增删改查操作,日志样例如下:

sending incremental file list
test/
deleting test/wuwu sent 40 bytes received 12 bytes 104.00 bytes/sec
total size is 0 speedup is 0.00
sending incremental file list
test/
test/iiii
5 100% 0.00kB/s 0:00:00 (xfer#1, to-check=0/2)

测试ok没有问题。

028_rync和inotify实现实时备份的更多相关文章

  1. 搭建rsync+inotify实现实时备份

    一.环境搭建说明 系统环境 CentOS7.5 备份节点 主机名:backup01 IP地址:172.16.2.41 数据节点 主机名:nfs-master IP地址:172.16.2.31 二.在备 ...

  2. rsync + inotify 数据实时同步

    一.rsync介绍 rsync英文全称为Remote synchronization,从软件的名称就可以看出来,Rsync具有可是本地和远程两台主机之间的数据快速复制同步镜像.远程备份的功能,这个功能 ...

  3. 通过rsync+inotify实现数据的实时备份

    我讲到过利用rsync实现数据的镜像和备份,但是要实现数据的实时备份,单独靠rsync还不能实现,本文就讲述下如何实现数据的实时备份. 一.rsync的优点与不足 与传统的cp.tar备份方式相比,r ...

  4. 全网数据实时备份方案[inotify,sersync]

    环境搭建 0.环境安装   gcc  yum install gcc -y 1.安装inotify(源码软件包) 文件下载:https://files.cnblogs.com/files/ftl101 ...

  5. 实时备份工具之inotify+rsync

    1.inotify简介 inotify 是一个从 2.6.13 内核开始,对 Linux 文件系统进行高效率.细粒度.异步地监控机制, 用于通知用户空间程序的文件系统变化.可利用它对用户空间进行安全. ...

  6. 通过rsync+inotify实现数据的实时备份(多台备份机)

    在前面的博文中,我讲到过利用rsync实现数据的镜像和备份,但是要实现数据的实时备份,单独靠rsync还不能实现,本文就讲述下如何实现数据的实时备份. 一.rsync的优点与不足  与传统的cp.ta ...

  7. 通过rsync+inotify实现数据实时备份

    rsync的优点与不足 与传统的cp,scp,tar,备份方式相比,rsync具有安全性高备份迅速支持增量备份的优点,可以满足对实时性要求不高的需求,例如定期备份文件服务器数据到远端服务器,但是,当数 ...

  8. 通过rsync+inotify实现数据的实时备份 【转载】

       在前面的博文中,我讲到过利用rsync实现数据的镜像和备份,但是要实现数据的实时备份,单独靠rsync还不能实现,本文就讲述下如何实现数据的实时备份. 一.rsync的优点与不足  与传统的cp ...

  9. 6、inotify实时备份

    备份用户nfs共享文件系统,存储单点解决方案inotify+rsync(增量,无差异备份),inotify是单线程, inotify是一种强大的,细粒度的,异步的文件系统事件监控机制,通过加入了ino ...

随机推荐

  1. 拆分string 用空格 逗号

    string that have both comma and space struct tokens: std::ctype<char>{ tokens(): std::ctype< ...

  2. Centos6.5 防火墙开放端口

    0. 说明 centos6.5处于对安全的考虑,严格控制网络进去.所以在安装mysql或者使用tomcat,需要开放端口3306或8080. 通常的解决办法有两个.一个是直接关闭防火墙(非常不推荐): ...

  3. hashlib模块(二十八)

    # 1.什么叫hash:hash是一种算法(3.x里代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法),该算法接受传入的 ...

  4. 去除外显子低质量reads时弹出错误“Invalid quality score value (char '#' ord 35 quality value -29) on line 4”和“Invalid quality score value (char '.' ord 46 quality value -18) on line 12”的解决方法

    楼主跑以下程序时分别弹出了“fastq_quality_filter: Invalid quality score value (char '.' ord 46 quality value -18) ...

  5. Maven 自动打包上传到私服 Nexus

    转载于:http://blog.csdn.net/jerome_s/article/details/54410178           Maven获取jar的默认顺序是         

  6. String转换为Map

    Map<String,Integer> rulsMap = new Gson().fromJson(cachedobj.toString(),new TypeToken<Map< ...

  7. Redis 安全配置

    1.禁止一些高危命令 修改 redis.conf 文件,添加 rename-command FLUSHALL "" rename-command FLUSHDB "&qu ...

  8. 1、Python-HelloWorld

    安装 环境下载 https://www.python.org/downloads/ IDE(PyCharm)下载 https://www.jetbrains.com/pycharm/download/ ...

  9. nodeJS安装和环境变量的配置

    推荐博客:https://www.cnblogs.com/zhouyu2017/p/6485265.html npm config list 获取npm配置信息 ------------- 主要写一下 ...

  10. JAVA-常用集合类型转换例子(基础必备)

    package com.net.xinfang.reflect; import java.util.ArrayList; import java.util.Arrays; import java.ut ...