最近在做測試,站羣服務器上的包要一台一台的上傳,實在太麻煩,就想到了用 rsync+sersync 做個同步目錄。
一、 rsync 介紹
RSYNC=remote sync 遠端同步,高效。和 scp 類似,不過 rsync 可以邊複製,邊統計、比較,而 scp 則不能。
1. 特性:(1)能保持原來檔案的許可權,時間,軟硬連結等
(2)第一次 rsync 會複製所有檔案,第二次只複製修改過的檔案,節省資源和時間。
(3)傳輸過程中能實行壓縮、解壓縮操作,使用更少頻寬。
(4)安全,支援匿名傳輸。
2. 資料同步方式
推:push 一台 WordPress 主機把資料推送給其他 WordPress 主機,站羣服務器開銷大,適合後端站羣服務器少的情況。
拉:pull 所有 WordPress 主機定時去找站羣服務器拉資料,會導致資料緩慢。
3. 服務安裝
將資料上傳到 test1 站羣服務器上,通過 push 的方式推到 test2 站羣服務器上。所以在 test2 上安裝服務端和 xinetd(超級網際互聯網守護 程序服務)。如果 rsync 進來的是 873 埠,xinetd 會通知它所管轄的 rsync 服務來做回應,之後就是兩個 rsync 之間的通訊。
常用引數:-a (儲存當前許可權等資訊)
-v(輸出資訊)
-z(資料傳輸時進行壓縮)
服務端:test2
[root@test2 ~]# yum install rsync xinetd -y
[root@test2 ~]# rsync –daemon //啓動 rsync 服務
客户端:test1
[root@test1 ~]# yum install rsync -y
測試:
[root@test1 ~]# useradd ksidc; echo ksidc:123456 | chpasswd //新建使用者
[root@test1 ~]# setfacl -R -m user:ksidc:rwx /rsync-data/ //賦予許可權
[root@test1 ~]# setfacl -R -m default:ksidc:rwx /rsync-data/