マップ情報消失時は手探りと勘で進められるファイル復旧
ここで、ファイルの復旧作業について説明しておきたい。以下が、物理HDDと仮想HDDの関係を簡単に示したものだ。仮想HDDのファイルは物理HDDに分散されているが、仮想HDDのどのファイルの中のどのデータが物理HDDのどこに格納されているかという情報は、物理HDDの「MAP情報」に格納されている。
ファイルが消失した場合、このMAP情報から分散されたデータを突き止めて繋ぎ合わせて修復していく。しかし、HDDをフォーマットしたり、HDDが物理的に壊れたりして、MAP情報がなくなってしまった場合が厄介だ。
仮想HDDのファイルが物理HDDのどこに格納されているのかまったくわからなくなってしまうからだ。吉川氏によると、まず、目印になるポイントを探り当て、その前後のデータを確認して、少しずつデータを繋ぎ合わせていくという。「データといってもバイナリデータであり、16進数の数字の羅列です。これらを関連付けていく作業は試行錯誤の連続です」
仮想化されたサーバのデータを復旧する場合、この作業が最も難関で時間がかかるそうだ。その期間はデータの量にもよるが、先に紹介した2件目の例ではデータ復旧に8日間かかったと述べたが、この半分以上がこの作業に当てられた。何日もにわたって16進数の数字の羅列を見つめ続けていく作業を成し遂げるには、精神力と忍耐が不可欠だ。
最低限、バックアップは取得しておきたい
安尾氏は、「最近、PCでもTBクラスのハードディスクが搭載されているが、このレベルの容量のハードディスクにどれほど大量のデータを保存できるかということが、あまり理解されていないように思います。携帯電話に搭載される1GBのマイクロSDカードでも、約2,000枚の画像ファイルを保存できます。データの量が増えれば増えるほど、復旧する際にかかる手間と時間も増えるわけです」と話す。
また同氏は、昨年から仮想化したサーバが増えていると指摘する。その要因の1つに、ヴイエムウェアが無償の仮想化ソフトの提供を開始したことがあるのではないかということだ。
障害対策の基本として、仮想化したサーバでも必ずバックアップをとってほしいと同氏は強調する。仮想化サーバのバックアップを取得する方法は大きく2つある。1つは仮想マシンをまるごとコピーする方法だ。この場合、ハードウェアに依存しないので、別の環境でも互換性が保たれそっくりそのまま移して利用することも可能である。これぞ、仮想化のメリットを最大限が生かされたシーンと言える。
ただし、この方法を用いる場合、「バックアップ取得時に仮想マシンを止めなければならない」ことが前提条件となる。なお、仮想マシンを停止せずにバックアップを行うには、有償のバックアップソフトウェアが別途必要になる。「この機能が利用できる有償のバックアップソフトウェアは決して安価ではないので、足踏みする企業もあるでしょう」(安尾氏)
もう1つの方法は、仮想マシン内のファイル単位でコピーする方法である。この場合、専用ソフトウェアを使わずに行うことが可能だが、いざこのバックアップデータを用いて復旧しようとした時が大変だ。まず、仮想環境を構築してから、ファイルを元に戻す必要がある。
加えて、「RAIDを信じすぎてはいけない」と、同氏は警告する。というのも、RAIDはハードディスクが1台壊れても動くため、仮にハードディスクが1台壊れたとしても気付かないことがあり、もう1台壊れてサーバが止まって初めて気付くということもあるそうだ。ハードディスクが1台壊れたところで、正常なハードディスクと交換しなくては、RAIDの意味がない。
これまで、ベンダーやメディアは仮想化のメリットこそ声高に唱えても、その障害対策までは触れてこなかったように思う。吉川氏の話にもあったように、仮想化サーバは動いている間はよいが、ハードディスクが壊れたらデータを復旧するのに膨大な時間がかかる。その間、仮想化サーバで稼働していた企業内のシステムは止まってしまうわけだ。文中で紹介したが、100GBのデータを復旧するのに1週間程度かかっている。データ仮想化サーバを導入している企業の方々は、これを機に、障害対策の手順について確認されてはいかがだろう。