ersync 实时同步

实时同步概述

什么是实时同步

实时同步是一种只要当前目录发生变化则会触发一个事件,事件触发后会将变化的目录同步至远程服务器

为什么要实时同步

保证数据的连续性, 减少人力维护成本,解决nfs单点故障

结合sersync+rsync实时同步实战

环境准备

主机名 角色 外网IP 内网IP
nfs rsync的客户端 10.0.0.31 172.16.1.31
backup rsync的服务端 10.0.0.41 172.16.1.41

部署sersync(客户端)

安装sersync的依赖包

[root@nfs ~]$ yum install rsync inotify-tools -y

创建存放源码包的目录

[root@nfs ~]$ mkdir /source_code

获取sersync的安装包

[root@nfs ~]$ cd /source_code/
[root@nfs /source_code]$ wget http://test.driverzeng.com/other/sersync2.5.4_64bit_binary_stable_final.tar.gz

绿色软件解压即用

[root@nfs /source_code]$ tar xf sersync2.5.4_64bit_binary_stable_final.tar.gz
[root@nfs /source_code]$ ll
total 712
drwxr-xr-x 2 root root 41 Oct 26 2011 GNU-Linux-x86
-rw-r--r-- 1 root root 727290 May 9 2020 sersync2.5.4_64bit_binary_stable_final.tar.gz

创建服务安装目录

[root@nfs ~]$ mkdir /app

将软件安装在app目录下

[root@nfs ~]$ mv /source_code/GNU-Linux-x86/ /app/

查看程序相关文件

[root@nfs ~]$ cd /app/
[root@nfs /app]$ ll GNU-Linux-x86/
total 1772
#程序配置文件
-rwxr-xr-x 1 root root 2214 Oct 26 2011 confxml.xml
#程序启动文件
-rwxr-xr-x 1 root root 1810128 Oct 26 2011 sersync2

修改配置文件

[root@nfs /app/GNU-Linux-x86]$ vim confxml.xml 

#修改inotify相关的配置
<inotify>
<delete start="true"/> -----监控删除
<createFolder start="true"/> -----监控创建目录
<createFile start="true"/> -----监控创建文件
<closeWrite start="true"/> -----监控写入
<moveFrom start="true"/> -----监控从哪移动过来
<moveTo start="true"/> -----监控移动到哪里去
<attrib start="true"/> -----监控修改文件属性
<modify start="true"/> -----监控修改文件内容
</inotify> <sersync>
<localpath watch="/opt/data/nfs"> -----指定推送的/需要实时同步的目录
<remote ip="172.16.1.41" name="nfs_backup"/> -----指定推送的服务端ip和模块
<!--<remote ip="192.168.8.39" name="tongbu"/>-->
<!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
<rsync>
<commonParams params="-az"/> -----指定rysnc推送命令的选项
<auth start="true" users="rsync_backup" passwordfile="/tmp/rsync.passwd"/> -----指定rsync推送命令需要的虚拟用户以及密码文件 #用sersync2启动文件启动服务,缺点是只能利用kill -9终止进程
[root@nfs ~]$ /app/sersync/sersync2 -rdo /app/sersync/confxml.xml

使用systemd管理没有启动脚本的服务

[root@nfs ~]$ vim /usr/lib/systemd/system/sersyncd.service
[Unit]
#描述
Description=This is sersync start service
#描述
After=xxx [Service]
#后台运行
Type=forking
ExecStart=/app/sersync/sersync2 -rdo /app/sersync/confxml.xml ----服务启动命令
ExecStop=kill -3 `ps -ef|grep [s]ersync|awk '{print $2}'` ----服务停止命令
ExecReload=kill -1 `ps -ef|grep [s]ersync|awk '{print $2}'` ----服务重启命令
PrivateTmp=true
#ps -ef|grep [s]ersync|awk '{print $2}'截取的是sersyncd服务的pid
[Install]
WantedBy=multi-user.target [root@nfs ~]$ systemctl start sersyncd
[root@nfs ~]$ ps -ef|grep sersync
root 8413 1 0 21:39 ? 00:00:00 /app/sersync/sersync2 -rdo /app/sersync/confxml.xml
root 8448 6998 0 21:40 pts/0 00:00:00 grep --color=auto sersync

源码包的安装步骤

源码包的安装步骤
解压
生成
编译
安装

ersync 实时同步的更多相关文章

  1. inotify+rsync实现实时同步部署

    1.1.架构规划 1.1.1架构规划准备 服务器系统 角色 IP Centos6.7 x86_64 NFS服务器端(NFS-server-inotify-tools) 192.168.1.14 Cen ...

  2. 实战:rsync+inotify实现数据实时同步

    Linux 内核从 2.6.13 版本开始提供了 inotify 通知接口,用来监控文件系统的各种变化情况,如文件存取.删除.移动等.利用这一机制,可以非常方便地实现文件异动告警.增量备份,并针对目录 ...

  3. inotify +rsync进行实时同步

    1.安装rpm -ivh http://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpmyum -y install ino ...

  4. Centos 6.5 rsync+inotify 两台服务器文件实时同步

    rsync和inotify是什么我这里就不在介绍了,有专门的文章介绍这两个工具. 1.两台服务器IP地址分别为: 源服务器:192.168.1.2 目标服务器:192.168.1.3 @todo:从源 ...

  5. lsyncd 实时同步

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

  6. Linux下Rsync+sersync实现数据实时同步

    inotify 的同步备份机制有着缺点,于是看了sersync同步,弥补了rsync的缺点.以下转自:http://www.osyunwei.com/archives/7447.html 前言: 一. ...

  7. 烂泥:rsync与inotify集成实现数据实时同步更新

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 上篇文章我们介绍了如何使用rsync同步文件,这篇文章我们再来介绍下,如何把rsync与inotify集成实现数据的实时同步. 要达到这个目的,我们需要 ...

  8. Rsync+lsync实现触发式实时同步

    使用rsync+lsync实现触发式实时同步 服务器信息 centos6.5 主:192.168.5.4 搭建lsync 从:192.168.5.3 搭建rsync 1.1 从服务器设置 # yum ...

  9. rsync+inotify实现实时同步案例--转

    转自:http://chocolee.blog.51cto.com/8158455/1400596 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐 ...

  10. rsync组合inotify-tools完成实时同步[转]

    一. 什么是inotify inotify是一种强大的.细粒度的.异步的文件系统事件监控机制,Linux内核从2.6.13开始引入,允许监控程序打开一个独立文件描述符,并针对事件集监控一个或者多个文件 ...

随机推荐

  1. python-实现二叉树

    # encoding=utf-8 class Node(object): def __init__(self, item): self.item = item self.lchild = None s ...

  2. 实验七:基于REST API的SDN北向应用实践

    (一)基本要求 编写Python程序,调用OpenDaylight的北向接口实现以下功能 (1) 利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight: (2) 下发指令删除s1 ...

  3. Konga-Kong网关的权限控制指定消费者

    刚开始陷入了误区了,网上很多参考例子都是如何实现身份证验证,而且看到konga上面配置身份插件的地方基本都有consumer一个配置项,一直纠结在这个如何通过key-auth实现指定的route或者s ...

  4. 后台运行&和nohup使用

    这里首先先介绍一下 ctrl+z bg fg jobs 命令 下面为了观察效果,test1.sh脚本不停的输出hello ctrl + z ,会使一个正在运行的进程挂起(暂停)到后台,而且执行jobs ...

  5. RPA的数字化标签

    随着中国经济的飞速发展,"人口红利"也正在不断消失,在过去几十年中,我们已经看到了各种智能化.自动化技术的进步对各行各业产生的巨大影响.但在现代金融行业中,仍然有许多重复.简单.繁 ...

  6. CF309E 题解

    11:30,过题.12:50,忘记做法. 吃饭时不该看未来日记的,Ynoj 害人不浅(确信). 以上为个人吐槽. 题目大意 不知道题目翻译是个啥...但讨论区有大佬给出了精确的翻译.我改得符合题目背景 ...

  7. 从零开始学习Java系列之Java运行机制与跨平台特性

    全文大约[4000]字,不说废话,只讲可以让你学到技术.明白原理的纯干货!并带有丰富的案例及配图,让你更好地理解和运用文中的技术概念,给你带来具有足够启迪的思考-- 在上一篇文章中,壹哥给大家介绍了J ...

  8. Java面试——SQL语句题

    更多内容,前往IT-BLOG 一.行转列问题 现有表格A,按照以下格式排列: 姓名 收入类型 收入金额 Tom 年奖金 5w Tom 月工资 10k Jack 年奖金 8w Jack 月工资 12k ...

  9. Schillace 定律 背后的 Sam Schillace

    微软semantic-kernel(SK)团队发布了一篇博客文章:Early Lessons From GPT-4: The Schillace Laws[1] ,微软的CVP , Deputy CT ...

  10. spark中的持久化机制以及lineage和checkpoint(简含源码解析)

    spark相比MapReduce最大的优势是,spark是基于内存的计算模型,有的spark应用比较复杂,如果中间出错了,那么只能根据lineage从头开始计算,所以为了避免这种情况,spark提供了 ...