sersync2 完全安裝配置說(shuō)明(二) 可選功能與xml高級(jí)配置
更新時(shí)間:2011年11月29日 10:53:41 作者:
sersync2 完全安裝配置說(shuō)明(二) 可選功能與xml高級(jí)配置,需要的朋友可以參考下。
XML文件說(shuō)明
sersync可選功能是通過(guò)xml配置文件來(lái)實(shí)現(xiàn)的,基本配置文件如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<head version="2.5">
<host hostip="localhost" port="8008"></host>
<filter start="false">
<exclude expression="(.*)\.gz"></exclude>
<exclude expression="^info/*"></exclude>
</filter>
<inotify>
<delete start="true"/>
<createFolder start="true"/>
<createFile start="true"/>
</inotify>
<debug start="false"/>
<sersync>
<localpath watch="/opt/tongbu">
<remote ip="192.168.0.104" name="tongbu1"/>
<!--<remote ip="192.168.8.39" name="tongbu"/>-->
<!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
<rsync>
<commonParams params="-artuz"/>
<auth start="false" users="root" passwordfile="/etc/rsync.pas"/>
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60min execute once-->
<crontab start="false" schedule="600"><!--600mins-->
<crontabfilter start="false">
<exclude expression="*.gz"></exclude>
<exclude expression="info/*"></exclude>
</crontabfilter>
</crontab>
<plugin start="false" name="command"/>
</sersync>
下面做逐行的進(jìn)行解釋說(shuō)明:
<host hostip="localhost" port="8008"></host>
hostip與port是針對(duì)插件的保留字段,對(duì)于同步功能沒(méi)有任何作用,保留默認(rèn)即可。
filter文件過(guò)濾功能
對(duì)于sersync監(jiān)控的文件,會(huì)默認(rèn)過(guò)濾系統(tǒng)的臨時(shí)文件(以“.”開(kāi)頭,以“~”結(jié)尾),除了這些文件外,可以自定義其他需要過(guò)濾的文件。
<filter start="true">
<exclude expression="(.*)\.gz"></exclude>
<exclude expression="^info/*"></exclude>
</filter>
將start設(shè)置為 true,在exclude標(biāo)簽中,填寫(xiě)正則表達(dá)式,默認(rèn)給出兩個(gè)例子分別是過(guò)濾以”.gz”結(jié)尾的文件與過(guò)濾監(jiān)控目錄下的info路徑(監(jiān)控路徑/info /*),可以根據(jù)需要添加,但開(kāi)啟的時(shí)候,自己測(cè)試一下,正則表達(dá)式如果出現(xiàn)錯(cuò)誤,控制臺(tái)會(huì)有提示。相比較使用rsync 的exclude功能,被過(guò)濾的路徑,不會(huì)加入監(jiān)控,大大減少rsync的通訊量。
inotify監(jiān)控參數(shù)設(shè)定(優(yōu)化)
對(duì)于inotify監(jiān)控參數(shù)可以進(jìn)行設(shè)置,根據(jù)您項(xiàng)目的特點(diǎn)優(yōu)化srsync。
<inotify>
<delete start="true"/>
<createFolder start="true"/>
<createFile start="true"/>
</inotify>
對(duì)于大多數(shù)應(yīng)用,可以嘗試把createFile(監(jiān)控文件事件選項(xiàng))設(shè)置為false來(lái)提高性能,減少 rsync通訊。因?yàn)榭截愇募奖O(jiān)控目錄會(huì)產(chǎn)生create事件與close_write事件,所以如果關(guān)閉create事件,只監(jiān)控文件拷貝結(jié)束時(shí)的事 件close_write,同樣可以實(shí)現(xiàn)文件完整同步。
注意:強(qiáng)將createFolder保持為true,如果將createFolder設(shè)為false,則不會(huì)對(duì)產(chǎn)生的目錄進(jìn)行監(jiān)控,該目錄下的子文件與子目錄也不會(huì)被監(jiān)控。所以除非特殊需要,請(qǐng)開(kāi)啟。默認(rèn)情況下對(duì)創(chuàng)建文件(目錄)事件與刪除文件(目錄)事件都進(jìn)行監(jiān)控,如果項(xiàng)目中不需要?jiǎng)h除遠(yuǎn)程目標(biāo)服務(wù)器的文件(目錄),則可以將delete 參數(shù)設(shè)置為false,則不對(duì)刪除事件進(jìn)行監(jiān)控。
Debug開(kāi)啟
<debug start="false"/>
設(shè)置為true,開(kāi)啟debug模式,會(huì)在sersync正在運(yùn)行的控制臺(tái),打印inotify事件與rsync同步命令。
XFS文件系統(tǒng)
<fileSystem xfs="false"/>
對(duì)于xfs文件系統(tǒng)的用戶,需要將這個(gè)選項(xiàng)開(kāi)啟,才能使sersync正常工作.
文件監(jiān)控與遠(yuǎn)程同步設(shè)置
<localpath watch="/opt/tongbu">
<remote ip="192.168.0.104" name="tongbu1"/>
<!--<remote ip="192.168.8.39" name="tongbu"/>-->
<!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
詳見(jiàn)sersync2 完全安裝配置說(shuō)明(一) —-基本功能使用
Rsync參數(shù)配置
<rsync>
<commonParams params="-artuz"/>
<auth start="false" users="root" passwordfile="/etc/rsync.pas"/>
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
commonParams可以用戶自定義rsync參數(shù),默認(rèn)是-artuz
auth start=”false” 設(shè)置為true的時(shí)候,使用rsync的認(rèn)證模式傳送,需要配置user與passwrodfile(–password-file=/etc/rsync.pas),來(lái)使用。userDefinedPort 當(dāng)遠(yuǎn)程同步目標(biāo)服務(wù)器的rsync端口不是默認(rèn)端口的時(shí)候使用(–port=874)。timeout設(shè)置rsync的timeout時(shí)間(–timeout=100)。ssh 使用rsync -e ssh的方式進(jìn)行傳輸。
失敗日志腳步配置
<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/>
對(duì)于失敗的傳輸,會(huì)進(jìn)行重新傳送,再次失敗就會(huì)寫(xiě)入rsync_fail_log,然后每隔一段時(shí)間(timeToExecute進(jìn)行設(shè)置)執(zhí)行該腳本再次重新傳送,然后清空該腳本??梢酝ㄟ^(guò)path來(lái)設(shè)置日志路徑。
Crontab定期整體同步功能
<crontab start="false" schedule="600"><!--600mins-->
<crontabfilter start="false">
<exclude expression="*.gz"></exclude>
<exclude expression="info/*"></exclude>
</crontabfilter>
</crontab>
crontab可以對(duì)監(jiān)控路徑與遠(yuǎn)程目標(biāo)主機(jī)每隔一段時(shí)間進(jìn)行一次整體同步,可能由于一些原因兩次失敗重傳都失敗了,這個(gè)時(shí)候如果開(kāi)啟了crontab功 能,還可以進(jìn)一步保證各個(gè)服務(wù)器文件一致,如果文件量比較大,crontab的時(shí)間間隔要設(shè)的大一些,否則可能增加通訊開(kāi)銷。schedule這個(gè)參數(shù)是設(shè)置crontab的時(shí)間間隔,默認(rèn)是600分鐘
如果開(kāi)啟了filter文件過(guò)濾功能,那么crontab整體同步也需要設(shè)置過(guò)濾,否則雖然實(shí)時(shí)同步的時(shí)候文件被過(guò)濾了,但crontab整體同步的時(shí)候 如果不單獨(dú)設(shè)置crontabfilter,還會(huì)將需過(guò)濾的文件同步到遠(yuǎn)程,crontab的過(guò)濾正則與filter過(guò)濾的不同,也給出了兩個(gè)實(shí)例分別對(duì) 應(yīng)與過(guò)濾文件與目錄。總之如果同時(shí)開(kāi)啟了filter與crontab,則要開(kāi)啟crontab的crontabfilter,并按示例設(shè)置使其與filter的過(guò)濾一一對(duì)應(yīng)。
插件設(shè)置
<plugin start="false" name="command"/>
當(dāng)設(shè)置為true的時(shí)候,將文件同步到遠(yuǎn)程服務(wù)器后會(huì)調(diào)用name參數(shù)指定的插件。詳見(jiàn)請(qǐng)看插件設(shè)置。
sersync可選功能是通過(guò)xml配置文件來(lái)實(shí)現(xiàn)的,基本配置文件如下:
復(fù)制代碼 代碼如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<head version="2.5">
<host hostip="localhost" port="8008"></host>
<filter start="false">
<exclude expression="(.*)\.gz"></exclude>
<exclude expression="^info/*"></exclude>
</filter>
<inotify>
<delete start="true"/>
<createFolder start="true"/>
<createFile start="true"/>
</inotify>
<debug start="false"/>
<sersync>
<localpath watch="/opt/tongbu">
<remote ip="192.168.0.104" name="tongbu1"/>
<!--<remote ip="192.168.8.39" name="tongbu"/>-->
<!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
<rsync>
<commonParams params="-artuz"/>
<auth start="false" users="root" passwordfile="/etc/rsync.pas"/>
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60min execute once-->
<crontab start="false" schedule="600"><!--600mins-->
<crontabfilter start="false">
<exclude expression="*.gz"></exclude>
<exclude expression="info/*"></exclude>
</crontabfilter>
</crontab>
<plugin start="false" name="command"/>
</sersync>
下面做逐行的進(jìn)行解釋說(shuō)明:
復(fù)制代碼 代碼如下:
<host hostip="localhost" port="8008"></host>
hostip與port是針對(duì)插件的保留字段,對(duì)于同步功能沒(méi)有任何作用,保留默認(rèn)即可。
filter文件過(guò)濾功能
對(duì)于sersync監(jiān)控的文件,會(huì)默認(rèn)過(guò)濾系統(tǒng)的臨時(shí)文件(以“.”開(kāi)頭,以“~”結(jié)尾),除了這些文件外,可以自定義其他需要過(guò)濾的文件。
復(fù)制代碼 代碼如下:
<filter start="true">
<exclude expression="(.*)\.gz"></exclude>
<exclude expression="^info/*"></exclude>
</filter>
將start設(shè)置為 true,在exclude標(biāo)簽中,填寫(xiě)正則表達(dá)式,默認(rèn)給出兩個(gè)例子分別是過(guò)濾以”.gz”結(jié)尾的文件與過(guò)濾監(jiān)控目錄下的info路徑(監(jiān)控路徑/info /*),可以根據(jù)需要添加,但開(kāi)啟的時(shí)候,自己測(cè)試一下,正則表達(dá)式如果出現(xiàn)錯(cuò)誤,控制臺(tái)會(huì)有提示。相比較使用rsync 的exclude功能,被過(guò)濾的路徑,不會(huì)加入監(jiān)控,大大減少rsync的通訊量。
inotify監(jiān)控參數(shù)設(shè)定(優(yōu)化)
對(duì)于inotify監(jiān)控參數(shù)可以進(jìn)行設(shè)置,根據(jù)您項(xiàng)目的特點(diǎn)優(yōu)化srsync。
復(fù)制代碼 代碼如下:
<inotify>
<delete start="true"/>
<createFolder start="true"/>
<createFile start="true"/>
</inotify>
對(duì)于大多數(shù)應(yīng)用,可以嘗試把createFile(監(jiān)控文件事件選項(xiàng))設(shè)置為false來(lái)提高性能,減少 rsync通訊。因?yàn)榭截愇募奖O(jiān)控目錄會(huì)產(chǎn)生create事件與close_write事件,所以如果關(guān)閉create事件,只監(jiān)控文件拷貝結(jié)束時(shí)的事 件close_write,同樣可以實(shí)現(xiàn)文件完整同步。
注意:強(qiáng)將createFolder保持為true,如果將createFolder設(shè)為false,則不會(huì)對(duì)產(chǎn)生的目錄進(jìn)行監(jiān)控,該目錄下的子文件與子目錄也不會(huì)被監(jiān)控。所以除非特殊需要,請(qǐng)開(kāi)啟。默認(rèn)情況下對(duì)創(chuàng)建文件(目錄)事件與刪除文件(目錄)事件都進(jìn)行監(jiān)控,如果項(xiàng)目中不需要?jiǎng)h除遠(yuǎn)程目標(biāo)服務(wù)器的文件(目錄),則可以將delete 參數(shù)設(shè)置為false,則不對(duì)刪除事件進(jìn)行監(jiān)控。
Debug開(kāi)啟
復(fù)制代碼 代碼如下:
<debug start="false"/>
設(shè)置為true,開(kāi)啟debug模式,會(huì)在sersync正在運(yùn)行的控制臺(tái),打印inotify事件與rsync同步命令。
XFS文件系統(tǒng)
<fileSystem xfs="false"/>
對(duì)于xfs文件系統(tǒng)的用戶,需要將這個(gè)選項(xiàng)開(kāi)啟,才能使sersync正常工作.
文件監(jiān)控與遠(yuǎn)程同步設(shè)置
復(fù)制代碼 代碼如下:
<localpath watch="/opt/tongbu">
<remote ip="192.168.0.104" name="tongbu1"/>
<!--<remote ip="192.168.8.39" name="tongbu"/>-->
<!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
詳見(jiàn)sersync2 完全安裝配置說(shuō)明(一) —-基本功能使用
Rsync參數(shù)配置
復(fù)制代碼 代碼如下:
<rsync>
<commonParams params="-artuz"/>
<auth start="false" users="root" passwordfile="/etc/rsync.pas"/>
<userDefinedPort start="false" port="874"/><!-- port=874 -->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
commonParams可以用戶自定義rsync參數(shù),默認(rèn)是-artuz
auth start=”false” 設(shè)置為true的時(shí)候,使用rsync的認(rèn)證模式傳送,需要配置user與passwrodfile(–password-file=/etc/rsync.pas),來(lái)使用。userDefinedPort 當(dāng)遠(yuǎn)程同步目標(biāo)服務(wù)器的rsync端口不是默認(rèn)端口的時(shí)候使用(–port=874)。timeout設(shè)置rsync的timeout時(shí)間(–timeout=100)。ssh 使用rsync -e ssh的方式進(jìn)行傳輸。
失敗日志腳步配置
復(fù)制代碼 代碼如下:
<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/>
對(duì)于失敗的傳輸,會(huì)進(jìn)行重新傳送,再次失敗就會(huì)寫(xiě)入rsync_fail_log,然后每隔一段時(shí)間(timeToExecute進(jìn)行設(shè)置)執(zhí)行該腳本再次重新傳送,然后清空該腳本??梢酝ㄟ^(guò)path來(lái)設(shè)置日志路徑。
Crontab定期整體同步功能
復(fù)制代碼 代碼如下:
<crontab start="false" schedule="600"><!--600mins-->
<crontabfilter start="false">
<exclude expression="*.gz"></exclude>
<exclude expression="info/*"></exclude>
</crontabfilter>
</crontab>
crontab可以對(duì)監(jiān)控路徑與遠(yuǎn)程目標(biāo)主機(jī)每隔一段時(shí)間進(jìn)行一次整體同步,可能由于一些原因兩次失敗重傳都失敗了,這個(gè)時(shí)候如果開(kāi)啟了crontab功 能,還可以進(jìn)一步保證各個(gè)服務(wù)器文件一致,如果文件量比較大,crontab的時(shí)間間隔要設(shè)的大一些,否則可能增加通訊開(kāi)銷。schedule這個(gè)參數(shù)是設(shè)置crontab的時(shí)間間隔,默認(rèn)是600分鐘
如果開(kāi)啟了filter文件過(guò)濾功能,那么crontab整體同步也需要設(shè)置過(guò)濾,否則雖然實(shí)時(shí)同步的時(shí)候文件被過(guò)濾了,但crontab整體同步的時(shí)候 如果不單獨(dú)設(shè)置crontabfilter,還會(huì)將需過(guò)濾的文件同步到遠(yuǎn)程,crontab的過(guò)濾正則與filter過(guò)濾的不同,也給出了兩個(gè)實(shí)例分別對(duì) 應(yīng)與過(guò)濾文件與目錄。總之如果同時(shí)開(kāi)啟了filter與crontab,則要開(kāi)啟crontab的crontabfilter,并按示例設(shè)置使其與filter的過(guò)濾一一對(duì)應(yīng)。
插件設(shè)置
復(fù)制代碼 代碼如下:
<plugin start="false" name="command"/>
當(dāng)設(shè)置為true的時(shí)候,將文件同步到遠(yuǎn)程服務(wù)器后會(huì)調(diào)用name參數(shù)指定的插件。詳見(jiàn)請(qǐng)看插件設(shè)置。
您可能感興趣的文章:
- spring如何使用xml裝配bean
- 基于XML配置Spring的自動(dòng)裝配過(guò)程解析
- Spring裝配Bean教程之XML安裝配置bean詳解
- Spring注解實(shí)現(xiàn)Bean自動(dòng)裝配示例詳解
- Spring IOC裝配Bean過(guò)程解析
- Spring自動(dòng)裝配Bean實(shí)現(xiàn)過(guò)程詳解
- spring boot中的條件裝配bean的實(shí)現(xiàn)
- spring裝配bean的3種方式總結(jié)
- 在Spring中自動(dòng)裝配Bean的屬性
- spring在IoC容器中裝配Bean詳解
- 詳解SpringBean基于XML的裝配
相關(guān)文章
shell 命令行中操作HBase數(shù)據(jù)庫(kù)實(shí)例詳解
這篇文章主要介紹了 shell 命令行中操作HBase數(shù)據(jù)庫(kù)實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2016-11-11
linux安裝好httpd后,測(cè)試總是訪問(wèn)到系統(tǒng)默認(rèn)頁(yè)面的問(wèn)題及解決
這篇文章主要介紹了linux安裝好httpd后,測(cè)試總是訪問(wèn)到系統(tǒng)默認(rèn)頁(yè)面的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-09-09
Linux文件操作新手指南之關(guān)于install命令的用法
這篇文章主要介紹了Linux文件操作新手指南之關(guān)于install命令的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
Linux中的進(jìn)程守護(hù)supervisor安裝配置及使用
supervisor是一個(gè)很好的守護(hù)程序管理工具,配置方面自動(dòng)啟動(dòng),日志輸出,自動(dòng)切割日志等等一系列強(qiáng)大功能,下面是在CentOS下安裝使用supervisor的記錄,非常不錯(cuò),感興趣的朋友跟隨小編一起看看吧2019-07-07
linux下shell常用腳本命令及有關(guān)知識(shí)
大家好,本篇文章主要講的是linux下shell常用腳本命令及有關(guān)知識(shí),感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12
linux下快速列出局域網(wǎng)中所有主機(jī)名(計(jì)算機(jī)名)的腳本
這篇文章主要介紹了linux下快速列出局域網(wǎng)中所有主機(jī)名(計(jì)算機(jī)名)的腳本,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07

