家の鍵を1本しか持っていなければ、なくした瞬間に家へ入れなくなります。だから合鍵を作って、別の場所に預けておく。バックアップは、データについてこの合鍵を用意しておくことです。元のデータとは別の場所にコピーを置いておけば、サーバーが壊れてデータが読めなくなったときも、誤操作でファイルを消してしまったときも、ランサムウェアに暗号化されたときも、システムの更新後に不具合が見つかったときも、元の状態へ戻せます。
ただし、合鍵は作っただけでは意味がありません。いざというときにその鍵で本当に扉が開くか。次の3つを確かめておくと、「取ったつもり」を防げます。
どこに置いている?
合鍵を同じ鍵束に付けていたら、鍵束ごとなくしたときに一緒に失います。元データと同じサーバーの中にしか置いていないバックアップも、これと同じです。サーバーが壊れたら、両方とも失われます。
保管先は元データから切り離しておきます。オブジェクトストレージのように、別の系統の保管先を使うと分けやすくなります。
いつの時点に戻せる?
最新のコピーが1つだけだと、気づかないうちに壊れたデータや、暗号化されたデータで上書きしてしまうことがあります。1日前、1週間前、1か月前というように、複数の時点(世代)を残しておくと安心です。
どれくらいの頻度で取るかは、「どれだけの時間分のデータなら失っても耐えられるか」から決めます。この許容できる幅を、RPO(目標復旧時点)と呼びます。1日分なら毎日、1時間分なら1時間ごと。取り忘れを防ぐため、cron などで自動化しておきます。
本当に戻せる?
取っているのに戻せなかった、というのがいちばん困る失敗です。バックアップのファイルが途中で壊れていた、戻す手順を誰も知らなかった、戻すのに想定の何倍も時間がかかった。こうしたことは、実際に戻してみないと分かりません。
定期的に復元を試し、手順が動くことを確かめておきます。自動で取る設定にしたら、それが失敗していないかを見張る仕組みも必要です。バックアップは一度やれば済む作業ではなく、自動化、監視、復元の練習まで回し続ける運用です。