实时同步sersync实战

什么是实时同步

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

sersync和rsync+inotify对比

提到数据同步就必然会谈到rsync,一般简单的服务器数据传输会使用ftp/sftp等方式,但是这样的方式效率不高,不支持差异化增量同步也不支持实时传输。针对数据实时同步需求大多数人会选择rsync+inotify-tools的解决方案,但是这样的方案也存在一些缺陷(文章中会具体指出),sersync是国人基于前两者开发的工具,不仅保留了优点同时还强化了实时监控,文件过滤,简化配置等功能,帮助用户提高运行效率,节省时间和网络资源。

项目地址

sersync项目实战

1)环境准备

角色 外网IP(NAT) 内网IP(LAN) 安装工具
web01 eth0:10.0.0.7 eth1:172.16.1.7 部署代码(提交作业)
nfs-server eth0:10.0.0.31 eth1:172.16.1.31 rsync+inotify+sersync
backup eth0:10.0.0.41 eth1:172.16.1.41 rsync-server

1.实时同步哪台服务器的目录,那么就在哪台服务器上安装sersync

2.只要安装sersync 就必须安装rsyncinotify

安装rsync的服务端(backup)

1)安装rsync服务

[root@backup ~]# yum install -y rsync

2)配置文件

[root@backup ~]# vim /etc/rsyncd.conf uid = wwwgid = wwwport = 873fake super = yesuse chroot = nomax connections = 200timeout = 600ignore errorsread only = falselist = falseauth users = rsync_backupsecrets file = /etc/rsync.passwdlog file = /var/log/rsyncd.log#####################################[zls]comment = welcome to oldboyedu backup!path = /backup​[nfs]comment = welcome to oldboyedu backup!path = /data

3)创建用户

[root@backup ~]# groupadd www -g 666[root@backup ~]# useradd www -u 666 -g 666 -s /sbin/nologin -M

4)创建目录并授权

[root@backup ~]# mkdir /data  /backup[root@backup ~]# chown -R www.www /data/ /backup/

5)创建虚拟用户的密码文件并授权

[root@backup ~]# echo 'rsync_backup:123' > /etc/rsync.passwd chmod 600 /etc/rsync.passwd

6)启动rsync服务

[root@backup ~]# systemctl start rsyncd

NFS服务端部署sersync

1)安装sersync需要依赖rsyncinotify

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

2)下载sersync

[root@nfs ~]# wget https://raw.githubusercontent.com/wsgzao/sersync/master/sersync2.5.4_64bit_binary_stable_final.tar.gz

3)部署sersync

源码包:解压 生成 编译 安装

解压:

[root@nfs ~]# tar xf sersync2.5.4_64bit_binary_stable_final.tar.gz

4)移动并改名

[root@nfs ~]# mv GNU-Linux-x86 /usr/local/sersync

5)编辑配置文件

[root@nfs ~]# vim /usr/local/sersync/confxml.xml    <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>       #监控的目录,改成/data        <localpath watch="/opt/tongbu">           #推送的IP(backup服务的IP)172.16.1.41 ,name是模块名            <remote ip="127.0.0.1" name="tongbu1"/>            <!--<remote ip="192.168.8.39" name="tongbu"/>-->            <!--<remote ip="192.168.8.40" name="tongbu"/>-->        </localpath>        <rsync>           #执行rsync的参数改成 -az            <commonParams params="-artuz"/>           #虚拟用户的用户名和密码文件,开启认证start=true rsync_backup   /etc/rsync.pass            <auth start="false" users="root" passwordfile="/etc/rsync.pas"/>            <userDefinedPort start="false" port="874"/><!-- port=874 -->           #设置超时时间            <timeout start="true" time="100"/><!-- timeout=100 -->            <ssh start="false"/>        </rsync>        <failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60mins execute once-->        <crontab start="false" schedule="600"><!--600mins-->            <crontabfilter start="false">                <exclude expression="*.php"></exclude>                <exclude expression="info/*"></exclude>            </crontabfilter>        </crontab>        <plugin start="false" name="command"/>    </sersync>​​#完整配置文件[root@nfs ~]# cat /usr/local/sersync/confxml.xml<?xml version="1.0" encoding="ISO-8859-1"?><head version="2.5">    <host hostip="localhost" port="8008"></host>    <debug start="false"/>    <fileSystem xfs="false"/>    <filter start="false"> <exclude expression=

转载于:https://www.cnblogs.com/223zhp/p/11372918.html

实时同步sersync相关推荐

  1. sersync实时同步 sersync项目实战 nfs单点故障解决

    文章目录 sersync实时同步 什么是实时同步 为什么实时同步 实现同步的原理 实时同步工具的选择 sersync项目实战 1.环境准备 安装web服务器(web01和web02两台机器上全需要执行 ...

  2. MySQL :rsync+sersync文件实时同步

    文章目录 1. rsync是什么 rsync+sersync文件实时同步 一:环境 二:备份服务器操作 三:数据源服务器操作 安装rsync客户端软件 安装sersync工具,实时触发rsync进行同 ...

  3. linux 实时备份文件内容,实现实时同步备份总结

    实现实时同步备份总结 \ 一. 实时同步备份原理 1.inotify实时监控 2.rsync实时传输 3.sersync将两者结合实现实时同步备份 \ 二. 实时同步备份方法 \ 1. inotify ...

  4. rsync+sersync实现数据文件实时同步

    rsync+sersync实现数据文件实时同步 使用rsync+sersync,实现nfs与backup服务器间实时数据同步 一.数据同步工具介绍 rsync是一款开源的.快速的.多功能的.可实现全量 ...

  5. RedHat Linux下利用sersync进行实时同步数据

    拓扑图如下: 可以有多个目标服务器,本机同步也可以(要同时开sersync服务和rsync守护进程) 需求: 1.源服务器上 要备份的是/data/bookfm/doc/book 目录包括子目录下的o ...

  6. sersync+rsync做实时同步

    (1).实验环境 源主机:youxi1 192.168.5.101 目的主机:youxi2 192.168.5.102 目的:实时同步数据 sersync默认端口874,rsync默认端口873 (2 ...

  7. sersync + rsync 实现文件的实时同步

    这里有一点要特别注意了,就是在你完成备份之后,先不要把本地的文件都给删除了,先把服务停了之后再删除文件, 因为你已删除,检查到两边不一致,他又会把备份端给删除了.所以特别得注意了.这里吃过一次亏. 还 ...

  8. Rsync和Sersync(企业实时同步方案)

    注:本文章依据参考文章中的信息资料结合自己的实践操作而成 一.实验环境介绍 系统版本:Cent OS 7.4 X64 内核版本:3.10.0-693.5.2.el7.x86_64 系统采用最小化安装, ...

  9. sersync进行实时同步数据

    上面是网络 可以有多个目标服务器,本机同步也可以(要同时开sersync服务和rsync守护进程) 需求: 1.源服务器上 要备份的是  /opt/tongbu1/ /opt/tongbu2/目录包括 ...

最新文章

  1. 汇总python三种数据结构list,set,dict的常见操作
  2. 【深度学习入门到精通系列】神经进化 (NeuroEvolution)
  3. Day_03-函数和模块的使用
  4. 【搜索树】高级打字机(luogu 1383)
  5. socket抓包_64、抓包分析tcp与udp
  6. 这就是为什么您的开源项目失败
  7. 关于Viual Studio 改变编辑器背景背景及背景图片(转)
  8. 离线Linux时间手动校准
  9. 洛谷.3733.[HAOI2017]八纵八横(线性基 线段树分治 bitset)
  10. android 平板z97,高清配置 翰智Z97-W通话版平板评测
  11. PHP使用文字检索,关键词查询,分词查询
  12. mysql 清除bin文件内容_mysql 日志文件mysql-bin文件清除方法
  13. python对excel进行读写操作
  14. 正和岛青年徽商正和塾小组2021年首聚—走进掌榕
  15. 【零基础】极星9.3下单详解
  16. 深入理解设计模式-抽象工厂模式
  17. 1256:献给阿尔吉侬的花束
  18. Nginx从入门到应用-姜威-专题视频课程
  19. Appium笔记1--基于python windows下的环境搭建
  20. 如何解决“启用windows功能NetFx3时出错

热门文章

  1. python重写_python 重载和重写的区别
  2. 人脸识别 | 论文参考
  3. 上海交大安泰学院考研经验
  4. PCL入门(二)——PCD
  5. 液晶显示器屏幕怎么清洗而不损害屏幕?
  6. NVT | NVT SDK WiFi开发与学习
  7. 小生意,大智慧网络开店之省钱妙招
  8. 这些音频文件翻译技巧快收好,简单又好用
  9. Google雇佣Google+源代码发掘者Florian Rohrweck
  10. java从入门到精通 ppt_《Java从入门到精通》第4版全书完整PPT课件