2007年3月4日

知らぬ間に Raid が再構築!!

Linux のソフトウェアRAIDを使っているファイルサーバが、何故か負荷が高い気がしてたので、ログを見てみると

Mar  4 01:06:02 aquarius kernel: md: syncing RAID array md0
Mar  4 01:06:02 aquarius kernel: md: minimum _guaranteed_ reconstruction speed: 1000 KB/sec/disc.
Mar  4 01:06:02 aquarius kernel: md: using maximum available idle IO bandwidth (but not more than 200000 KB/sec) for reconstruction.
Mar  4 01:06:02 aquarius kernel: md: using 128k window, over a total of 32009408 blocks.
Mar  4 01:06:02 aquarius kernel: md: delaying resync of md1 until md0 has finished resync (they share one or more physical units)
Mar  4 01:06:02 aquarius kernel: md: delaying resync of md3 until md0 has finished resync (they share one or more physical units)
Mar  4 01:06:02 aquarius kernel: md: delaying resync of md1 until md3 has finished resync (they share one or more physical units)
Mar  4 01:14:28 aquarius kernel: md: md0: sync done.
Mar  4 01:14:28 aquarius kernel: md: syncing RAID array md3

って、何か知らんけど、RAID の再構築をなさっておられます!!

可なり焦ったけれども、良くログを見直すとその直前に cron スクリプトが動いてることを発見。

Mar  4 01:06:02 aquarius /USR/SBIN/CRON[27227]: (root) CMD ([ -x /usr/share/mdadm/checkarray ] && [ $(date +%d) -le 7 ] && /usr/share/mdadm/checkarray --cron --all --quiet)
Mar  4 01:06:02 aquarius kernel: md: syncing RAID array md0
Mar  4 01:06:02 aquarius kernel: md: minimum _guaranteed_ reconstruction speed: 1000 KB/sec/disc.

checkarray とは何ぞや、、、。

なんと、第一日曜日の1:06 に実行される checkarray が冗長性のあるRAIDをエラーチェックするそうな。 Linux君は大雑把なメッセージを吐くので、直ぐには再構築とチェックを区別できないそうな。

詳しく区別したい場合は、

# echo /sys/block/md3/md/sync_action
check

で確認でき、チェックを行っていますねぇ。 HDDが逝ってしまった訳では無いようです。

いつからそんな風になったんだぁ、、、。

0 件のコメント: