バックアップの「自動化」がなぜ重要なのか
「バックアップは大事」と分かっていても、手動でやっていると必ずサボる日が来ます。そしてサボった日に限ってトラブルが起きるのが世の常です。バックアップは100%自動化してこそ意味がある——これはエンジニアの間では常識ですが、個人ブロガーや個人事業主にはまだ浸透していません。
この記事では、サーバーのデータを自動で安全にバックアップする仕組みを一から構築する手順を解説します。VPS利用者はもちろん、WordPressブログのオーナーにも役立つ内容です。
バックアップの3-2-1ルール
まず覚えておくべきは「3-2-1ルール」です。3つのコピーを保持し、2種類のメディアに保存し、1つはオフサイト(別の場所)に置く。これがデータ保護の国際標準です。
- コピー1:本番サーバー上のデータ(プライマリ)
- コピー2:同一サーバーの別ディスクまたはVPSの別インスタンス
- コピー3:クラウドストレージ(AWS S3、Google Cloud Storage等)
rsyncによるローカルバックアップの自動化
rsyncはLinuxに標準搭載されているファイル同期ツールで、差分バックアップに対応しているため、2回目以降は変更されたファイルだけを転送します。これにより高速かつ効率的なバックアップが可能です。
基本的なrsyncコマンドに–deleteオプションを付ければ、バックアップ先にも削除が反映されます。cronジョブと組み合わせて毎日深夜3時に自動実行するよう設定すれば、完全自動のローカルバックアップが完成します。
rcloneでクラウドバックアップを自動化
rcloneは40以上のクラウドストレージに対応した「クラウド版rsync」です。AWS S3、Google Drive、Dropbox、OneDriveなど、あらゆるクラウドサービスにバックアップを自動転送できます。
設定はrclone configコマンドで対話的に行えるため、初心者でも簡単です。S3互換ストレージを使えば月額数百円で数百GBのバックアップ領域を確保できます。暗号化オプションも標準搭載されており、セキュリティ面も万全です。
WordPressサイトのバックアップ自動化
WordPressサイトの場合は、ファイルとデータベースの両方をバックアップする必要があります。ファイルはrsyncで、データベースはmysqldumpコマンドで毎日ダンプを取得し、rcloneでクラウドに転送するスクリプトを作成しましょう。
バックアップの保持期間も重要です。日次バックアップは7日間、週次バックアップは4週間、月次バックアップは12ヶ月間保持するローテーションを設定すれば、万が一の障害から過去1年間のどの時点にも復元できます。
バックアップの監視とアラート設定
自動化したバックアップが「実は失敗し続けていた」という最悪の事態を防ぐために、監視とアラートの仕組みも構築しましょう。バックアップスクリプトの終了コードをチェックし、失敗時にSlackやメールで通知するよう設定します。週1回はリストアテストを行い、バックアップファイルが正常に復元できることを確認する習慣をつけましょう。
よくある質問
Q. バックアップの頻度はどれくらいが適切ですか?
A. ビジネス用途なら最低でも日次バックアップを推奨します。更新頻度が高いサイトであれば、6時間ごとや1時間ごとのバックアップも検討しましょう。rsyncの差分バックアップなら負荷も最小限です。
Q. 無料で使えるクラウドバックアップ先はありますか?
A. Google Driveは15GB無料、Oracle Cloud Free Tierは最大200GBのオブジェクトストレージが無料です。小規模なサイトであれば十分な容量です。rcloneを使えば簡単に連携できます。
Q. バックアップからの復元はどれくらい時間がかかりますか?
A. データ量やネットワーク速度によりますが、一般的なWordPressサイト(数GB程度)であれば30分〜1時間で完全復元できます。事前にリストア手順をドキュメント化しておくことが重要です。
この記事が参考になったら、ランキング応援お願いします!
