一,檔案傳送rsync部分
1,服務端(接受檔案的伺服器a)設定
centos7.4最小化安裝已自帶rsync元件,使用rpm -qa rsync檢查
a,配置檔案修改
vim /etc/rsyncd.conf
uid = blueset
gid = blueset
use chroot = no
max connections = 2000
timeout = 600
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 11.1.4.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
#############################
[datasync]
path = /opt/blueix/data
b,啟動程序並檢查,加入開機啟動
rsync --daemon
ps -ef|grep rsync
lsof -i :873
echo '/bin/rsync --daemon &' >> /etc/rc.local
c,建立密碼檔案
建立使用者名稱密碼檔案根據rsync.conf
echo "rsync_backup:kevinstar">/etc/rsync.password
cat /etc/rsync.password
chmod 600 /etc/rsync.password
ls -l /etc/rsync.password
2,客戶端(傳送檔案的伺服器b)設定
a,建立密碼檔案
sudo echo "kevinstar">/etc/rsync.password
sudo chmod 600 /etc/rsync.password
sudo ls -l /etc/rsync.password
sudo cat /etc/rsync.password
b,測試是否正常傳送檔案到服務端
rsync -az /opt/blueix/data/ --delete [email protected]::datasync --password-file=/etc/rsync.password
wget -o /etc/yum.repos.d/epel.repo
yum install inotify-tools –y
2,配置監控指令碼,後台執行並測試
vim inotify.sh
#!/bin/bash
/usr/bin/inotifywait -mrq --format '%w%f' -e create,close_write,delete /opt/blueix/data|while read file
dorsync -az --exclude fastdfs/ /opt/blueix/data/ --delete [email protected]::datasync --password-file=/etc/rsync.password
done
chmod +x inotify.sh
./inotify.sh &
由於監控資料夾包含fastdfs資料檔案,檔案數量太多,需要修改預設佇列長度
echo 'fs.inotify.max_user_watches=99999999' >> /etc/sysctl.conf
sysctl -p
3,加入開機啟動項
echo '/root/inotify.sh &' >> /etc/rc.local
inotlfy 缺點:
併發如果大於 200 個檔案( 10 一 100k ),同步就會有延遲。
業務量大可採用drbd 檔案系統級別同步方案,缺點副本未啟用不可讀寫問題。
基於sersync海量檔案實時同步
基於sersync海量檔案實時同步 專案需求 最近涉及到數百萬張從本地儲存遷移到雲儲存,為了使完成遷移,並保證無缺失,業務不中斷,決定採用實時同步,同步完後再做流量切換。在實時同步方案中進行了幾種嘗試。方案1 rsync inotify同步,最先想到的是此方案,先看下指令碼 此前在多台伺服器間同步 ...
lsync目錄檔案實時同步工具
參考文件 官網 伺服器角色 作業系統型別 ip位址 目錄目標 源伺服器 centos7.4 11.11.11.2 share 實時同步到目標伺服器 目標伺服器 centos7.4 11.11.11.3 opt share yum y install lua lua devel rsync 1 配置源...
檔案實時同步後防篡改的操作記錄
部署思路 1 sftp高可用環境部署,參考 2 rsync inotify實時同步環境部署,參考 3 防篡改做法 當檔案被首次實時同步到應用伺服器上後,立馬使用chattr命令將其鎖定,即禁止寫入!可以在應用伺服器上寫乙個鎖定檔案的指令碼,實時執行的!sftp的上傳目錄是 data test,實時同...