treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

ハードディスクの換え時って難しいなぁと思った

ハードディスクを故障対策として交換する、結構巷ではよく聞く話ですが、換え時ってどうやって見極めるもんでしょう?
今日はこの辺で思ったこと(頭の中に浮かんできたこと)をご報告します。

先日なんとなくソフトウェアRAIDの記事を書いて、ちょっと頭をよぎったことです。

blog.treedown.net

この記事

換え時が重要なハードディスク

最近ディスク容量が不足する場面にちょくちょく出会います。そのたびに「あっちのストレージにこのデータを移して…」といった具合に容量を融通するためにデータを移動する作業をするのですが、ふと、
「このデータを移した途端にこのハードディスクが壊れたら…?」
と思ったのが、きっかけ。

では、その利用中のハードディスク、いつ交換します?

  • 壊れていないのに交換するのはなんだかもったいない。
  • じゃあ壊れてから交換するのかというと、最悪データ損失が発生するかもしれないからそれはイヤだなぁ。

じゃあ、どこで交換しようか、というのはすごく迷います。

こんな迷いが延々書き記された今日の記事。

まずは寿命を知ることか?

最近は便利になってきており、SMARTに代表されるような寿命を測る指標やそのための道具となるソフトウェアもフリーソフトで活用されているユーザが多いように思います。
基本的にはこのような指標や道具を活用して今使っているストレージがあとどれくらい使えるのか、という監視をしていくのが重要ということになります。
でも一説によればSMARTで測れる(予測できる)寿命はごく一部のケースであり、やっぱり故障は突然訪れる、これは避けようがない、という説もあって、いざ故障したときにどうリカバーするかはカード(対策)として持っておきたいな、というのは一ユーザとして思うところです。

そうだ、RAIDがあるじゃないか

故障が怖いならRAIDで保護しておき、HDD1台が故障してもセーフな状況にしておけばいいんじゃないかとまず真っ先に思いました。
でも、よくよく考えてみると、「故障ってHDDだけじゃないなぁ」ということに気づきます。要するにRAIDカード(ボード)とかRAID対応のHDDケース本体の電源といった「冗長化されてない部品が壊れたらアウト」って一面があります。RAIDを担当しているケースやカードなどの部品が壊れても大丈夫と言えるRAIDはRAID1=ミラーリングくらいしか思いつきません。
そうなると、RAID0/10とかRAID5/6あたりでHDDの読み書き速度も向上させつつHDDを利用する、ってなると、同じHDDケースやRAIDカードを複数用意して予備部品がある状態で利用する、ってことになります。これはなんともお財布に厳しい。

じゃあ、やっぱSSDか

速度が欲しいのなら、HDDを使わずにSSDを使って、そのSSD二台をRAID1でミラーリングしておく、って方がいいんじゃない?
いやでも、容量が少ないなぁ、HDDをRAID5/6とか10にしたら、ただでさえ大容量のHDDが複数台連結されることで、広大な領域を1ボリュームとして利用することができる、しかしSSDだと単体の容量が少ないし、単価も高い、連結してもそれほどのメリットが見いだせないなぁ、ということに。
でも、SSDは基本的に容量あたりの値段が高い、という点が問題なだけでストレージとしてその他のポイントはすべてHDDを超えている点も考えておきたいポイントですね。
SSDだと1日や1週間の読み書きのデータ量から計算して、どれくらいの期間持つものかを計算することも可能なので、SSD化して「だいたい〇年くらい」という目安を出しておき、予防保守的に交換を実施する、ってのが良さそうな気がしています。(実際やるかどうかはさておき)

でも、SSDでも結局コントローラーの突然死ってのは十分考えられる話で、ハードディスクだろうがSSDだろうが不測の故障ってのは発生する、という原則はアタマに入れておく必要があります。

で、結局バックアップ?

そうなると、じゃあ、別の記憶媒体に定期的なバックアップしかないな、ということになります。
なんだそんなの当たり前じゃないか、って思われるかもしれませんが、あれこれ考えた結果やっぱりそこが落としどころになってしまった、というブレーンストーミングでよくある光景ですね。

・定期的にバックアップを取得するデータ(ボリューム)は、故障したら交換する
・バックアップをあまり熱心に取らない(取れない)ようなデータ(ボリューム)は予防保守として、故障前の交換を定期的に実行する

こういう方針で失われては困るようなデータを保護していく、という方針が一番無難に思えてきました。