TOP ▲ itcore TOP TIPS

Ubuntu バックアップサーバの作成 | itcore 2016

OSインストール

# 本番と同じバージョンのOSをインストールする。
# ホスト名は本番と同じにする。(VM名には-bkupを付けておく)
# グローバルは本番と同じIPを設定してオフにしておく。
# プライベートは別のIPを設定。デフォルトGWもプライべートにしておく。
Ubuntu Server 16.04 LTS インストール

sshのパスワードなし実行

# 公開鍵を作成
sudo -s
/usr/bin/ssh-keygen
# すべて何も入力しないでenter


# 生成された公開鍵をメモ帳にコピー
cat /root/.ssh/id_rsa.pub



<本番サーバへの設定>

ssh 本番サーバ
sudo -s
vi /etc/ssh/sshd_config
:33
# 以下の行のコメントをはずす
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
:wq


# 公開鍵の保存
mkdir -p /root/.ssh
vi /root/.ssh/authorized_keys
# バックアップサーバの公開鍵を最後に追加
:wq


# ログアウト
exit


<バックアップサーバの設定へ戻る>

# 除外ファイルを指定する。
# 一部CentOS系のものも入っているが害はない。
# rootのcronは名前を変えて(cronとして動かない用にして)コピーする。
mkdir -p /root/bkup
vi /root/exclude.txt
# 以下をコピペ
/boot/
/dev/
/etc/fstab
/etc/network/
/etc/sysconfig/
/etc/udev/
/lib/modules/
/lib/udev/
/proc/
/root/exclude.txt
/root/rsync.log
/root/.ssh/
/root/bkup/
/root/.ssh/known_hosts
/run/
/selinux/
/sys/
/var/lock/
/var/run/*.pid
/var/run/*/*.pid
/var/spool/cron/root
/var/spool/cron/crontabs/root

# cron用シェル
vi /root/bkup/rsync.sh
# 以下をコピペ  10.0.0.24は本番サーバのIP
scp root@10.0.0.24:/var/spool/cron/crontabs/root /root/bkup/cron_root
rsync -av --delete --exclude-from=/root/exclude.txt root@10.0.0.24:/ /
scp root@10.0.0.37:/etc/sysconfig/iptables /etc/sysconfig/iptables
/etc/init.d/iptables restart

# 実行権をつける。
chmod +x /root/bkup/rsync.sh

# cronへ登録
# 起動時間は管理表を作って、他のバックアップと重ならないようにする。
crontab -e
40 2 * * * /root/bkup/rsync.sh > /root/rsync.log 2>&1

# 最初の起動ではエディタを聞いてくるので3のviを選ぶ

# rsyncを手動で実行
/root/bkup/rsync.sh | tee /root/rsync.log

# 最初の実行でホストの登録を聞かれるのでyesと入力。


# サーバを再起動する。
shutdown -r now

# サーバ監視に登録する。