Seagate Archive HDD ST8000AS0002のLoad Cycle Count

ST8000AS0002

Seagate Archive HDDシリーズの8TBHDD ST8000AS0002を2台購入。
HP ProLiant Microserver(CentOS)上の単一ディスクとして稼働してるんだけど、
Load Cycle Countがどんどん上昇しているのでちょっと気になってきた。

mi0_193_daymi1_193_day

このグラフでいうbay1~3がWD60EFRXとWD60EZRX混在、bay4がST8000AS0002。同じ構成で2台。
bay1~3はidle3-toolsでアイドルタイマーを無効にしているので、横線まっすぐ。
問題のbay4は徐々に上昇している。大体1時間に3~4カウント。
仕様では30万カウントまで対応しているようなので、このまま約8年くらいは耐えられる計算。
…しかしこんなにガンガン上昇するものなの?Seagateはこういう仕様のファームなのかな。
3万時間稼働してるHGSTのHDDなんて1000位しかカウントしてないのに…

このままカウントが上昇していくのは気分的によろしくないので、
カウントを抑制する対策をいろいろ調べて試してみた。

1. idle3ctl –force …NG
2. hdparm -S 0 -Z -B 255 …NG
3. 定期的にDisk I/Oを発生させる …LCC上昇抑制という意味ではOK

1.はWD製HDD以外のHDDでもアイドルタイマーを設定する強制オプション
これはエラーが出て設定NG

# idle3ctl --force -d /dev/sdd
sg16(VSC_ENABLE) failed: Input/output error

2.は-Sがスタンバイ設定、-BはAPM設定、-ZはSeagate用の省電力機能を無効
Sオプションは反映されたけど、カウント上昇は止まらず、ZとBはio errorで設定NG

# hdparm -S 0 -Z -B 255 /dev/sdd

/dev/sdd:
setting Advanced Power Management level to disabled
HDIO_DRIVE_CMD failed: Input/output error
setting standby to 0 (off)
disabling Seagate auto powersaving mode
HDIO_DRIVE_CMD(seagatepwrsave) failed: Input/output error
APM_level = not supported

最後に思いついた3は、ddとcronを使ってディスクIOを繰り返させる。
ディスクにアイドルタイマーがあるとしたら、こいつを発動させないように、
定期的にddとか使ってダミーファイルをディスクに書き込ませてやる。

# vi io.sh
#!/bin/bash
DISK=/mnt/bay4
dd if=/dev/zero of=$DISK/iotest bs=1k count=1
rm -f $DISK/iotest

1KByteのダミーファイルを作っては削除を繰り返させる。
簡単だけどこんなスクリプトを10分間隔で回してみると、LCCが上昇しなくなった。
やった~と思ったんだけど、今後は別の問題が発生。

mi0_193_weekmi1_193_week
mi0_192_weekmi1_192_week

LCCは上昇しなくなったけど、cronで回し始めて1日経ったくらいで、
今度はPower-Off Retract Countがカウントアップする事態に…。
その後はほぼ24時間に1回カウントアップしており、明らかにスクリプトで影響が出てる。
このディスクは積極的にヘッドを休める仕様なのかもしれないね。

現在はPower-Off Retract CountとLoad Cycle Countが上昇しない最適なディスクIOの間隔をテスト中。

Leave a Reply

Your email address will not be published.