rsync, dd 및 snapshot의 여러 호출 처리

rsync, dd 및 snapshot의 여러 호출 처리

서버는 다음 작업을 자주 실행합니다. 논리 볼륨의 스냅샷을 찍은 다음 콘텐츠를 원격 백업 서버에 백업합니다. 여러 백업과 전송이 동시에 발생할 수 있습니다. 너무 많은 rsync 세션과 마운트된 스냅샷 볼륨이 문제가 될까요? 처리 시 서버 성능을 최적화하는 방법은 무엇입니까?

lvcreate -L10G -s -n snapshot /home/folderA 

dd if=/mnt/snapshot bs=1M | (ssh [email protected] of=/tmp/backups bs=1M)

rsync -avzh --rsh "ssh -l username" /mnt/snapshot 192.168.1.5:/tmp/backups/  

답변1

선택한 항목이 한 번에 하나의 인스턴스만 실행되도록 일종의 잠금을 설정하는 것이 가장 안전할 것입니다. 그러나 실행 빈도(계획)와 소요 시간을 알지 못한 채 확실히 말하기는 어렵습니다.

CentOS에는무리(1)유용할 것 같은 명령입니다.

[ "${FLOCKER}" != "$0" ] && exec env FLOCKER="$0" Flock -en "$0" "$0" "$@" || :

          This is useful boilerplate code for shell scripts.  Put it at
          the top of the shell script you want to lock and it'll
          automatically lock itself on the first run.  If the env var
          $FLOCKER is not set to the shell script that is being run,
          then execute flock and grab an exclusive non-blocking lock
          (using the script itself as the lock file) before re-execing
          itself with the right arguments.  It also sets the FLOCKER env
          var to the right value so it doesn't run again.

관련 정보