1.1 实时备份

1.需求分析:

为什么要实时复制

因为nfs是单点非常的不安全  而通过定时任务备份会造成数据丢失 这是就需要需要实时备份

2实时方案

1).搭建好服务端backup与客户端nfs的rsync服务,使可以备份数据

a.服务端backup配置文件:

[root@rsync-backup ~]# cat /etc/rsyncd.conf

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

uid = rsync

gid = rsync

use chroot = no

max connections = 200

timeout = 300

ignore errors

read only = false

list = false

hosts allow = 172.16.1.0/24

hosts deny = 0.0.0.0/32

secrets file = /etc/rsync.password

[backup]

path = /rsync_backup

auth users = rsync_backup

创建校验文件 并将权限改为600

[root@rsync-backup ~]# cat /etc/rsync.password

rsync_backup:ms

创建用户 rsync 创建目录/ rsync_backup 并将属主属组改为rsync

b.客户端nfs

创建校验文件 并将权限改为600

[root@nfs01 /backup]# cat /etc/rsync.password

ms

创建要备份的目录/backup

2.)在nfs上搭好inotify-tools 使其可以监控事件

上文已将其安装,这里测试命令

端口1监控

[root@nfs01 /backup]# inotifywait --format '%w%f'  -rmqe create,delete,close_write   /backup/

/backup/a.txt

端口2测试

[root@nfs01 /backup]# rm -f a.txt

3)编写脚本 使当所监控的文件夹有事件发生时 立即备份

#!/bin/bash

inotifywait --format '%w%f'  -rmqe create,delete,close_write   /backup/|\

while read line

do

rsync -az /backup/ rsync_backup@backup::backup --password-file=/etc/rsync.password

done

检测有效

4)脚本的优化

#!/bin/bash

inotifywait --format '%w%f'  -rmqe create,delete,close_write   /backup/|\

while read line

do

if [ -e  $line  ];then

rsync -az $line rsync_backup@backup::backup --password-file=/etc/rsync.password

fi

cd /backup/ && rsync -az /backup/ --delete  rsync_backup@backup::backup --password-file=/etc/rsync.password

done

if 判断如果文件存在 将新创建的文件备份到backup服务器上

如果不存在 无差异备份一下

额外补充

watch ls /rsync_backup/ 每个2秒执行一下ls命令

将脚本放入后台执行[root@nfs01 /server/scripts]# sh  nfs-backup.sh &

[1] 9137

rsync+inotify-tools实时备份脚本的更多相关文章

  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. linux rsync +inotify 实现 实时同步

    前言:     rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rs ...

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

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

  5. rsync简介与rsync+inotify配置实时同步数据

    rsync简介 rsync是linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同步. rsync特性 rsync ...

  6. centos 配置rsync+inotify数据实时同步2

    一.Rsync服务简介 1. 什么是Rsync 它是一个远程数据同步工具,它在同步文件的同时,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“rsync算法”来使本地和远程两个主机 ...

  7. centos 配置rsync+inotify数据实时同步

    何为rsync? 定义: rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,非常适用于异地备份 何为源端和发起端? 在远程同步过程中,负责发起rs ...

  8. rsync+inotify实现实时同步案例

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

  9. Rsync+inotify实现实时同步

    1.1 inotify介绍 inotify是一种强大的.细粒度的.异步的文件系统事件控制机制.linux内核从2.6.13起,加入了inotify支持,通过inotify可以监控文件系统中添加.删除. ...

随机推荐

  1. nginx状态监控统计

    nginx是一款很优秀的web服务器软件,很多地方都有接触和使用到他,大部分的场景压力还没达到需要调优的地步,而调优的难点其实不在于调,而在于各项状态的监控,能够很快的找到资源在什么时候出现问题,调整 ...

  2. 【Redis】利用 Redis 实现分布式锁

    技术背景 首先我们需要先来了解下什么是分布式锁,以及为什么需要分布式锁. 对于这个问题,我们可以简单将锁分为两种--内存级锁以及分布式锁,内存级锁即我们在 Java 中的 synchronized 关 ...

  3. asyncio多进程+pyppeteer浏览器控制+pyquery解析实现爬虫demo

    import asyncio from pyppeteer import launch from pyquery import PyQuery as pq async def main(): brow ...

  4. 在iOS 4中创建一个LDGradientView样式的渐变视图

    本教程将演示如何在 Swift 4 中创建一个多功能的.@IBDesignable 样式的渐变视图类.你可以将 CAGradientView 放到 storyboard 中,并在设计时预览,或者以编程 ...

  5. Python 调用Get接口

    import requests,jsonurl = 'http://localhost:30627/api/jobs/GetNuberId?id=2'req = requests.get(url)re ...

  6. vue中使用transition和animate.css动画效果

    一.单个动画中,使用div中引用animate动画 1.下载依赖 npm install animate.css –save 2.main.js中全局引用 import animate from 'a ...

  7. 对KVC和KVO的理解

    html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333; --select ...

  8. Java基础教程——字节流

    IO流 水流 特点 连续性 逝者如斯夫,不舍昼夜: 方向性 一江春水向东流.水往低处流.百川东到海,何时复西归?少壮不努力,老大徒伤悲! 源头尽头 唯有源头活水来:覆水难收 Java里的IO也有这样的 ...

  9. CSP2020复赛游记

    CSP2020复赛游记 由于本蒟蒻侥幸通过PJ和TG的分数线并且侥幸的拿了一等,所以侥幸的来参加复赛 11.04~11.05 期中考,挂 11.06 对答案,炸 11.07 开始了第一次CSP复赛 坐 ...

  10. PriorityQueue 优先队列的实现

    PriorityQueue 的 implementation PriorityQueue即是优先队列.通俗的说就是体育课的时候老师要求从高到低排序,老师能直接一眼看出谁是最高的在班级里.当这个最高的离 ...