lsync와 rsync의 원리를 알고 싶습니다..
글쓴이: MADENG / 작성시간: 목, 2016/08/11 - 10:43오전
개념이 안잡히는거 같아서 질문해 봅니다.
lsync같은 경우는
리눅스 커널의 inotify로 파일시스템의 변경사항을 체크한다.
inotify는 리눅스 커널에 포함된 기능으로, 파일시스템에 변경사항이 발생할 때 이벤트를 통보해준다.라고 되어 있는데
원본 서버에 파일이 바뀌거나 수정됨 -> inotify 가 수정되거나 파일이 바뀐것을 확인 통보한다
-> lsync 가 뭐가 바뀌었으니 (백업서버들)너희들이 rsync를 써서 동기화 갱신시켜라....이건가요? 아니면
-> lsync 가 뭐가 바뀌었으니(자기자신)에 설치 되어 있는 rsync 에게 바뀐거나 갱신된거 (백업서버)들에게 때려박아 동기화시켜라 이런건가요?
아니면 lsync가 (자기자신)에 설치 되어 있는 rsync 에게 난 rsync 널 호출만 할테니 너는 내가 호출 할때 마다(백업서버들)에게 바뀐내용을 알아서 보 내줘 이런건가요?
rsync는 모르겠어요 ;ㅅ;
Forums:
rsync는 client mode와 server
rsync는 client mode와 server mode (데몬 형태)로 제공됩니다.
마스터 - 슬레이브 구조로 운영 될 때
마스터에 파일 변경이 발생하면 lsync는 로컬에 있는 rsync를 실행(client mnode)해서 슬레이브의 rsync(server mode)와 연동되도록 동작됩니다.
결국 마스터에서 슬레이브로 파일을 밀어주는 구조입니다.
소곤소곤
감사합니다 ;ㅅ;
2일동안 그리고 지금까지 헛발짓하면 내가 정말 머리를 쓰고있나 하는 생각이 들정도로 멘붕이었는데 답변주셔서 감사합니다 ;ㅅ;
lsync가 yum으로 안깔려서 해매다가 어찌어찌 깔았는데 start는 안되고 journalctl -xe 를 들어가 봣는데 뭐가 뭔지 모르겠고...(centos 7)
원본파일은 lsync고 백업은 rsync다 머다해서 따라는 해봣는데 뭔지조차 모른체 계속 멘붕상태네요..
(centos6)
vim /etc/lsyncd.conf
settings = {
2 logfile = "/var/log/lsyncd.log",
3 statusFile = "/var/log/lsyncd-status.log",
4 }
5
6 sync{
7 default.rsync,
8 source= "/var/www/html/",
9 rsyncOpts="-av",
10 target= "192.168.11.211::webserver2",
11 }
12
13 sync{
14 default.rsync,
15 source= "/var/www/html/",
16 rsyncOpts="-av",
17 target= "192.168.11.212::webserver3",
18 }
(centos7)
vi /etc/rsyncd.conf
# /etc/rsyncd: configuration file for rsync daemon mode
# See rsyncd.conf man page for more options.
# configuration example:
[webserver2]
path = /var/www/html
host allow = 192.168.11.210,192.168.11.212
uid = 0
gid = 0
use chroot = yes
read only = no
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
# [ftp]
# path = /home/ftp
# comment = ftp export area
따라는 하고는 있지만 지금 뇌가 백지상태인데 머리는 아픈거 같고 허허허허허
lsyncd는 커널의 inotify 정로를 이용하여
lsyncd는 커널의 inotify 정로를 이용하여 실시간으로 변경된 파일을 감지하여 slave server로 전송을 하는 데몬 입니다.
이 lsyncd를 사용할 때, slave server에서는 lsyncd가 아니라 rsyncd 가 떠 있으면 된다는 의미 입니다.
즉, 원본 서버 쪽에서는 lsyncd가 떠 있으면 되고, 복제 서버 쪽에서는 rsyncd 가 떠 있으면 된다는 의미입니다.
댓글 달기