忘れてた。
今のうちにディスクにシールでも貼っておかないと、どれがどれかわからなくなるので一本ずつ線を抜いて確かめながらシール貼り。
よく考えたらケーブルにも貼らないと意味がない。

見事に5台載っております。
かようにHDD群のまん前に巨大ファンが(偶然)まわっているので熱的な心配は無いと思われる。
一本抜いて、戻してリブート……と繰り返していて、3本目を抜いたところでなぜかフリーズ、リブートしても「poolが見つかりません」と怒られた。
なんで中途半端に3本目のHDDだけダメなんじゃああと思ったら、その前の二本分の修復をしていなくて3本イカれた事になり、フリーズしたということに気がついた。
自動でさくっと直してくれるものとばかり思っていたのだが。
一本抜いて、戻してリブートしたら、
# zpool clear zroot
とすればいいわけですな。
なるほど。
ところで、RAID-5/6における機械的信頼性について、今回の場合はRAID-6で「3台で容量増加」「2台が担保」というシステムになっているが、
「もし2台がおしゃかになったときは、残り3台の故障確率は通常の三倍で非常に危険な状態」
ということでもある。
故障確率3倍と担保が2台だと若干分が悪い気はする。
ここに1台スペアを足すとちょうどよいところかもだが、実験するにしてもesata接続できる外箱を買ってこないとだめだ。
まあ、大事なのは1台お釈迦になったときに「すぐに交換すること」ですな。
台数が増えると故障確率が倍になるのは確かなのだが、それぞれが同時期に壊れる確率というのはまた別な話だと思うので単純計算はできないかもである。
同ロットで同じ条件で使用、となると同じ末期を歩む可能性もなくもないが、今回は5台ほぼ同形式だが同ロットではないのでどうなるか見ものではある。
人柱である。
ちなみに今の5台は、
Duke# atacontrol list
ATA channel 2:
Master: ad4 <Hitachi HTS543225L9SA00/FBEOC40C> SATA revision 1.x
Slave: no device present
ATA channel 3:
Master: ad6 <Hitachi HTS543225L9SA00/FBEOC40C> SATA revision 1.x
Slave: no device present
ATA channel 4:
Master: ad8 <Hitachi HTS543225L9A300/FBEOC40C> SATA revision 2.x
Slave: no device present
ATA channel 5:
Master: ad10 <Hitachi HTS543225L9SA00/FBEOC40C> SATA revision 1.x
Slave: no device present
ATA channel 6:
Master: ad12 <Hitachi HTS542525K9SA00/BBFOC31P> SATA revision 1.x
Slave: no device present
ATA channel 7:
Master: no device present
Slave: no device present |
こんな感じで ad4、ad6、ad10 は同ロットかも。
ただ、RAID的にはできれば同ロットを使うべし、ということになっているのでどっちやねん、ちゅう話ではある。
ところでたった今、atacontrolでの正しいdetach、attachのやり方がわかったので、ついでにad4をdetach、attachしてみた。
# atacontrol detach ata2
# atacontrol attach ata2
すると、zpool statusでREMOVEDになった。
Duke# zpool status
pool: zroot
state: DEGRADED
status: One or more devices has experienced an unrecoverable error. An
attempt was made to correct the error. Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
using 'zpool clear' or replace the device with 'zpool replace'.
see: http://www.sun.com/msg/ZFS-8000-9P
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
zroot DEGRADED 0 0 0
raidz2 DEGRADED 0 0 0
gpt/disk0 REMOVED 0 6.75K 0
gpt/disk1 ONLINE 0 0 0
gpt/disk2 ONLINE 0 0 0
gpt/disk3 ONLINE 0 0 0
gpt/disk4 ONLINE 0 0 0
errors: No known data errors |
そこで、zpool clear zrootした。
Duke# zpool status
pool: zroot
state: ONLINE
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scrub: resilver in progress for 0h0m, 0.01% done, 2h25m to go
config:
NAME STATE READ WRITE CKSUM
zroot ONLINE 0 0 0
raidz2 ONLINE 0 0 0
gpt/disk0 ONLINE 0 0 0 108K resilvered
gpt/disk1 ONLINE 0 0 0 93K resilvered
gpt/disk2 ONLINE 0 0 0 94.5K resilvered
gpt/disk3 ONLINE 0 0 0 123K resilvered
gpt/disk4 ONLINE 0 0 0 105K resilvered
errors: No known data errors |
修復中。
10秒くらい切り離しただけなのだが修復に2時間半かかると書いてある。
プールに続々とバックアップしながらだからなのかもしれないが。
しかし数分後もう一回みてみると、
Duke# zpool status
pool: zroot
state: ONLINE
status: One or more devices is currently being resilvered. The pool will
continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
scrub: resilver in progress for 0h8m, 63.47% done, 0h4m to go
config:
NAME STATE READ WRITE CKSUM
zroot ONLINE 0 0 0
raidz2 ONLINE 0 0 0
gpt/disk0 ONLINE 0 0 0 27.3M resilvered
gpt/disk1 ONLINE 0 0 0 394K resilvered
gpt/disk2 ONLINE 0 0 0 392K resilvered
gpt/disk3 ONLINE 0 0 0 14.4M resilvered
gpt/disk4 ONLINE 0 0 0 402K resilvered
errors: No known data errors
|
あと4分になった。
だいぶ適当な計算らしい。
Duke# zpool status
pool: zroot
state: ONLINE
scrub: resilver completed after 0h10m with 0 errors on Tue Feb 23 16:46:14 2010
config:
NAME STATE READ WRITE CKSUM
zroot ONLINE 0 0 0
raidz2 ONLINE 0 0 0
gpt/disk0 ONLINE 0 0 0 146M resilvered
gpt/disk1 ONLINE 0 0 0 528K resilvered
gpt/disk2 ONLINE 0 0 0 530K resilvered
gpt/disk3 ONLINE 0 0 0 53.7M resilvered
gpt/disk4 ONLINE 0 0 0 540K resilvered
errors: No known data errors |
終わった。
10分で修復が終わった様である。
ふむふむ。
まったくおもしろいシステムだ。