位置: 编程技术 - 正文

rsync+inotify实现多台web数据动态同步操作步骤(rsync -i)

编辑:rootadmin

推荐整理分享rsync+inotify实现多台web数据动态同步操作步骤(rsync -i),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:inotify rsync,rsync -i,rsync gui,rsync命令,rsync include,rsync include,rsync inotify sersync,rsync -i,内容如对您有帮助,希望把文章链接给更多的朋友!

rsync+inotify实现多台web数据动态同步操作步骤(rsync -i)

*背景:由于无存储共享设备,web集群中的代码均存放在本地,最终导致web节点之间的数据无法一致。 *解决办法:采用rsync+inotify,实现多台web数据动态同步 *解决思路:比如有a、b、c、d四台web,为解决哪台服务器为源数据服务器,我们在A服务器上安装rsync+inotify,然后将一个二级域名指向A服务器,这样以后网站编辑、开发人员之间访问二级域名进行日常网站更新,A服务器在检测到本地有数据更新时,便动态(触发式)向其它服务器发送更新数据。 *注意:一定要使用rsync相同的版本,否则会出现未知错误。 *选择rsync+inotify的理由:在常规的数据同步应用案例中,大多数人会选择使用rsync来完成数据同步,选择rsync+inotify的理由如下 复制代码代码如下: 1、服务器性能:rsync只能实现定时更新,无论网站有无文件更新,rsync都会按着定时任务去检查文件是否有更新,当数据文件较大时会使服务器性能下降;而rsync+inotify 为触发式更新,也就是说只有当某个文件发生改动时才会更新,这样一来对服务器性能影响较小。 2、数据实时性:如果选择rsync,每隔多长时间同步一次数据是个问题,时间越短,对性能影响就越大。时间太长,用户/编辑无法接受。采用rsync+inotify可实现实时更新, 当A服务器文件有更新时,其它服务器立即更新 *环境拓扑 复制代码代码如下: A:..1. B:..1. C:..1. D:..1. 注:数据源服务器为A,目标服务器为B、C、D *一、目标服务器安装rsync (在B、C、D服务器上操作,安装配置均一样) *安装rsync 下载地址: 复制代码代码如下: cd /data/software wget tar zxvf rsync-3.0.9.tar.gz cd rsync-3.0.9 ./configure make make install *安装完成后显示信息 复制代码代码如下: mkdir -p /usr/local/bin /usr/bin/install -c -m rsync /usr/local/bin mkdir -p /usr/local/share/man/man1 mkdir -p /usr/local/share/man/man5 if test -f rsync.1; then /usr/bin/install -c -m rsync.1 /usr/local/share/man/man1; fi if test -f rsyncd.conf.5; then /usr/bin/install -c -m rsyncd.conf.5 /usr/local/share/man/man5; fi *配置rsync *#vi /etc/rsync.conf 加入如下内容 复制代码代码如下: uid = root gid = root use chroot = no max connections = strict modes = yes log file = /data/logs/rsyncd/rsyncd.log pid file = /data/logs/rsyncd/rsyncd.pid lock file = /data/logs/rsyncd/rsync.lock log format = %t %a %m %f %b [web] path = /data/vhosts/itnet/ auth users = username read only = no hosts allow = ..1.0/ #可以是IP段,也可以是IP地址 list = no uid = root gid = root secrets file = /etc/rsync.passwd ignore errors = yes *创建目录,用于存放日志。 复制代码代码如下: mkdir /data/logs/rsyncd *创建认证 *#vi /etc/rsync.passwd 复制代码代码如下: username:passwd *#chmod /etc/rsync.passwd *启动rsync,启动后使用netstat查看,会发现系统已启动端口 复制代码代码如下: # rsync --daemon --config=/etc/rsync.conf *加入开机启动 复制代码代码如下: # echo "rsync --daemon --config=/etc/rsync.conf" >>/etc/rc.local *关闭 复制代码代码如下: killall rsync *二、源服务器安装rsync+inotify (在a服务器上操作) *安装rsync(仅安装即可,不需配置) 复制代码代码如下: cd /data/software wget tar zxvf rsync-3.0.9.tar.gz cd rsync-3.0.9 ./configure make make install *echo "passwd" > /etc/rsync-client.passwd *chmod /etc/rsync-client.passwd *安装inotify 下载地址: 复制代码代码如下: cd /data/software wget tar zxvf inotify-tools-3..tar.gz cd inotify-tools-3. ./configure make make install *创建启动脚本 *#vi /etc/rsync-web.sh 加入如下内容 复制代码代码如下: #!/bin/sh SRC=/data/vhosts/itnet/ DES=web WEB2=..1. WEB3=..1. WEB4=..1. USER=username /usr/local/bin/inotifywait -mrq -e create,move,delete,modify $SRC | while read D E F do rsync -ahqzt --password-file=/etc/rsync-client.passwd --delete $SRC $USER@$WEB2::$DES rsync -ahqzt --password-file=/etc/rsync-client.passwd --delete $SRC $USER@$WEB3::$DES rsync -ahqzt --password-file=/etc/rsync-client.passwd --delete $SRC $USER@$WEB4::$DES done #注意:网络上面大部分都是显示一个中杠,可能是编码的事情,实际是应该是两个杠。 *增加权限 复制代码代码如下: #chmod +x /etc/rsync-web.sh *启动脚本 复制代码代码如下: #nohup /etc/rsync-web.sh & //必须使用nohup放入后台执行,否则关闭终端后此脚本进程会自动结束 /etc/rsync-web.sh & *关闭脚本 复制代码代码如下: sudo pkill rsync sudo pkill inotifywait *@ERROR: chdir failed rsync error: error starting client-server protocol (code 5) at main.c() [sender=3.0.6]解决办法 复制代码代码如下: setsebool -P rsync_disable_trans on *rsync安装路径(注意查看) 复制代码代码如下: /usr/bin/rsync /usr/local/bin/rsync /etc/xinetd.d/rsync

Redhat linux本地yum源的配置教程 相信对RedHatLinux或CentOS比较熟悉的人,应该是比较了解yum源的,它比普通的rpm包安装,要方便的多,为何呢?因为它能顺利的解决rpm包之间的依赖关系。

Linux下抓包工具tcpdump使用介绍 在传统的网络分析和测试技术中,嗅探器(sniffer)是最常见,也是最重要的技术之一。sniffer工具首先是为网络管理员和网络程序员进行网络分析而设计的

linux下rsync命令详细整理 在对rsync服务器配置结束以后,下一步就需要在客户端发出rsync命令来实现将服务器端的文件备份到客户端来。rsync是一个功能非常强大的工具,其命令

标签: rsync -i

本文链接地址:https://www.jiuchutong.com/biancheng/362065.html 转载请保留说明!

上一篇:linux 判断当前用户是否是root(linux 判断语句)

下一篇:Redhat linux本地yum源的配置教程(redhat本地yum配置的基本步骤)

  • 车船税税金及附加计入管理费用嘛
  • 工资薪金税前扣除标准是14%吗
  • 上月留抵进项本月抵扣会计分录
  • 教育培训行业税负率是多少
  • 无形资产摊销月底最后一天怎么算
  • 摄影服务属于哪个开票类目
  • 税法免抵退计算例题
  • 售后服务企业返利政策
  • 企业递延所得税费用的计算公式
  • 股东借款 往来款
  • 留抵进项税抵欠税后期末未交增值税会减少吗
  • 零售环节销售金额标准
  • 无票收入记账多的进项发票怎么处理?
  • 一般纳税人收取的下列款项中,应并入销售额
  • 个人所得税深圳税务
  • 货到票未到的会计账务处理
  • 未开票收入可以填写负数吗
  • 公司账上的钱如何取出来
  • 出口退免税的类型
  • 制造业企业存货管理论文
  • win8系统如何设置u盘启动
  • u盘启动盘如何分区
  • 收到财政局专项审计短信
  • 开办费属于什么科目类别
  • 房产税和城镇土地使用税
  • 无生产怎样结转成本费用
  • PHP:curl_version()的用法_cURL函数
  • Mtdacq.exe - Mtdacq是什么进程 有什么用
  • 企业购入的专利权属于什么
  • 若依框架前端框架
  • 包装物交不交消费税
  • 住房公积金领出来用了影响以后买房贷款吗
  • 商品流通企业库存商品的核算方法主要有
  • php正则表达式匹配链接
  • php 集成环境
  • 关于php中一些字符的数据
  • php二维数组按某个键值排序
  • framework3.5怎么打开
  • 微信支付开发者平台
  • vue组件封装步骤
  • 资产支出加权平均数例题
  • 无形资产摊销怎么计算月摊销额
  • 事业单位的账务处理要分预算会计和财务会计吗
  • 办公室购买电脑计入
  • 税控盘每年要交年费吗
  • 如何查看发票是否作废
  • 其他综合收益算不算所有者权益
  • 政府补贴需要缴纳印花税吗
  • 如何确认产品销售收入
  • 收到货款会计分录怎么写
  • 报价中含税和不含税比例
  • 民间非营利组织会计制度最新版
  • 工程没钱也没有工资
  • 消耗性生物资产属于非流动资产吗
  • 公司网站维护费用计哪个科目
  • mysql中的rand函数
  • sql实现分页查询语句
  • mac怎么连续播放视频
  • linux中安装软件可使用哪些方式
  • windows设备和打印机
  • win8.1快捷键
  • win7电脑老是自动重启怎么回事
  • windows8.
  • cocos2dx tableview基础:实现多图片的滑动显示
  • cocos2dx在不同安卓机型下scrollview裁剪失败
  • android图像处理
  • Bullet(Cocos2dx)之优化PhysicsDraw3D
  • javascript sort排序
  • [置顶]bilinovel
  • bat批量创建文件夹及子文件夹
  • android开源库
  • u3d地形编辑贴图
  • unity的gui
  • android 加载大量图片
  • 福建省国家税务局电子税务局官网入口
  • 陕西省税务局机关服务中心
  • 小规模和一般纳税人的划分标准
  • 北京市工商局电话24小时客服热线
  • 怎么查询地方规划用地
  • 什么是深入调研工作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设