rsync下行同步和inotify实时同步部署

2024-03-23 08:08

本文主要是介绍rsync下行同步和inotify实时同步部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

rsync下行同步和inotify实时同步部署

  • 一、rsync概述:一款快速增量备份工具
    • 1、Remote Sync,远程同步
    • 2、rsync同步源
  • 二、配置rsync源
    • 1、基本思路
    • 2、配置文件rsyncd.conf
    • 3、独立的账号文件
    • 4、启用rsync服务
    • 5、配置源的两种表达方式
  • 三、rsync命令
    • 1、语法:rsync 【选项】原始位置 目标位置
    • 2、常用选项
  • 四、inotify简介
  • 五、配置rsync下行同步
    • 1、master(192.168.177.8)
    • 2、slave:192.168.177.18
  • 六、rsync+inotify实时同步
    • 1、master:192.168.177.8
    • 2、slave:192.168.177.18

一、rsync概述:一款快速增量备份工具

1、Remote Sync,远程同步

注:支持本地复制,或者与其他SSH、rsync主机同步

2、rsync同步源

(1)rsync同步源
(2)指备份操作的远程服务器,也称为备份源

二、配置rsync源

1、基本思路

(1)建立rsyncd.conf配置文件、独立的账号文件
(2)启用rsync的–daemon模式

2、配置文件rsyncd.conf

认证配置auth users、secrets file,不加则匿名

3、独立的账号文件

(1)用户名:密码
(2)每行一个用户记录
(3)独立的账号数据,不依赖系统账号

4、启用rsync服务

(1)通过–daemon独自提供服务,rsync --daemon
(2)执行kill$(cat /var/run/rsyncd.pid)关闭服务

5、配置源的两种表达方式

格式一:

用户名@主机地址::共享模块名

格式二:

rsync://用户名@主机地址/共享模块名

三、rsync命令

1、语法:rsync 【选项】原始位置 目标位置

2、常用选项

-a归档模式,递归并保留对象属性
-v显示同步过程的详细信息
-z在传输时进行压缩
-H保留硬链接文件
-A保留ACL属性信息
- -delete删除目标位置有但原始位置没有的文件
- -checksum根据对象的校验和来决定是否跳过文件

注:- -delete就是删除差异文件,保留一致性。

四、inotify简介

inotify:监控文件系统的变动,并做出通知响应。
相关概述:
1、调整inotify内核参数
2、/etc/sysctl.conf(内核参数配置文件)

max_queue_events    	#监控事件队列大小
max_user_instances  	#最多监控实例数
max_user_watches    	#每个实例最多监控文件数  

3、inotifywait:用于持久监控,实时输出结果
4、inotifywatch:用于短期监控,任务完成后再输出结果
5、常用选项

-m持续监控
-r递归监控所有子对象
-q简化输出信息
-e指定要监控的事件类型
modity修改
create创建
move移动
delete删除

五、配置rsync下行同步

配置环境

主机操作系统IP安装包
mastercentos7192.168.177.8rsync
slavecentos7192.168.177.18rsync / inotify-tools-3.14.tar.gz

下行同步:将master服务器数据备份到slave服务器

1、master(192.168.177.8)

systemctl stop firewalld.service 
setenforce 0yum -y install httpd rsync vim /etc/rsyncd.conf uid = nobody
gid = nobody
use chroot = yes                                                
address = 192.168.177.8
port 873                                                                
log file = /var/log/rsyncd.log                  
pid file = /var/run/rsyncd.pid                  
hosts allow = 192.168.177.0/24
[wwwroot]                                                               
path = /var/www/html                                    
comment = Document Root of www.yy.com
read only = yes                                                  
dont comperss = *.gz *.bz2 *.tgz *.zip *.rar *.z        
auth users = tefuir                                               
secrets file = /etc/rsyncd_users.db             

在这里插入图片描述

vim /etc/rsyncd_users.db
tefuir:123123chmod 600 /etc/rsyncd_users.dbrsync --daemon
netstat -natp | grep rsynccd /var/www/html
touch edg.html rng.html
ls

在这里插入图片描述
在这里插入图片描述

2、slave:192.168.177.18

systemctl stop firewalld.service 
setenforce 0yum -y install rsynccd /opt
mkdir gogo
chmod 777 gogo

在这里插入图片描述

vim /etc/server.pass
123123chmod 600 /etc/server.pass rsync -az --delete --password-file=/etc/server.pass tefuir@192.168.177.8::wwwroot /opt/gogols gogo

在这里插入图片描述
在这里插入图片描述

六、rsync+inotify实时同步

1、master:192.168.177.8

vim /etc/rsyncd.conf
read only = nokill `cat /var/run/rsyncd.pid`
netstat -natp | grep rsyncrsync --daemon
netstat -natp | grep rsyncchmod 777 /var/www/html

在这里插入图片描述
在这里插入图片描述

2、slave:192.168.177.18

cat /proc/sys/fs/inotify/max_queued_events
cat /proc/sys/fs/inotify/max_user_instances 
cat /proc/sys/fs/inotify/max_user_watches vim /etc/sysctl.conf fs.inotify.max_queued_events = 32768
fs.inotify.max_user_instances = 1024
fs.inotify.max_user_watches = 1048576sysctl -p

在这里插入图片描述
在这里插入图片描述

yum -y install gcc gcc-c++ #放入安装包
tar zxvf inotify-tools-3.14.tar.gz -C /optcd /opt/inotify-tools-3.14/./configure
make && make install

在这里插入图片描述
在这里插入图片描述

vim /opt/inotify.sh
#!/bin/bash
INOTIFY_CMD="inotifywait -mrq -e create,delete,move,modify,attrib /opt/gogo/"
RSYNC_CMD="rsync -azH --delete --password-file=/etc/server.pass /opt/gogo/ tefuir@192.168.177.8::wwwroot"$INOTIFY_CMD | while read DIRECTORY EVENT FILE
doif [ $(pgrep rsync | wc -l) -le 0 ] ; then$RSYNC_CMDfi
done

在这里插入图片描述

cd /opt/
chmod +x inotify.sh 
./inotify.sh cd /opt/gogo
touch ig.html
rm -rf edg.html

在这里插入图片描述
这里报错是因为我们用匿名用户登录
master:192.168.177.8验证

cd /var/www/html
ls

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
slave:192.168.177.18
在这里插入图片描述
master:192.168.177.8
在这里插入图片描述

这篇关于rsync下行同步和inotify实时同步部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/837681

相关文章

闲置电脑也能活出第二春?鲁大师AiNAS让你动动手指就能轻松部署

对于大多数人而言,在这个“数据爆炸”的时代或多或少都遇到过存储告急的情况,这使得“存储焦虑”不再是个别现象,而将会是随着软件的不断臃肿而越来越普遍的情况。从不少手机厂商都开始将存储上限提升至1TB可以见得,我们似乎正处在互联网信息飞速增长的阶段,对于存储的需求也将会不断扩大。对于苹果用户而言,这一问题愈发严峻,毕竟512GB和1TB版本的iPhone可不是人人都消费得起的,因此成熟的外置存储方案开

基于MySQL Binlog的Elasticsearch数据同步实践

一、为什么要做 随着马蜂窝的逐渐发展,我们的业务数据越来越多,单纯使用 MySQL 已经不能满足我们的数据查询需求,例如对于商品、订单等数据的多维度检索。 使用 Elasticsearch 存储业务数据可以很好的解决我们业务中的搜索需求。而数据进行异构存储后,随之而来的就是数据同步的问题。 二、现有方法及问题 对于数据同步,我们目前的解决方案是建立数据中间表。把需要检索的业务数据,统一放到一张M

服务器集群同步时间手记

1.时间服务器配置(必须root用户) (1)检查ntp是否安装 [root@node1 桌面]# rpm -qa|grep ntpntp-4.2.6p5-10.el6.centos.x86_64fontpackages-filesystem-1.41-1.1.el6.noarchntpdate-4.2.6p5-10.el6.centos.x86_64 (2)修改ntp配置文件 [r

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

C#实战|大乐透选号器[6]:实现实时显示已选择的红蓝球数量

哈喽,你好啊,我是雷工。 关于大乐透选号器在前面已经记录了5篇笔记,这是第6篇; 接下来实现实时显示当前选中红球数量,蓝球数量; 以下为练习笔记。 01 效果演示 当选择和取消选择红球或蓝球时,在对应的位置显示实时已选择的红球、蓝球的数量; 02 标签名称 分别设置Label标签名称为:lblRedCount、lblBlueCount

在 Windows 上部署 gitblit

在 Windows 上部署 gitblit 在 Windows 上部署 gitblit 缘起gitblit 是什么安装JDK部署 gitblit 下载 gitblit 并解压配置登录注册为 windows 服务 修改 installService.cmd 文件运行 installService.cmd运行 gitblitw.exe查看 services.msc 缘起

Solr部署如何启动

Solr部署如何启动 Posted on 一月 10, 2013 in:  Solr入门 | 评论关闭 我刚接触solr,我要怎么启动,这是群里的朋友问得比较多的问题, solr最新版本下载地址: http://www.apache.org/dyn/closer.cgi/lucene/solr/ 1、准备环境 建立一个solr目录,把solr压缩包example目录下的内容复制

Spring Roo 实站( 一 )部署安装 第一个示例程序

转自:http://blog.csdn.net/jun55xiu/article/details/9380213 一:安装 注:可以参与官网spring-roo: static.springsource.org/spring-roo/reference/html/intro.html#intro-exploring-sampleROO_OPTS http://stati

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体

部署若依Spring boot项目

nohup和& nohup命令解释 nohup命令:nohup 是 no hang up 的缩写,就是不挂断的意思,但没有后台运行,终端不能标准输入。nohup :不挂断的运行,注意并没有后台运行的功能,就是指,用nohup运行命令可以使命令永久的执行下去,和用户终端没有关系,注意了nohup没有后台运行的意思;&才是后台运行在缺省情况下该作业的所有输出都被重定向到一个名为nohup.o