sersync2 实时同步配置
自动同步文件或者是目录
实现的方式:
在同步服务器上开启sersync,将监控路径中的文件同步到目标服务器,因此需要在同步服务器配置sersync,在同步目标服务器配置rsync
实验机器的地址分配:
Rsync 服务器: 192.168.1.112
Sersync2 服务器:192.168.1.110
系统环境
[root@liyao home]# uname -a
Linux liyao 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:35 EDT 2010 i686 i686 i386 GNU/Linux
[root@liyao home]#
一、 rsync 服务器的配置
1. 先查看下是否安装了 rsync 软件包
[root@liyao ~]# rpm -qa | grep rsync
rsync-2.6.8-3.1
[root@liyao ~]#
2. 如果系统默认安装了 rsync 软件包,我们可以使用 yum 命令将其卸载
[root@liyao ~]# yum remove -y rsync
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package rsync.i386 0:2.6.8-3.1 set to be erased
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Removing:
rsync i386 2.6.8-3.1 installed 392 k
Transaction Summary
================================================================================
Remove 1 Package(s)
Reinstall 0 Package(s)
Downgrade 0 Package(s)
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Erasing : rsync 1/1
Removed:
rsync.i386 0:2.6.8-3.1
Complete!
[root@liyao ~]#
3. 下载 rsync 3.0 的源码包
[root@liyao~]#wget-chttp://rsync.samba.org/ftp/rsync/rsync-3.0.8.tar.gz
--2011-08-20 08:05:05-- http://rsync.samba.org/ftp/rsync/rsync-3.0.8.tar.gz
Resolving rsync.samba.org... 216.83.154.106, 2001:470:1f05:1a07::1
Connecting to rsync.samba.org|216.83.154.106|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 790722 (772K) [application/x-gzip]
Saving to: `rsync-3.0.8.tar.gz'
100%[======================================>] 790,722 153K/s in 5.7s
2011-08-20 08:05:11 (135 KB/s) - `rsync-3.0.8.tar.gz' saved [790722/790722]
4. 将该软件包解压缩,并且进行编译安装
[root@liyao ~]# tar zxf rsync-3.0.8.tar.gz
[root@liyao ~]# cd rsync-3.0.8
[root@liyao rsync-3.0.8]# ./configure --prefix=/usr/ && make && make install
5. 建立 rsync 服务器的配置文件
uid = nobody
gid = nobody
use chroot = no
strict modes = yes
max connections = 200
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[test]
path = /home/
comment = test
read only = no
write only = no
ignore errors = yes
list = yes
uid = root
gid = root
6. 启动 rsync 的服务
[root@liyao ~]# rsync --daemon
[root@liyao ~]# netstat -npl | grep 873
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 7731/rsync
tcp 0 0 :::873 :::* LISTEN 7731/rsync
二、 配置Sersync2 服务器
二进制直接可运行
wget http://sersync.googlecode.com/files/sersync2.5_64bit_binary_stable_final.tar.gz
http://sersync.googlecode.com/files/sersync2.5_32bit_binary_stable_final.tar.gz
1、将该软件包下载下来之后解压缩,并进行安装
[root@liyao ~]# tar zxf sersync2.5_32bit_binary_stable_final.tar.gz
[root@liyao ~]# ls
anaconda-ks.cfg install.log.syslog
GNU-Linux-x86 sersync2.5_32bit_binary_stable_final.tar.gz
install.log
[root@liyao ~]# cd GNU-Linux-x86/
[root@liyao GNU-Linux-x86]# ls
confxml.xml sersync2
[root@liyao GNU-Linux-x86]# mkdir /etc/sersync2
[root@liyao GNU-Linux-x86]# cp confxml.xml /etc/sersync2/
[root@liyao GNU-Linux-x86]# cp sersync2 /usr/bin/
# 安装该软件只要把软件中的文件拷贝到相应的目录即可
2. 修改 Sersync2 的配置文件
[root@liyao ~]# cat /etc/sersync2/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="(.*)\.svn"></exclude>
<exclude expression="(.*)\.gz"></exclude>
<exclude expression="^info/*"></exclude>
<exclude expression="^static/*"></exclude>
</filter>
<inotify>
<delete start="true"/>
<createFolder start="true"/>
<createFile start="false"/>
<closeWrite start="true"/>
<moveFrom start="true"/>
<moveTo start="true"/>
<attrib start="false"/>
<modify start="false"/>
</inotify>
<sersync>
<localpath watch="/home">
<remote ip="192.168.1.112" name="test"/>
# 指定 rsyncd 服务器的地址和备份的模块名称
<!--<remote ip="192.168.8.39" name="tongbu"/>-->
<!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
<rsync>
<commonParams params="-artuz"/>
<auth start="false" users="root" passwordfile="/etc/rsync.pas"/>
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
<failLog path="/var/log/rsync_fail.log" 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>
<plugin name="command">
<param prefix="/bin/sh" suffix="" ignoreError="true"/> <!--prefix /opt/tongbu/mmm.sh suffix-->
<filter start="false">
<include expression="(.*)\.php"/>
<include expression="(.*)\.sh"/>
</filter>
</plugin>
<plugin name="socket">
<localpath watch="/opt/tongbu">
<deshost ip="192.168.138.20" port="8009"/>
</localpath>
</plugin>
<plugin name="refreshCDN">
<localpath watch="/data0/htdocs/cms.xoyo.com/site/">
<cdninfo domainname="ccms.chinacache.com" port="80" username="xxxx" passwd="xxxx"/>
<sendurl base="http://pic.xoyo.com/cms"/>
<regexurl regex="false" match="cms.xoyo.com/site([/a-zA-Z0-9]*).xoyo.com/images"/>
</localpath>
</plugin>
</head>
[root@liyao ~]#
3. 我们来运行如下的备份命令
在运行备份命令之前我们先看下 /home 这个目录下面有文件或者是目录
[root@liyao home]# ls -l
total 4
drwxr-xr-x 2 root root 4096 Aug 20 08:51 liyao
[root@liyao home]#
[root@liyao ~]# sersync2 -r -d -o /etc/sersync2/confxml.xml
set the system param
execute:echo 50000000 > /proc/sys/fs/inotify/max_user_watches
execute:echo 327679 > /proc/sys/fs/inotify/max_queued_events
parse the command param
option: -r rsync all the local files to the remote servers before the sersync work
option: -d run as a daemon
option: -o config xml name: /etc/sersync2/confxml.xml
daemon thread num: 10
parse xml config file
host ip : localhost host port: 8008
daemon start,sersync run behind the console
config xml parse success
please set /etc/rsyncd.conf max connections=0 Manually
sersync working thread 12 = 1(primary thread) + 1(fail retry thread) + 10(daemon sub threads)
Max threads numbers is: 22 = 12(Thread pool nums) + 10(Sub threads)
please according your cpu ,use -n param to adjust the cpu rate
------------------------------------------
rsync the directory recursivly to the remote servers once
working please wait...
execute command: cd /home && rsync -artuz -R --delete ./ 192.168.1.112::test >/dev/null 2>&1
run the sersync:
watch path is: /home
4. 我们到 rsyncd 服务器(1.112)的 /home 目录下看看是否有我在 1.110 /home/liyao 这个目录
[root@liyao home]# ls
liyao
[root@liyao home]#
那我们在从 1.110 的 /home 目录下创建 abc 目录,不用执行任何命令他会自动同步到 1.112 上
[root@liyao home]# mkdir abc
[root@liyao home]# ls
abc liyao
[root@liyao home]#
我们在去 1.112 上去看下,abc 目录已经同步过来了
[root@liyao home]# ll
total 8
drwxr-xr-x 2 root root 4096 Aug 21 04:12 abc
drwxr-xr-x 2 root root 4096 Aug 21 04:05 liyao
[root@liyao home]#
OK ,这样我们就大功告成了。
相关推荐
Sersync 数据同步配置 Sersync 是一个实时数据同步软件,旨在提供高效、可靠的数据同步解决方案。本文将对 Sersync 数据同步配置进行详细的介绍和解释。 Sersync 简介 Sersync 是一个基于 rsync 的数据同步工具,...
2. **sersync2.5.4_64bit_binary_stable_final.gz** - 一款基于rsync实现的实时数据同步工具。 #### 三、服务端与客户端配置 ##### 3.1 服务端配置 1. **创建备份目录** ```bash mkdir /backup/bookfm ``` 2. ...
2. 使用sersync实时监听和同步文件变化。 3. 设置定时任务(如Cron),定期运行Rsync进行全量同步和一致性检查。 例如,创建一个Cron任务: ```bash 0 0 * * * rsync -avz --delete /local/directory user@remote_...
2. 配置同步目标服务器rsync - 1 - 3.sersync安装与配置 - 1 - 3.1在主服务器上安装配置sresync - 2 - 3.2启动sersync - 2 - 3.3整体同步 - 3 - 3.4查看启动参数帮助 - 3 - 3.5指定配置文件 - 3 - 3.6指定默认的...
sersync的基本架构由两部分组成:sersync同步服务运行在主服务器上,负责监控文件变化;rsync服务运行在目标服务器上,负责接收从主服务器推送到的数据。sersync的设计简析则详细说明了这两部分是如何协同工作的。 ...
2. 安全性高:sersync使用rsync服务器进行文件同步,确保文件传输的安全性。 3. 配置灵活:sersync的配置文件confxml.xml可以根据需要进行修改,实现不同的同步策略。 rsync是sersync的依赖组件,需要在使用sersync...
【sersync 同步多个目录】是一种高效的数据同步解决方案,尤其适用于在多台服务器之间保持文件和目录的一致性。sersync 是一个基于 rsync 的增强型工具,能够提供更灵活的配置和管理功能,同时支持同步多个目录。 ...
可以使用 `sersync` 命令来启动同步过程,也可以使用 `sersync2` 命令来查看同步状态。 inotify 介绍 inotify 是 Linux 系统中的一个 API,用于监控文件系统的变化。sersync 使用 inotify API 来监控文件系统的...
rsync+sersync 实时同步 在数据同步中,实时同步是非常重要的,特别是在大数据时代。rsync 和 sersync 是两种常用的实时同步工具,本文将详细介绍如何使用 rsync 和 sersync 实现实时同步。 一、部署 rsync 服务 ...
Linux同步sersync是一种在Linux系统中实现高效、实时数据同步的工具,它以其轻量级、稳定性和高性能而受到很多管理员的青睐。sersync主要用于解决多节点间的数据一致性问题,尤其适用于分布式系统和备份场景。下面...
### Samba + Sersync2 + Rsync 实现 Windows 和 Linux 文件同步 #### Samba Samba 是一种在 Linux 或 Unix 类系统上实现 SMB 协议的软件包,主要用于实现 Linux 与 Windows 之间的文件共享及打印服务。通过 Samba ...
【sersync 数据实时同步绿色版】是一款高效的数据同步工具,专为实现本地目录与远程服务器之间的实时同步而设计。该软件基于开源的rsync工具,通过与rsync的配合,能够实现对指定目录的实时监控,一旦检测到数据变化...
在IT行业中,尤其是在服务器管理和运维领域,数据同步是一项至关重要的...这个`GNU-Linux-x86-sersync2.rar`文件提供了在CentOS 8上部署和使用`sersync`的资源,对于管理和维护大规模Linux集群的数据同步有着重要意义。
Sersync 是金山的周洋开发的一款基于 inotify + rsync 的大量文件的多服务器自动同步程序。 Sersync 使用 Linux 2.6 内核的 inotify 监控 Linux 文件系统事件,被监听目录下如果有文件发生修改,sersync 将通过...
rsync 数据实时同步实现方案 rsync 是一个 Unix/Linux 系统下的文件同步和传输工具,能够快速、安全、压缩地复制和同步文件。rsync 通过“rsync 算法”提供了一个客户机和远程服务器的文件同步的快速方法。 rsync ...
2. 增量同步:在后续的同步过程中,sersync只同步源目录自上次同步以来发生改变或新增的文件,提高了效率。 3. 单向同步:数据仅从源目录流向目标目录,常用于备份场景。 4. 双向同步:允许源目录和目标目录之间的...
- sersync:指出了sersync在文件监控和数据同步中的作用,尤其是在实时备份方面的重要价值。 部分内容所涉及的知识点: - RSYNC数据备份:详细介绍了Rsync的工作原理、使用场景和它的优点。 - RSYNC的作者:Andrew...
在IT领域,数据同步是日常运维工作中的重要环节,确保数据的一致性和完整性至关重要。...在使用`rsync+inotif与rsync+sersync同步软件包`时,可以根据实际需求选择合适的组件,以达到最佳的数据同步效果。
Sersync 是周洋开发的一款基于 inotify + rsync 的大量文件的多服务器自动同步程,开源协议为 New BSD License。 工作原理 以及架构 使用 Linux 2.6 内核的 inotify 监控 Linux 文件系统事件,被监听目录下如果有...
sersync +rsync实现数据实时同步 主机A 装sersync (数据源,源机器)192.168.0.63 主机B装rsync (备份端,目标机器)192.168.0.64 实验结果:主机A进行新增,修改,删除文件的操作,文件或目录发生了变化,主机...