linux系統(tǒng)中通過rsync+inotify實現(xiàn)網(wǎng)頁自動同步
使用多個web服務(wù)器實現(xiàn)負載均衡,為了保持前端web服務(wù)器上資源的一致性可以通過rsync在主服務(wù)器上(可寫入數(shù)據(jù))將更新過的文件同步到其他從服務(wù)器(只讀服務(wù)器),但是不能自動的進行實時同步,使用inotify可以實現(xiàn)實時同步
主服務(wù)器:192.168.6.205 inotify
從服務(wù)器:192.168.6.36 rsync
1、在從服務(wù)器上配置rsync,開啟rsync服務(wù),讓主服務(wù)可以將資源同步到該服務(wù)器上
vim /etc/rsyncd.conf
uid = nginx
gid = nginx
port = 873
host all = 192.168.6.205
use chroot = on
max connections = 4
timeout = yes
[wordpress]
path = /usr/local/nginx/html/wordpress
comment = rsync files
ignore errors
read only = no
list = yes
auth users = rsync
secrets file = /etc/rsync.passwd
創(chuàng)建/etc/rsync.passwd密碼配置文件
vim /etc/rsync.passwd
#用戶:密碼
rsync:rsync
2、在主服務(wù)器上安裝inotify-tools
tar -zxvf inotify-tools-3.14.tar.gz
cd inotify-tools-3.14
./configure –prefix=/usr/local/inotify
make && make install
在主服務(wù)器上配置rsync密碼文件,用于將數(shù)據(jù)同步到從服務(wù)器
vim /etc/rsync.passwd
#密碼
rsync
創(chuàng)建腳本
vim inotifyrsync.sh
#!/bin/bash
host=192.168.6.36
src=/usr/local/nginx/html/wordpress/
dst=wordpress
user=rsync
inotifywait=/usr/local/inotify/bin/inotifywait
rsync=/usr/bin/rsync
$inotifywait -mrq –timefmt '%d/%m/%y %H:%M' –format '%T %w%f' -e modify,delete,create,attrib $src | while read files
do
$rsync -vzrtopg –delete –progress –password-file=/etc/rsync.passwd $src $user@$host::$dst
echo "${files} was rsynced" >>/tmp/rsync.log 2>&1
done
相關(guān)文章
淺談生產(chǎn)者消費者模型(Linux系統(tǒng)下的兩種實現(xiàn)方法)
下面小編就為大家?guī)硪黄獪\談生產(chǎn)者消費者模型(Linux系統(tǒng)下的兩種實現(xiàn)方法)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01關(guān)于linux服務(wù)器下vsftpd的一些問題
針對我自己本身出現(xiàn)的問題,將高人與我的QQ聊天記錄整理了一份,然后再加上實際的操作.終于讓我大徹大悟.現(xiàn)在與大家狠狠的分享這位高人的成果.2010-06-06linux如何mount掛載磁盤并設(shè)置開機自動mount的實現(xiàn)
這篇文章主要介紹了linux如何mount掛載磁盤并設(shè)置開機自動mount的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-09-09詳解ubuntu14.04如何設(shè)置靜態(tài)IP的方法
本篇文章主要介紹了ubuntu14.04如何設(shè)置靜態(tài)IP的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07