VPS

サーバーのバックアップ方法まとめ

サーバーのバックアップ方法を、レンタルサーバー、VPS、クラウドサーバーなどのシーンごとにまとめました。バックアップ方法ごとのメリットやデメリット、最新の動向なども。

なぜバックアップが必要なのか?

サーバーに置いてあるデータやプログラムは、ある種の資産です。そうした資産はしっかりとバックアップして守る必要があります。

サーバーバックアップの目的は、

  • 操作ミス対策
  • 障害対策

が主なところでしょう。

サーバーは何かしらの原因でデータが消失したり(ホスティング会社要因、ユーザー要因共に)、いきなりログイン出来なくなったりする可能性が0ではありません。また、コマンドミスなどで誤まってデータを消してしまうこともあります。

そうしたケースを想定してバックアップはしっかりと取っておく必要があります。

バックアップの頻度

バックアップの頻度は、バックアップ内容によって異なります。

随時更新されるようなサイト上のデータは、1時間ごと、更新ごとが理想ですが、リソースの問題もあるので出来れば日次でバックアップを取るのが良いでしょう。

一方で、変更箇所が比較的少ないプログラム本体やサーバーの設定などは、1週間に一回、最低でも大きな変更を加えた時にバックアップを取っておくと安心です。

バックアップ方法

スナップショットを取る

クラウドサーバーや一部のVPSで標準機能としてあるのがスナップショット機能。サーバーの状態を写真を撮るようにそのまま保存するので、ある時点でのサーバーの状態まで一気にロールバックすることが可能です。

また、スナップショットからマシンを新たなに立ち上げることもできるので、サーバーのベースの設定が完了したら、一回は取っておくと安心かつ便利です。

バックアップ方法 汎用性 レンタルサーバー VPS クラウドサーバー
スナップショットを取る x

なお、共有レンタルサーバーではスナップショット機能はありません。

バックアップオプションを契約する

スナップショット機能が共有レンタルサーバーでのバックアップ方法としてメジャーなのが、バックアップオプション。バックアップの範囲や頻度はホスティング会社によって異なりますが、月額500円ほどで日次バックアップを第3世代くらいまで保持というのが多いイメージです。

バックアップ方法 汎用性 レンタルサーバー VPS クラウドサーバー
バックアップオプション x

プラグインを使う

WordPressなどのCMSを使っている場合、プラグインで自動バックアップが出来ることがあります。こいたプラグインを使うと、自動でGoogle Driveなどにサイトデータをバックアップできるので非常に便利です。

ただし、プラグインが最新のCMSバージョンに対応していないとバックアップとして機能しなくなるので、そうしたリスクには注意しましょう。

バックアップ方法 汎用性 レンタルサーバー VPS クラウドサーバー
プラグインを使う

そもそも公開サーバーは「コピー」という運用

データを生成するサーバーも出力するサーバーも1台で行うことが普通でしたが、最近では障害対策に優れているということで、「公開サーバーは本番データのコピーを置くだけ」という運用がポピュラーになってきています。

Gitレポジトリ + CI/CDを使う

プログラムレポジトリのGitと、プログラムのビルド&デプロイを担うCI/CDを組み合わせて、サイトの生成はバックエンドサービスに任せて、公開サーバーには完成したデータのコピーを置くだけという運用です。現在、ある程度サーバーの知識がある方はこの方法を使っていることが多いのではないでしょうか。

Gitレポジトリはローカルにもリモートにもあるので、バックアップ体制は本番データも含めて3重になるので安心ですし、レポジトリにプッシュするだけでCI/CDがビルド&デプロイで公開までしてくれるのでほぼ全自動で楽なのがメリットです。

バックアップ方法 汎用性 レンタルサーバー VPS クラウドサーバー
Gitレポジトリ + CI/CD

デメリットとしては、「保存 => 即反映」とはならないところですが、サイトのベースプログラムなどは数秒といった即時性が求められる部分ではないので、大きな問題にはならないことがほとんどです。

また、公開サーバー側の設定については、Gitレポジトリでは管理できないので、別途バックアップ方法が必要なのもデメリットです。

Dockerを使う

Dockerも最近のポピュラーな方法です。

Dockerはプログラムだけでなく、サーバー環境まで一つのパッケージにしてしまうので、Gitレポジトリ + CI/CDのデメリットであったサーバー環境のバックアップもDockerだけで完了します。イメージとしては、スナップショットとほぼ同じです。

VPSやクラウドサーバーではDockerが組み込まれたOSイメージも配布しているのが通常なので、Docker入りサーバーをワンクリックで立ち上げて、コマンドから自前のDockerイメージをpull & runすれば、合計10分未満で新たなクローンサーバーを立ち上げることも可能です。

Dockerは選べるサーバーの選択肢も広いので、「いつでも簡単にサーバーの移転が可能」というメリットもあります。

バックアップ方法 汎用性 レンタルサーバー VPS クラウドサーバー
Dockerを使う x

バックアップ方法まとめ

ここまであげたバックアップ方法を比較してみます。

バックアップ方法 汎用性 レンタルサーバー VPS クラウドサーバー
スナップショットを取る x
バックアップオプション x
プラグインを使う
Gitレポジトリ + CI/CD
Dockerを使う x

汎用性が高いのはGit + CI/CD、Dockerですが、ある程度知識が必要なところがデメリットです。スナップショットやバックアップオプションは、簡単ですがそのプラットフォームでしか使えないため、汎用性が低いのがデメリットです。


価格は記載がある場合を除き、すべて税抜きです。

この記事の関連キーワード

VPSの記事