rsync + inotify 实现多台服务器数据同步
admin
2023-03-04 13:02:58
0

环境分析:
目前环境4台web服务器采用共享存储技术,由于nas服务最近频繁掉线,影响网站访问,故计划采用对象存储方案。我们云环境补救措施可以用多台Linux服务器做存储,配合rsync(同步)+notify(触发)实现服务器数据同步。

方案实施:

rsync + inotify 实现多台服务器数据同步

1、方案分析:
每台web服务器上分别挂载一个存储盘/newweb,将原先网站访问资源指向/otherweb的路径修改至这个/newweb,由于磁盘容量没有nas大,可以将web用到的数据源,如图片、网页等放在这个路径下,邮箱、日志等继续放在nas下,即便nas掉线,也不影响网站正常访问。
2、同步步骤:
Master 作为主控制点,每次更新资源在master上,master会实时检查文件是否有更新,如果更新,则会同步数据到web1-web4上面,如果没有更新,则不会同步,这样可以减少服务器不必要的负载,同时master也可作为备份服务器。
3、技术分析:
Inotify,它是一个内核用于通知用户空间程序文件系统变化的机制,也是一种文件系统的变化通知机制,如文件增加、删除等事件可以立刻让用户态得知。
 rsync其实就是remote  rsync,它是一个远程同步工具,兼具cp和scp的功能,rsync命令的使用几乎和scp是一样一样的。rsync是通过超级守护进程xinetd进行触发同步的。
rsync+inotify组合是触发式更新,只要有数据变化,就立刻同步更新
编写rsync脚本,实现数据实时同步,可将脚本后台执行。

下面开始操作步骤:
1)rsync客户端master服务上安装rsync,inotify :
yum -y install rsync
rsync + inotify 实现多台服务器数据同步
2 rsync服务器端,也就是web所在服务器,如web1,仅安装rsync即可
yum -y install rsync
编辑rsync配置文件vim /erc/rsyncd.conf:
rsync + inotify 实现多台服务器数据同步
3,启动rsync服务:
systemctr start rsyncd

4,在rsync客户端上编写rsync脚本,赋予可执行权限:
rsync + inotify 实现多台服务器数据同步
然后执行 ./rsync.sh &
在客户端写入一个测试文件,然后在其他服务器上查看是否同步。

相关内容

热门资讯

山西一学生在黄土崩塌中遇难:中... 据央视新闻:7月24日18时49分,山西省洪洞县好义村发生黄土崩塌,造成一户民宅被掩埋,造成5人死亡...
“日本已有半年看不到大熊猫了” 今年1月27日,双胞胎大熊猫“晓晓”和“蕾蕾”从日本返回中国。25日,日本共同社发文感慨:到本月27...
江苏:以应用带产业给力交通“智... 胥大伟 7月23日,江苏省政府举行“人工智能+交通运输”路演会。会上发布了《江苏省“人工智能+交通运...
中国AI成功救场后,OpenA... 近日,美国人工智能公司OpenAI的模型在安全测试中失控“越狱”,攻击了全球最大AI开源平台Hugg...
新华社出图|这就是“千年瓷都”... 在中国乃至世界版图上这座城市都是独一无二一捧泥一窑火一条路让这里被世界认识更令世界倾心“中国瓷”这就...
洗衣机放不掉水怎么修 当你的洗衣机不能放水时,你可能会感到很不方便。这可能是由于以下几种原因: 1. 水龙头未打开:检查...
洗衣机放不出水是什么原因   1、原因:可能是家里或者小区停水了,导致的不出水;  解决办法:应测试家里其他水龙头是否可以正常...
杭州知存算力申请存储电路专利,... 国家知识产权局信息显示,杭州知存算力科技有限公司申请一项名为“存储电路、控制方法、控制装置、存算系统...
tcl洗衣机放不出水是怎么回事 1.首先要看洗衣机是双缸半自动,还是全自动的。2.半自动好办,一般都是拉簧线松了,把后盖打开,有个黑...
诺奖得主用AI凭空造出基因剪刀... 新智元报道 AI造出了一把自然界从未存在的基因剪刀。 而且,比几十亿年进化打磨出来的那把还好使。 ...