实时同步服务
实时同步工作原理
a.创建要存储数据的目录
b.利用实时同步的软件监控我们进行备份的数据目录
c.利用rsync服务进行数据推送传输备份
实时同步服务软件部署
a inotify+rsync实时同步备份
1)安装inotify
inotify-tools(yum)
说明:epel源
/usr/bin/inotifywait <----实现对数据目录信息变化j监控
/usr/bin/inotifywatch <----监控数据信息变化,对变化信息进行统计
[root@nfs01 inotify]# ll
total 0
-rw-r--r-- 1 root root 0 Apr 7 23:06 max_queued_events
-rw-r--r-- 1 root root 0 Apr 7 23:06 max_user_instances
-rw-r--r-- 1 root root 0 Apr 7 23:06 max_user_watches
[root@nfs01 inotify]# pwd
/proc/sys/fs/inotify
max_user_watches:设置inotifywait或inotifywatch命令可以监控的文件数量(单进程)
默认只能监控8192个文件
max_user_instances:设置每个用户可以运行的inotifywait或inotifywatch命令的进程数
默认每个用户开启inotify服务128个进程
max_queued_events:设置inotify实例事件(events)队列可容纳的事件数量
默认监控事件队列长度为16384
2) 部署rsync守护进程
rsync服务端部署
a.检查是否有rsync
b.编写rsync主配置文件
c.创建备份目录管理用户
d.创建备份目录,并进行授权
e.创建认证文件,编写认证用户和密码信息,设置文件权限600
f.启动rsync守护进程
rsync客户端部署
a.检查是否有rsync
b.创建认证文件,编写认证用户密码信息即可,设置文件权限600
c.利用客户端进行数据同步测试
3)inotify服务与rsync服务建立联系(shell脚本)
rsync软件应用命令
rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
inotify命令
-m | --monitor 始终保持事件监听状态
-r 进行递归监控
-q|--quiet 将无用的输出信息,不显示
--timefat(fmt) 设定日期的格式
man strftime 获取更多时间格式
--format<fmt> 命令执行过程中,输出的信息格式
-e 指定监控的事件信息
man inotifywait .查看所有参数说明和所有可以监控的事件信息
总结主要用到的事件信息:
create创建,delete删除,moved_to移入,close_write修改
inotifywait -mrq --timefmt "%F" --format "%T %w%f 事件信息:%e" /data
2021-04-10 /data/dir01/file04.txt 事件信息:OPEN
inotifywait -mrq --timefmt "%F" --format "%T %w%f 事件信息:%e" -e create /data <---指定监控创建事件信息
2021-04-10 /data/dir01/file05.txt 事件信息:CREATE
inotifywait -mrq --format "%w%f" -e create,delete,moved_to,close_write /data
以上为实时监控同步过程所需要的重要监控命令
##编写脚本实现inotify与rsync软件结合
#!/bin/bash
inotifywait -mrq --format "%w%f" -e create,delete,moved_to,close_write /data
while read line
do
rsync -avz --delete /data rsync_backup@172.16.1.41::backup b--password-file=/etc/rsync.password
done
shell循环语法总结:
for循环 for xx in 循环条件内容信息;do xxx; done
while循环 while循环条件:do xx : done <--- 只要条件满足,就一直循环
while true: do xx: done <---死循环
运输工作中编写自动化脚本规范:
1.先完成基本需求
2.优化完善脚本内容
3.写一些注释说明信息
4.进行反复测试
4)测试
b sersync+rsync实时同步备份
实时同步软件概念介绍
inotify软件
linux内核从2.6.13起
加入inotify支持,通过Inotify可以监控文件系统中添加,删除,修改,移动等各种事情,利用这个内核接口,
第三方软件就可以监控文件系统下文件的各种变化,而inotify-tools正是实施这样监控的软件

浙公网安备 33010602011771号