rsync sersync (文件&&mysql postgressql数据库)实时同步

集成keepalived sersync 多机免密互信autossh 一键安装脚本: https://download.csdn.net/download/a1058926697/85371873

实时同步的概述

什么是实时同步

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

为什么要实时同步

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

serync+rsync实时同步

环境准备

主机名角色外网IP内网ip
nfsrsync的客户端10.0.0.31172.16.1.31
backuprsync的服务端10.0.0.41172.16.1.41

部署sersync(客户端)

  • 1.安装sersync的依赖包
[root@nfs ~]# yum install rsync inotify-tools -y
  • 2.创建源码包的目录
[root@nfs ~]# mkdir /source_code
  • 3.获取sersync的二进制包
[root@nfs /source_code]# wget http://test.driverzeng.com/other/sersync2.5.4_64bit_binary_stable_final.tar.gz

root@nfs /source_code]# ll
-rw-r--r-- 1 root root 727290 May  9  2020 sersync2.5.4_64bit_binary_stable_final.tar.gz

  • 4.绿色软件解压即用
[root@nfs source_code]# tar xf sersync2.5.4_64bit_binary_stable_final.tar.gz

  • 5.创建服务安装目录
[root@nfs source_code]# mkdir /app
  • 6.将软件安装在app目录下并改名
[root@nfs source_code]# mv GNU-Linux-x86 /app/sersync
  • 7.查看程序相关文件
[root@nfs sersync]# ll# 程序配置文件-rwxr-xr-x 1 root root    2219 Jul  8 18:55 confxml.xml# 程序启动文件-rwxr-xr-x 1 root root 1810128 Oct 26  2011 sersync2
  • 8.修改配置文件
[root@nfs sersync]# 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="/nfs_data">            <remote ip="172.16.1.41" name="nfs_backup"/>            <!--<remote ip="192.168.8.39" name="tongbu"/>-->            <!--<remote ip="192.168.8.40" name="tongbu"/>-->        </localpath>        <rsync>            <commonParams params="-az --delete"/>            <auth start="true" users="dsr_backup" passwordfile="/etc/rsync.pas"/>            <userDefinedPort start="false" port="874"/><!-- port=874 -->            <timeout start="false" 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>
  • 9.创建客户端的密码文件
[root@nfs sersync]# echo '123' > /etc/rsync.pas
  • 10.给密码文件授权
[root@nfs sersync]# chmod 600 /etc/rsync.pas
  • 11.启动服务
[root@nfs /app/sersync]# /app/sersync/sersync2 -dro /app/sersync/confxml.xml
  • .12.使用systemd管理没有启动脚本的服务
    • 所有服务的启动服务脚本目录:/usr/lib/systemd/system
      • 安装rpm包,他的启动脚本自动保存在/usr/lib/systemd/system里
      • 安装二进制包和源码包的启动脚本需要自己写
[root@nfs nfs_data]# 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}'`
## true表示给服务分配独立的临时空间
PrivateTmp=true

[Install]
WantedBy=multi-user.target

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sunday_ding

一分钱也是爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值