Rsync 원격 백업 스크립트

“체계적인 백업관리를 위해 아래 조건을 만족하는 백업스크립트를 작성 합니다.

* 요구사항 *
1) 스크립트 상단에 Config 설정으로 다양한 서버의 백업을 적용할 수 있게 합니다.
2) 백업대상이 되는 디렉토리 등 시나리오를 배열 형태로 작성합니다.
(시나리오 가독성 향상)
3) 매주 일요일 동기화, 평일에는 추가백업 or 매월 1,16일 동기화 그 외에는 추가백업, 항상 동기화하는 설정
4) 백업결과는 원본서버에 txt 로그, 원격지 웹서버에 MySQL 저장하여 백업결과를 중앙에서 확인할 수 있게 합니다.
5) 레포트 서버가 장애 발생해도 백업은 중단없이 진행되어야 합니다.

* 테스트 환경*
1) 운영서버(백업이 필요한 서버) : 192.168.11.9 CentOS 7
2) 백업서버 : 192.168.11.99 CentOS 7
3) 레포트 서버 : 백업서버 (192.168.11.99) 와 동일하며 APM 구성

### 바로가기(연관) ###
mysql 로컬백업 및 rsync 원격백업 스크립트
>> Rsync 원격 백업 스크립트


1. 운영서버 backup.sh


2. 백업서버 rsyncd.conf 및 폴더생성

※ 원본소스와 백업경로에 따라 설정을 변경할 수 있습니다. 가령 /data1 을 /back1으로 로컬백업 시
1) SN=(“/data1/:127.0.0.1:back1”)
2) rsync 백업 옵션에 R 제거
3) rsyncd.conf 에 path = /back1/
등으로 설정 합니다.

3. 레포트 서버 DB MySQL 작업
1) DB 명 SRV 생성, 테이블명 backup 로 아래 SQL 실행
2) backup 생성용 SQL

4. 레포트 서버 PHP 페이지
1) /conf/common.php

2) /bk_insert.php

2-1) /bk_insert.php (위 php 파일을 prepared statement 형태로 변경)

5. backup.sh 실행 시 Report
1) 로컬 파일 (/scripts/BK_Report/20150508_2300_home_SYNC.txt)

2) 보고용 서버 DB
rsync_backup_report

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

This site uses Akismet to reduce spam. Learn how your comment data is processed.