您好,登錄后才能下訂單哦!
主機(jī)列表:
服務(wù)端:172.16.2.5/sense2 目標(biāo)端:172.16.2.4/sense1
服務(wù)啟動: /usr/bin/lsyncd /etc/lsyncd.conf
服務(wù)關(guān)閉:ps -ef |grep lsyncd |grep -v grep |awk '{print $2}'|xargs killlsyncd優(yōu)勢:官網(wǎng)及virbox發(fā)版每次都是發(fā)布兩個節(jié)點,發(fā)版了sense2,同時手動執(zhí)行scp同步文件到sense1對應(yīng)目錄下。使用lsyncd避免了scp,簡化了發(fā)布流程,只需在sense2上發(fā)版即可,同時防止scp文件容易出錯的情況。
1.服務(wù)端(sense2)安裝:
yum install epel-release
yum install lsyncd
2.目標(biāo)端(sense1)安裝:yum install rsync
3.服務(wù)端配置:
vim /etc/lsyncd.conf
settings {
logfile = "/var/log/lsyncd/lsyncd.log", #日志文件
status File = "/var/log/lsyncd/lsyncd.status", #狀態(tài)文件
inotifyMode = "CloseWrite or Modify", #指定inotify監(jiān)控事件
}
sync {
default.rsyncssh, #同步到遠(yuǎn)程主機(jī)目錄,rsync的ssh模式,利用ssh傳輸,前提是服務(wù)端與目標(biāo)端建立了信任關(guān)系。
source = "/usr/share/nginx/html/", #本地目錄同步
host = "172.16.2.5", #遠(yuǎn)程主機(jī)
targetdir = "/home/data/bakk/", #遠(yuǎn)程同步目錄
delay = 30, #等待rsync同步延時時間,也就是30s時間監(jiān)控目錄下發(fā)生的改動,會累積一次rsync同步。如30s對一個文件做兩次更改,會同步第二次修改的。
delete = true, #保持target與source一致。默認(rèn)參數(shù)。這個參數(shù)是在剛啟動lsyncd的時候用到,啟動后,在遠(yuǎn)程同步目錄做增刪改操作,也不會把本地目錄相應(yīng)的文件同步過去。
rsync = {
binary = "/usr/bin/rsync",
owner = true, #保留服務(wù)端的屬主
group = true, #保留服務(wù)端的屬組
perms = true, #保留服務(wù)端的權(quán)限
}
}
4.啟動lsync:/usr/bin/lsyncd /etc/lsyncd.conf
5.測試:
把sense2上的/usr/share/nginx/html同步到sense1/home/data/bakk中。實時的處于監(jiān)聽目錄改變,有改變就同步。
把sense1上的同步目錄和sense1的/usr/share/nginx/html文件做對比,文件是一致的。
對比方式:find ./bakk -type f |xargs openssl md5 | awk -F "=" '{print $2}' >a.txt
find /usr/share/nginx/html -type f |xargs openssl md5 | awk -F "=" '{print $2}' >b.txt
diff a.txt b.txt
參考文檔:https://axkibe.github.io/lsyncd/manual/invoking/
https://www.cnblogs.com/zxci/p/6243574.html
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。