バックアップの設定完了。cronの設定が失敗。

先日、サーバーが故障したことで、バックアップをきちんと取るることにしました。しかし、設定完了まで長かった。

まずは、どうやってバックアップをするか。写真関係は、Windowsのクライアント経由で違うサーバー(VPN経由で物理的に場所が違う玄箱)にBunBackupというアプリケーションでバックアップしています。この方法ですと、Windowsのクライアントは電源が入りっぱなしです。

もう少し、サーバー管理者らしくサーバー間でバックアップするように考えてみました。使ったのは、rsync。rsyncは、サーバー間でファイルの同期を取ってくれます。2つのサーバーでrsyncで同期をとればいいのですが、認証を設定するのが面倒なので(この辺りはまだまだ甘いです)、NFSでバックアップするサーバーのファイルシステムを、バックアップされるサーバーからマウントしてしまいます。

これでrsyncで必要なディレクトをバックアップしてしまいます。しかし、バックアップするファイルサイズが大きいので、最初のバックアップに時間がかかります。nfsでマウントしているのも問題か? 昼間は他の会社さんもネットワークを使っていますので、ネットワークの負荷をかけないためにも夜間だけバックアップを実行します。したがって、何回か分けて1週間ほどかかりました。

あとは、cronを仕掛けて夜中の3:00にrsyncを実行するように設定してしまいます。しかし、朝サーバーのプロセスをみたら、rsyncのプロセスがたくさん溜まっています。

cronの設定を見てみると、

 * 3 * * * /root/rsyncbackup.sh

となっていました。webminで何も考えずに設定したのはまずかった。正解は、

 0 3 * * * /root/rsyncbackup.sh

ですね。こうしないと午前3:00にバックアップを実行してくれません。単純なミスです。