バックアップ

【連載コラム:Linuxでサーバーを構築してみよう(14)」
今回のテーマはバックアップについてです。
日頃から「バックアップは大切です」と言われますが、なぜ大切なのかを解説いたします。

最終更新日:2023年03月16日

バックアップは大切です、といつでも言われますが、どのようなバックアップがどのように重要となるでしょうか。

サーバー構築の連載コラムの14回目となる今回は、その「バックアップ」について解説をしていきます。


データベースの情報

現在のシステムではバックエンドで各種データベースを動作させることが多くなっています。これらのデータがないと、システムが正常に動作しません。特に顧客などの情報や取引情報などが失われると、単にシステムの問題だけでなく、信用も失われてしまいます。

システムの冗長化を図ってデータが消失しないようにするだけでなく、きちんとバックアップを行って万が一の時にデータを元に戻せるようにしておく必要があります。

サーバの設定ファイル

サーバーの設定ファイルは、もしバックアップしていなかった場合、設定をやりなおす必要が生じます。初期インストール時に設定を行った後、運用中に設定を変更する場合があるなど、やり直しが正しく行えない場合もあるので、常に最新の設定状態をバックアップしておく必要があります。

設定の自動化

最近では、サーバーの設定を手動で行わず、自動化ツールを使って自動的に設定を行わせることも増えています。

これをインフラのコード化(Infrastructure as Code/IaC)とも呼びます。自動化を行っている場合、設定はコードを再度実行すれば再現できるので設定ファイルそのものをバックアップする必要性は薄れますが、自動化を行うためのコードが失われてしまうと再現できなくなるので、コードのバックアップをしっかりと取っておく必要があるでしょう。

コンテンツファイル

Webサイトのコンテンツファイルはどうでしょうか?

これもケースバイケースと言えるでしょう。コンテンツをサーバーの外の別のソフトウェアでデザインしているという場合などは、おそらくサーバーの外にWebサイトの原型となるファイルが残っていますので、これがバックアップの代わりを果たします。

ただし、そのあとに細かな修正を行っていることも多いので、この場合はバックアップを取っていないと、復旧時にWebサイトが先祖返りしてしまうということになります。

「質」を理解しておく

このように、ファイルが「どのような性質・立ち位置のファイルなのか」を理解しておくことが、適切な管理を行う上で大切になってきます。中身や成り立ちがわかれば、どのように対応すればよいのかが判断できるようになる。これはバックアップに限らすさまざまな場面で大切なことです。

どのようにバックアップを取るのか

ここでは、具体的にバックアップを取得する方法について考えてみましょう。

バックアップのやり方は環境によって変わる

さて、バックアップはどのように取ればよいのでしょうか。

これは当然、オンプレミス環境なのか、VPSやレンタルサーバーなのかによって変わってきます。オンプレミス環境であれば、バックアップデバイスに直接接続してバックアップすることもできますが、VPSやレンタルサーバーであればネットワーク越しにバックアップを取得することになります。

バックアップが必要なサーバが複数あるような場合には、バックアップ用のサーバーを別に立てるという手法もあります。重要なデータを格納するのであれば、バックアップサーバーの導入は是非検討したい選択肢となります。

当然コストはかかりますが、さほど大きなスペックは必要ないのですから、トラブル時の保険と考えればさほど高い買い物ではないと思います。

rsyncを活用しよう

ここでぜひ知っておいていただきたいツールが「rsync」です。

このツールは2つのホスト間のファイルを同期するソフトウェアなのですが、差分を取る形で同期を取るため、同期に時間がかからない、sshと組み合わせて暗号化したうえで同期できるなど、さまざまなメリットがあります。機能も多く、リモートにあるサーバーのバックアップにはもってこいのツールとなりますので、ぜひ覚えておいてください。

仮想マシンのバックアップは「スナップショット」を活用、しかしデメリットも…

仮想マシンを利用している場合、「スナップショット」を取ることでバックアップすることもできます。この方法は、サーバーを丸ごとバックアップすることになるので、サーバー内のすべてがバックアップ対象となり、リストアも容易になります。

素晴らしいバックアップ方法ですが、デメリットもあります。仮想マシン全体をバックアップするので時間がかかり、スナップショットの容量がかなり大きな容量になってしまうということです。また、ファイルに何らかの障害が生じたり設定ミスが起こっている場合、その状態までバックアップされてしまい、リストアしても結局問題が解決しないということがありえます。必要に応じて、通常のバックアップ方法を併用するなども検討、実行しておきましょう。

バックアップの手法も「特性を理解しよう」

このように、バックアップの手法ということを1つ1つ見ても、メリットとデメリットがあるのです。意外と深いバックアップ、これもサーバ管理者の大切な仕事なので、バックアップの方法の特性を理解した上で、適切な場面で適切なバックアップができるようになってください。


筆者紹介
川原 龍人 氏

川原 龍人 氏

1975年生まれ。
著書に「BIND9によるDNSサーバ構築」、「シェルスクリプト ポケットリファレンス Bash編(技術評論社)」など。
予備校講師としても活躍中。Linuxとのつきあいは20年を超える。

バックナンバー

第14回:バックアップ

第13回:異常発生時の対応

第12回:サーバー構築という仕事

第11回:ユーザー教育の重要性

第10回:テスト環境を構築する

第9回:ログローテーションとは

第8回:ログの取得と管理

第7回:アクセス制限

第6回:OpenSSHの活用

第5回:ユーザーアカウントとアクセス制限

第4回:テスト環境を構築する

第3回:サーバー構築をハードウェアの視点から考えてみる

第2回:CMSを使ったWebサイトを構築するには?

第1回:Linuxでサーバーを構築しよう

ページトップへ