TOP ▲
itcore TOP
> TIPS
> backup2.php
タグ:centos7 バックアップ rsync ログ CentOS7 バックアップサーバ作成2 | itcore 2019年
サーバ準備
・本番とは別の物理サーバに作成する。
・ホスト名は[本番ホスト名]-bkuo
・本番サーバと同じ環境のVMを用意。
・CPUとメモリは本番より小さくて良い。
・DISKの容量は本番と同じ大きさとするがSSDでなくSATAとする。
・プライベートは別のIPを設定し、デフォルトGWもプライべートにしておく。
・グローバルは本番と同じIPを設定してオフにしておく。
インストール
CentOS7をインストール
グローバルのnicはオフにして、ゲートウェイはプライベートで設定します。。
Apache, PHPをインストール
SSLはFireWallのみ許可する。
http://10.0.0.140
バーチャルホストの設定
本番サーバ名で作成する。
PC HOSTSの設定と確認
10.0.0.140 www.itcore.jp
http://www.itcore.jp
バックアップ
sshパスワードなし接続
[root@www ~]# vi /root/cron/rsync.sh
# コピー元サーバ
src_ip=10.0.0.40
# バックアップディレクトリ(xxx/)、ファイル
dirs=();
# 共通 apache logrotate
dirs+=("/etc/httpd/conf.d/");
dirs+=("/etc/letsencrypt/");
dirs+=("/etc/logrotate.d/");
dirs+=("/var/www/");
# mysql (ob)
dirs+=("/etc/my.cnf");
dirs+=("/var/lib/mysql/");
dirs+=("/var/bkup_mysql/");
# mrtg
dirs+=("/etc/mrtg/");
# 実行
log=/root/cron/rsync.log
cp /dev/null $log
for dir in ${dirs[@]}
do
rsync -av --delete root@$src_ip:$dir $dir |& grep -v -E '/$' |& tee -a $log
done
# リネームバックアップ
rsync -av --delete root@$src_ip:/root/ /root/hon_root/ |& grep -v -E '/$' |& tee -a $log
rsync -av --delete root@$src_ip:/var/spool/cron/ /root/hon_crontab/ |& grep -v -E '/$' |& tee -a $log
# バックアップログ
/root/log_put.sh
cron
# chmod +x /root/cron/rsync.sh
# crontab -e
0 2 * * * /root/cron/rsync.sh > /root/cron/rsync.log2 2>&1