大惨事2
技術部長です。
前回のブログで業務データを格納しているサーバー (NAS)がバックアップを道連れにダウンしてしまったことをお話ししました。不幸中の幸いというか、専門業者に依頼することで、高価ではありましたが、データはすべて回収できました。データサーバーが動作しないための業務停止は1日ですみました。もちろん、「それ以外」の業務もありますから、実際上、業務に対しては大きな影響が出ることはありませんでした。
さて、業務のための作業が一段落したところで、今回の事故について検討を行いました。NASを使った業務サーバーは今後も使いますし、同様なことが起きるのを防ぐためにも必要です。とはいえ、システムを分解してチェックするほどの時間もありませんので、データ回収をしてくれた業者からの情報やNASの挙動からの類推です。すこし、技術的な話が続きます。
当社では、TeraStation TS5600は、HDD6台をRAID6で構成して使用していました。HDDが故障すると自動的に「リダンダントモード」にはいり、メッセージが表示されます。これは、今までも2回おきたことがありましたし、予想される現象です。その場合は、故障したHDDを交換すれば、自動的にRAIDの再構築が行われ、その間も、若干、データの読み書きの速度は落ちますが、業務を続けることができます。
今回は、HDD故障のメッセージはありませんでした。これは、業者からの情報ですが、HDD故障を判断する情報については、「正常」であるにもかかわらず、データ領域に「キズ」があるHDDがあったそうです。これが、今回のインシデントを起こしたと考えられます。つまり、「HDDは故障していないのにデータが読みだせない」・・「未フォーマットである」と判断されたのではないかとのことです。
そういえば、最近データの読み書きが従来よりもかなり遅くなっているような気がしていました。まさに、後知恵ですが、この壊れかけのHDDのためにデータの転送のやり直しが起きていたのでしょう。そのためにデータバックアップにも予想以上の時間がかかっていたと思われます。
さて、事故が起きたときは、データの読み書きの遅延とバックアップファイルの書き込み遅延が起きていたのではないかとおもいます。しかし、メッセージは正常を示しています。ここで「強制的に再起動」してしまったわけです。書き込み中のバックアップファイルは不完全なものとなってしまいます。一方、再起動したときにHDDからのデータが不完全なために「未フォーマット」と表示されたのではないかと考えています。また、この再起動のためにおかしな壊れ方をしたHDDからのデータが取り出せなくなったのではないかとおもいます。つまり「とどめ」を刺したわけです。
そういうことならば、この故障したHDDをとりはずせば、通常のリダンダントモードになって普通にデータ復旧ができた可能性もあります。もっとも、これは、業者からの情報を聞くまでは、全く予想できないことで、まさに「後知恵」です。専門業者の作業は故障した装置からとりはずしたHDDのクローンを準備して、RAIDを再構築する装置にセットして状況を調べ、データ回収を行うそうです。この方法がとれれば、異常を起こしているHDDを調べられますが、我々はその手段を持っていません。下手なことをするとデータを壊していたかもしれません。
さて、今回の事故で一番ダメージがあったのは、バックアップファイルが壊れていたことです。RAIDのバックアップをすこし甘く見ていたところがありました。やはり、複数の世代バックアップをする必要がありました。幸い、大容量のHDDもかなり安価となっています。もう一つ、重要なことはバックアップのためのHDDのフォーマットです。TeraStationの場合、外付けHDDはxfsというフォーマットになります。これは、Windowsからは利用できません。当社にはLinuxのサーバーもありますが、やはり、事故発生時にはWindowsで作業できた方が便利です。そこで、バックアップ用の外付けHDDをWindowsに接続できる(CIFSフォーマット)ことも条件として、次期NASの選定を行い、QNAP社製のTS-653Dを採用しました。現在は、RAID6で構築し回収されたデータを格納して、従来通りの業務ができています。また、NASのデータバックアップも複数世代でとるようにしました。最悪、今回のような事故が起きても一世代まえのデータに戻ることができます。
では、また。