檔案實時同步設定步驟inotify rsync

2021-10-23 09:35:01 字數 2117 閱讀 6042

一,檔案傳送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,實時同...