自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

運(yùn)維 系統(tǒng)運(yùn)維
Lsyncd 在幾秒鐘內(nèi)將這些文件事件整理核對(duì)后,然后生成一個(gè)或多個(gè)進(jìn)程以將更改同步到遠(yuǎn)程文件系統(tǒng)。默認(rèn)使用的同步方法是rsync。因此,Lsyncd 是一種輕量級(jí)的實(shí)時(shí)鏡像解決方案。

Lsyncd簡(jiǎn)單介紹

Lsyncd 使用文件系統(tǒng)事件接口(inotify 或 fsevents)來(lái)監(jiān)視本地文件和目錄的更改。

Lsyncd 在幾秒鐘內(nèi)將這些文件事件整理核對(duì)后,然后生成一個(gè)或多個(gè)進(jìn)程以將更改同步到遠(yuǎn)程文件系統(tǒng)。默認(rèn)使用的同步方法是rsync。因此,Lsyncd 是一種輕量級(jí)的實(shí)時(shí)鏡像解決方案。

Lsyncd 相對(duì)容易安裝,不需要新的文件系統(tǒng)或塊設(shè)備。Lysncd 不會(huì)影響本地文件系統(tǒng)的性能。作為 rsync 的替代方案,Lsyncd 還可以通過(guò) rsync+ssh 推送更改。當(dāng)文件或目錄被重命名或移動(dòng)到本地樹中的新位置時(shí),rsync+ssh 允許更有效的同步。(相比之下,plain rsync 通過(guò)刪除舊文件然后重新傳輸整個(gè)文件來(lái)執(zhí)行移動(dòng)。)

Lsyncd 2.2.1 要求 rsync >= 3.1。

官方文檔:

https://lsyncd.github.io/lsyncd/

下面介紹CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

  • 源服務(wù)器A:192.168.31.230
  • 目標(biāo)服務(wù)器B:192.168.31.60

需求:將A服務(wù)器上/var/log/nginx/目錄下文件實(shí)時(shí)同步到B服務(wù)器中,并排除error.log*

1、A服務(wù)器上安裝lsyncd

前提是有配置EPEL源。

yum install lsyncd

CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

2、A服務(wù)器配置到B服務(wù)器的免密登錄

ssh-keygen -t rsa -b 4096
ssh-copy-id -p 8122 root@192.168.31.60
ssh -p 8122 root@192.168.31.60

CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

3、配置/etc/lsyncd.conf

mv /etc/lsyncd.conf /etc/lsyncd.conf_default
vi /etc/lsyncd_exclude.lst
vi /etc/lsyncd.conf
添加如下內(nèi)容
/etc/lsyncd.conf
settings {
logfile = "/var/log/lsyncd/lsyncd.log",
statusFile = "/tmp/lsyncd.status",
insist = true,
inotifyMode = "Modify",
statusInterval = 1
}
sync {
default.rsyncssh,
source="/var/log/nginx/",
host="192.168.31.60",
targetdir="/data/logs_backup",
excludeFrom="/etc/lsyncd_exclude.lst",
maxDelays = 5,
delay = 0,
rsync = {
archive = true,
compress = false,
-- verbose = true
},
ssh = {
port = 8122
}
}

要排除error.log*。

vi /etc/lsyncd_exclude.lst 
error.log*

CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

4、配置文件檢查測(cè)試

lsyncd -nodaemon /etc/lsyncd.conf運(yùn)行查看下是否有報(bào)錯(cuò),如果有報(bào)錯(cuò)根據(jù)報(bào)錯(cuò)情況排查配置文件問(wèn)題。

lsyncd -nodaemon /etc/lsyncd.conf

如下圖所示,當(dāng)curl http://192.168.31.230觸發(fā)了access.log變動(dòng)時(shí)會(huì)觸發(fā)同步。

CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

如果沒(méi)有報(bào)錯(cuò)直接退出后就可以使用systemctl start lsyncd啟動(dòng)lsyncd即可。

5、設(shè)置為服務(wù)后臺(tái)運(yùn)行

systemctl enable lsyncd.service
systemctl start lsyncd.service
tail -f /var/log/lsyncd/lsyncd.log

CentOS7下使用Lsyncd實(shí)現(xiàn)文件實(shí)時(shí)同步

以上就是使用Lsyncd實(shí)現(xiàn)文件自動(dòng)同步的過(guò)程。

要比之前的文章記一次利用GrayLog實(shí)現(xiàn)采集與備份云服務(wù)器Web訪問(wèn)日志的實(shí)現(xiàn)過(guò)程的方式更簡(jiǎn)單。

責(zé)任編輯:姜華 來(lái)源: 今日頭條
相關(guān)推薦

2021-05-12 07:42:41

CentOS7Python3系統(tǒng)

2022-02-14 07:47:30

巡風(fēng)CentOS7漏洞掃描

2023-11-09 07:44:21

2021-05-14 08:05:11

Centos7 Unit配置

2020-11-06 08:05:05

CentOS

2024-08-13 09:16:30

2020-08-28 11:20:01

CentOS7RocketMQ 4.運(yùn)維

2017-02-27 11:06:59

RHEL7CentOS7密碼

2021-01-08 09:02:19

CentOS7Prometheus監(jiān)控

2010-03-31 13:04:37

CentOS安裝

2022-05-23 07:48:10

zabbix監(jiān)控CentOS7

2011-06-22 10:37:08

rsyncinotify

2014-10-09 10:04:23

CentOS集群

2021-06-29 12:10:48

CentOSMySQL工具

2020-09-21 11:30:28

CanalMySQL數(shù)據(jù)庫(kù)

2024-07-03 08:02:19

MySQL數(shù)據(jù)搜索

2020-07-16 08:37:39

NginxCentOS7搭建

2024-10-30 08:15:18

2014-08-14 10:52:49

windowslinux

2010-05-21 14:53:25

Centos下SVN的
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)