harutin_99の日記: 本当にHDD単体よりRAID1の方が安全か 34
日記 by
harutin_99
情報処理技術者試験では、
一台の固定ディスク装置の故障率をα、
RAID1の故障率をβとすると
β=α×αになるとある。
けど、故障の原因が電圧変動、衝撃、気温変動や湿度だったりすると
二台同時にダメージ受けそうなので、それぞれ故障率がαだとしても、
βはαに近くなる。
案外壊れやすいんじゃないかと思ってるのがRAIDコントローラーで、
さらにこの故障率を加味しないといけない。
でもってHDD2個を一つの筐体に押し込めることで、温度面でも不利。
一台の故障率αを超えるんじゃないの?っていう印象。
高い金払って電気代も多くかかってしかも壊れやすいってことないかな?
#背景追記
数人程度の個人事務所でファイルサーバー的にNASを導入するっていう場合にRAID1のタイプの必要が
あるのかという問題提起です。
今までは先生のノートPCの一部を共有化(もちろんPCの電源が落ちていると繋がらなくて不便)するのと、
USBのHDDを必要に応じてPCに繋いで使っていましたが、面倒なのでNASを導入しようというのが発端。
安全とは? (スコア:2)
そのためのZFSでしょ (スコア:2)
ブロック毎にハッシュ付いてるから
raidz1 なら無問題
uxi
Re:そのためのZFSでしょ (スコア:2)
ボケてた。
raidz1 だと raid5 相当だから mirror で無問題と書くべきだった。
uxi
Re:安全とは? (スコア:2)
壊れているのは捨てて、バックアップしてあるデータから復帰で。
Re:安全とは? (スコア:2)
ところがハッシュ値がないと、どれが壊れているのか機械的に判断できないわけでして
uxi
Re:安全とは? (スコア:2)
ミラーリングしてある全てのHDDが故障した場合を想定しているようなので、『壊れたHDDを捨てて』という意味合いでお願いしたく。
Re:安全とは? (スコア:2)
バックアップ側も不良セクタ等でデータが破損している可能性があるので、やはりハッシュは必要なんです。
uxi
Re: (スコア:0)
それはHDD1台の場合も同じでは?
Re:安全とは? (スコア:2)
当然そうですけど、それは言わなくても分かるでしょう。
uxi
Re:安全とは? (スコア:1)
ドライブが物理的に傷めばシーク・サーチ速度(応答時間)等の異常として検知できるのでは。
というか多分、RAID1は「ぶち壊れ」への対処であって、データ化けとかは考慮していない気が。
結局コストの問題じゃないですか? (スコア:2)
故障率はあくまで正常運用している状態で不具合起こす確率でしょうから、(火災、水害、落雷等の)特殊な事故対策は別途考えるべき問題だと思います。
それこそ、定期的にバックアップして、金庫なり遠隔地に保存するしかないはずです。
民生用の RAID は箱代の部分で少なくとも1万円以上割高ですし箱の性能は ARM + RAM 1GB 程度と、結構粗末な構成です。しかも故障時に箱ディスコンになっていると、HDDは生きているのにデータが取り出し不能に成り兼ねません。そういう意味では、ソフトウェア RAID の方が安全性が高いと言えます。
そこへ行くと、片落ちで叩き売られている HP Proliant MicroServer Gen7 は AMD Turion II NEO N54L (2.2 GHz) と非力ですが ARM に比べれば十分な性能を持っています。これに ECC付き4GB と HotSwap 非対応ながらエアフローも十分考慮されたリムーバブルケージを 4 台分標準装備しているので RAID 用の箱としては結構理想的で、 しかも販売価格が \13,000 を切ってるので完全にバーゲン価格です。
欲を言うと、SATA が 5 口(SATA2x4, SATA1x1) しかないとか、3.5インチだと6台以上内蔵出来ないとか、不満もないわけではありませんが、価格からすれば十分満足な仕様でしょう。
あとは、FreeNAS や NAS4Free 辺りと組み合わせて ZFS で mirror なり raidz なりを組めば、ブロック毎にハッシュが付いているのでセルフヒーリングも利きます。
RAID はダウンタイムをなくすための保険みたいなものなので、ダウンタイムは許容できるのならそもそも RAID は不要なんでしょうけど、NAS 箱としても MicroServer のコスパはバーゲン状態だと思いますけどね。
uxi
Re:結局コストの問題じゃないですか? (スコア:1)
これホントのサーバーじゃないですか。なるほど確かに、ありですねこれ。
でもこれ、OSからインストールして、ソフトウェアRAIDセットアップしてのけっこう道のりが長いです。
インストール用CDドライブとかDHCP備えたネットワークインストール用サーバとかいった小道具も持ってないし。
Re:結局コストの問題じゃないですか? (スコア:2)
CDドライブやネットブート用のDHCPサーバーは必須ではないですね。
FreeNAS なら USB image (xz で展開する必要あり)、NAS4Free なら embedded (拡張子は .img だが中身は .img.gz なので gzip で展開する必要があり) を直接 USB フラッシュメモリに書き込めばインストールは完了します。
dd コマンドが使えるなら場合、以下のようにすれば書き込めます。
dd if=imagefile of=/dev/sdX
※ sdX の X は、b~z。USB フラッシュメモリの割り当てられたデバイスを指定しなければいけません。
あとは、BIOS で USB boot を優先させれば NAS になります。
dd コマンドは UNIX 系 OS には標準で入っていて、Windows でも Cygwin を入れれば使えます。
gzip, xz が必要という意味では、結局 Cygwin を使うのが一番手っ取り早いんじゃないかと思いますが、
dd の同等品(dd for Windows [chrysocome.net] 等)も入手可能な他、GUI 版として以下のようなソフトもあるようです。
uxi
Re:結局コストの問題じゃないですか? (スコア:1)
そうえいばUSBメモリからの起動というのがありましたね。
過去にUSB3種類、ハードウェア3種類(いずれも新しいタイプではなかった)で一回も成功したことがないので、忘れてました。
Re:結局コストの問題じゃないですか? (スコア:1)
RAID1のご利益は... (スコア:1)
故障率というよりは、「2台同時に壊れる確率は、非常に低い」ということかと。
残りの一台が動いているうちに、別のドライブまたは、新しいドライブにバックアップできること。
が、いちばん大きいのですよ。
RAID1で片側が壊れた場合、新しいドライブを2台買ってきて、RAIDのドライブは両方更新する。
そして、残ったドライブからデータをコピーして、そのドライブはバックアップ用に保存。
するのがおすすめです。
中途半端に片側だけ入れ替えると、たいてい苦労します。
うちは、RAID0 + バックアップ1台で運用してますけど、自宅ならこれで十分かな.....
Re:RAID1のご利益は... (スコア:1)
RAID1はHDD容量が半分になるので、RAID組むぐらいなら
バックアップに回したほうがいいかなと思った次第です。
最近、2台のストレージがメインの機械(HDDレコーダーと
Gセンサ付きHDD)がいずれもHDDじゃないところが壊れた
っていうもあって、RAIDの場合はRAIDコントローラーが
心配になりました。
Re:RAID1のご利益は... (スコア:1)
HDDに比べると、他のハードの故障率って高いはずなんですけどね.... (^_^;
あと、最近のNASって、安いのはほとんどソフトウェアRAIDのような。
# そのあたりも調べてみて下さいな。
RAID1にするメリットは、1台壊れただけなら、サーバーは止まりませんし、
データも最新の状態が保持されます。
1台をメインにして、もう一台をバックアップにする方法だと、
バックアップを取ってから、壊れるまでの間のデータが無くなります。
自宅マシンなら、バックアップするかどうかは本人の判断なので、
まあ、あきらめがつくんですけどね。
人のデータだったときには、色々、重たい話も出てきたりします。
# オレの大事な実験データ、どうしてくれるんだ~ とか。
そのあたりも、コストとの兼ね合いですね.... (^_^;
Re:RAID1のご利益は... (スコア:1)
>故障率というよりは、「2台同時に壊れる確率は、非常に低い」ということかと。
自分もコレを考えましたが、落ち着いて考えてみると、
イーサネット経由でLAN内のNASとかに 任意の(短い)間隔でバックアップできるようになった今、
データが生まれた瞬間にマシン内で複製を取る必要は薄くなったかも。
# 片肺でもいいから稼働を続けたいとか、データの紛失をゼロにしたいような世界では未だミラーリングは必要と思いますが
いろいろツッコミたい部分もありますが・・・ (スコア:0)
そもそも装置の動作保証環境を超えたところで故障率を考えたいと?
極端な話、1日1回ラックが必ず倒れる環境とか、1日1回雷の直撃を食らう
環境とかでβ=α×αが成り立つかなんて話をしたいと??
RAIDメーカーの人も大変だな(藁)
Re:いろいろツッコミたい部分もありますが・・・ (スコア:1)
いけね前提の記載忘れた。
個人用の民生品を想定してます。
バッファローとか。
Re:いろいろツッコミたい部分もありますが・・・ (スコア:1)
だとしても、RAIDはHDDの故障率に対してのものなので
単HDDだろうが複数HDDだろうが、電源、温度他が同じ条件になる元での比較をしないと意味ないでしょう。
そして温度とかでやばそうなら、そうでないHDD単品/RAIDで別製品(そして別会社)を選べ、というだけであってHDD-RAID比較軸じゃないんじゃ?
もちろん、電源事情が不安定な環境にいるので、複数HDDはそれ自体がリスクなんだ、という個別事案があってもかまわないし、わかるけど、それはやっぱりRAIDかどうかじゃないし...(JBODするだけの装置とかもあるしね)
M-FalconSky (暑いか寒い)
Re:いろいろツッコミたい部分もありますが・・・ (スコア:1)
いろいろ後出しで申し訳ないんですが背景追記しています。
いままでUSB-HDDを差し替えたり、ネットワーク上のpcのHDDを共有化して使っていたのを、
前者は抜き差しが、後者はpcが起動していないといけないことが面倒なので、NASにしようっ
て提案したのです。
そしたら、どこぞのシステムサポートの担当者が、それなら「RAIDじゃないと意味がないですよ。
RAIDがないなら、ただの大きなUSB-HDDと変わりません」と言ってきた。
「いやいや変わるだろ」と思ったのはいいとして、RAID導入する意味があるのかどうかちょっと
悩んだわけです。ちょうど家で使っている耐衝撃センサつきHDDがディスクは無事なのにセンサの
異常で使えなくなったこともあって(ネット上で同様の報告多数)、余計な機能がついてない方が
いいのかもなと。
電算棟みたいなところならRAID1の恩恵はあるかなと思うんですが、
普通に無停電電源装置もつけないし、人がいないときはエアコンも入れないような環境(通常の家庭
レベル)ではどう思いますか?
Re:いろいろツッコミたい部分もありますが・・・ (スコア:2)
多少環境が劣悪になったからと言って、RAIDの効果がキャンセルされるわけではないでしょうし、そんな劣悪な環境ならなおのこと冗長性は確保しておくべきと思います。
RAIDの恩恵がないと判断するとすれば、それは堅牢性の問題じゃなく導入コストの問題と、そのトレードオフで許容可能なダウンタイムの問題でしょう。
UPSはあった方が良いですが、ジャーナリングが利いているファイルシステムなら影響は停電の瞬間に書き込みをしていたファイルに限定されるはずです。
これは本当に直近のデータなので、預金のトランザクションのようにデータの消失に対して本当にシビアに考える必要がないところではそこまで大きな問題にはならないはずです。
RAIDの場合、書き込みホール(write hole)の問題もあるのですが raidz だと対策されているので問題ありません。
NASとRAIDの恩恵は図にすると以下のような感じで全く別の評価軸なので、NASならRAID必須というわけではありません。
ぶっちゃけると、初期コストをかけたくなくて、障害時に前回のバックアップから障害発生の間のデータをあきらめて良いなら、RAID はなくても困らないんです。
ですが、それは単にあなたの所ではRAIDを入れないといけない程価値のあるデータは扱っていないと言う話であって、電算棟以外でもRAIDの恩恵があるかどうかとは全く別の話です。消失して困るデータを扱っている所では環境がどうであろうとRAIDの恩恵は確実にあります。
uxi
Re: (スコア:0)
HDDが別会社のものでも、使っている部品は同一メーカだったりするんですよねぇ。
気がついたら縮退モードで動作していて、慌てて同クラスのHDDを探しているうちにもう一台も故障した経験したはあります。
故障時の保守機能がちゃんとしていてかつ交換Diskがすみやかに供給されるっていう前提がないと、RAIDの価値って半減するんだと思います。
Re: (スコア:0)
交換用のディスクって元から用意しておくもんではないの?
#そうじゃないと、しばらく片肺運転だから怖くない?
Re: (スコア:0)
判ってはいてもローカル用途のサーバだとなかなか予備Diskまでは予算が廻らないんですよ。
ラインのようなデータ損失が致命的なところだと、大手を振って購入できるんですけど。
あとは、同時期に調達したDiskだと同じ問題を抱えている場合もあるからずらしたいっていうのと、長期保管していた奴っていうのもイマイチ不安なのでズルズルと購入の機を逃していて、手持ちのものが無くなってるときを狙って壊れる。
Re:いろいろツッコミたい部分もありますが・・・ (スコア:2)
昨今は冗長性1では不十分だって風潮だと思ってたんですけど?
予備ディスクの手配は、とりあえず手に入るもので対応できる構成にしておくのが鉄則かと。
あと、個人的には冗長性2もちょっと不安なんですが、冗長性3はそれこそ懐事情が辛くて、バックアップで我慢と言った感じですね。
uxi
Re:いろいろツッコミたい部分もありますが・・・ (スコア:1)
Re:いろいろツッコミたい部分もありますが・・・ (スコア:2)
折角 MicroServer 使ってるのに RAID カードは却下でしょう。
折角の ZFS で使えないですし、RAID コントローラーの故障時に同等品が入手不可能だと詰みます。
メモリも4GBあるので下手なRAIDカードよりキャッシュは利きますし、どうせGbEで律速されるので速度を気にしてハードウェアRAIDにしても全く意味がありません。
uxi
Re:いろいろツッコミたい部分もありますが・・・ (スコア:1)
故障率とは単なる予想値 (スコア:0)
> 一台の固定ディスク装置の故障率をα、
> RAID1の故障率をβとすると
> β=α×αになるとある。
故障率とは、単なる予想値です。
個々のHDDの故障は独立して起こるという前提のうえで、故障が起きる割合を予想しただけです。
> けど、故障の原因が電圧変動、衝撃、気温変動や湿度だったりすると
> 二台同時にダメージ受けそうなので、それぞれ故障率がαだとしても、
> βはαに近くなる。
これはHDDの故障が連動して起きている例です。上記の前提を満足していません。
前提が変われば、予想の結果、つまり故障率も変わります。
Re:故障率とは単なる予想値 (スコア:1)
せめてコントローラーの故障率γとして。
β=1-(1-γ)×(1-α^2)
一般的にはα^2は十分に小さな値になるので、γ次第なんですが、
γ>αになった次点で、RAID導入しないほうがましなんではないんでしょうか。
目的をちゃんと把握してないからずれる (スコア:0)
こういう場合はどれだけの時間でどれだけのデータをどれだけの手間をかけて戻すか、を第一に考えるんでないかい?
故障の発生率はリカバリのを行う羽目になる率なわけで。
目的をちゃんと理解してないから、そんな頓珍漢な発想にいきつく。
他の人が言うように予想は予想。前提次第なんですよ。
ただβ=α×αは特殊な前提ではなく、多くの場合に適用できるというだけ。
RAIDの必要性に”数人程度の個人事務所での使用”なんて前提でもなんでもない。