プログラマーのメモ書き

伊勢在住のプログラマーが気になることを気ままにメモったブログです

NAS のディスクの I/O エラーと HDD の交換

先日、仕事が一段落していたので、 NAS (QNAP TS-231P)の QTS のアップデートの通知に従って、アップデートしました(5.0.1.2173 (20221001) -> 5.0.1.2194 (20221022))。

ですが、アップデート終了後、 NAS にログインしてみると、ダッシュボードのアイコンがオレンジ色になっていて、何かやばい様子です。

開いてみると、ディスクに対してエラーが出てました。

おぉ、なんてこった。 ログを確認すると以前からあったのではなく、アップデート前のタイミング(アップデート時にNASが長時間稼働していると一度再起動するんですが、どうもそのタイミングのようです)でエラーを検出したようです。

開いたダッシュボードのアイコンをクリック(または、『ストレージ&スナップショット』->『ストレージ』->『ディスク』を開き、エラーのあるディスクを選んで、『ディスクの健康状態』を選択)すると、

って感じに、 I/O エラーが検出されたようです。 この HDD 自体はかなり昔から使っていたやつなので、エラーが出るのもまあ致し方ないかな、って感じです。

とはいえ、こりゃやばいぞ。

HDD 自体の交換は確定なので、取り急ぎ次の HDD を手配しておきます。このタイミングで SSD にすることも考えたのですが、2台同時に交換しないと意味ないし、 NAS 自体も NAS につながっているネットワークが現状ギガビットなうえ、まだ 10G とかに変更する予定もないので、まあ今回は HDD でいいかな、としました。

不良ブロックのチェック

新しい HDD がつくまで数日かかるやろでと、 QNAP のマニュアルをいろいろとみてみると、一応不良ブロックの検査をやってみなさい、とあります。なので、『アクション』から『不良ブロックのスキャン』を選択して、やってみます。

実行時に、スキャン結果に異状がなければ、I/Oエラーを消去するかと聞かれます(マニュアルの表記だと選択できないよう感じでしたが、選択式になってます)。今回はとりあえず『はい』を選択しました。

ちなみに、QuLog Center に出ていたメッセージにも、不良ブロックの検査をするように載ってました。

なお、対応する記事が下記になります。 What should I do if I see a disk error or storage related warning message shown on the QNAP NAS? | QNAP

2TBのディスクですが、おおよそ4時間半~5時間程度でスキャンが完了しました。で、結果は、、、あれ?

不良ブロックがなくて、エラーが解消されています。こんなのあり? ディスク注文済みだったので、ちょっと早まったかな?と一瞬思いました。

が、別件で NAS を再起動する必要があり、再起動してみると、またエラーが検出されました。もう一度不良ブロックのチェックをする気にはならなかったのですが、様子からするとどうも(再)起動時にエラーが検出されているようです。

詳しくは不明ですが、2回検出されたということは、やっぱり、何かしらのエラーが潜んでますね、きっと。こりゃあ、エラーが頻発するようになるのも時間の問題だな。

とはいえ、この時点でできることはないので、ミラーのもう一方が壊れないことを祈りつつ、新しい HDD が到着するのを待ちました。

HDD の交換

ネットで注文して数日で届きました。近い将来、もう一方の HDD もエラーになるかもしれないと思い、その時に容量を増やせるように、今回は 4GB のドライブにしました。 Western Digital の Red Plus ですね(WD40EFZX, 128MBキャッシュ版)。

もう一つの HDD でエラーが出る前に、なんとか無事に新しい HDD が到着したので、早速交換します。

こちらの記事を見ると、 NAS を起動したまま、ディスクを交換しろとあります。ホットスワップで、自動的に認識されてリビルドされるっぽいです。

ちょっと怖いので、他の方法がないか調べてみます。

準備

その前に、準備です。この NAS は iSCSI ドライブとして PC から常に接続されています。書き込みも起きることがあるので、ディスクの交換が終わるまで、 PC 側の接続をいったん切っておきます。

スタートメニューから『Windows 管理ツール』->『iSCSI イニシエータ』を呼び出し

『切断』を選択して、切断しておきます。

これで、準備完了です。

ディスクを1台ずつ交換

以前、HDD交換をやった際に、いろいろと調べたのを思い出しました。その時の記事の方法を試してみます。

『ストレージ&スナップショット』->『ストレージ』->『ストレージ/スナップショット』を開き、『管理』を呼び出します。

ディスク2でエラーが表示されてますね。ここで、『管理』->『ディスクを1台ずつ交換する』

を選ぶと、あれ?選択できません。

どうも、この方法ではエラー時は交換できないようです。

ホットスワップで交換

結局、うまい方法が無かったので、ホットスワップによる交換を試してみます。

エラーの赤ランプがついている側(ディスク2側)

のスロット下部のレバーをおもむろに引っ張って、外します。

しばらく待って、ビープ音が鳴るのを確認します。これで、 NAS がディスクが外されたことを認識したということですね。

ちなみに、 NAS の管理画面上はこんな感じにドライブが無いことを示してくれてました。

HDD ケースのドライブを入れ替えます。こんな感じになっているので

とめているネジ4本を外して、新しい HDD に交換します。

交換ができたら、おもむろにNASに戻します。

これで、自動的に認識されて、リビルドが始まるはずです。

リビルドが始まらないことへの対応

が、どうも様子が変です。管理画面を見てみますと、

とあり、新しいディスクは正しく認識されているようです。この画面の『RAIDグループ』を選択すると

となっており、信頼性が低下していると判断されています。リビルド始まっていないっぽいので、当然ですね。

自動で始まらないなら、手作業でリビルドを開始すればいいやと思い、『ストレージ&スナップショット』->『ストレージ』->『ストレージ/スナップショット』を表示すると

警告状態です。この画面で『管理』を呼び出すと、

とあり、交換したディスクが『メンバーではありません』となっています。

ん?RAIDのメンバーとして認識されていないので、リビルドが始まってないのか?

じゃあ、明示的にリビルド呼べばいいや、と思って、

『管理』から『RAIDグループをリビルド』を選択すると

空きディスクが表示されるはずなのに、何も表示されていません。

マジか!?やばいぞ、これは。

さきほどの交換手順の記事を見ると、

If the replaced disk is detected by the NAS but the RAID rebuild does not started, try setting the newly replaced disk as a spare disk

(自分なりの訳)

交換したディスクがNASに認識されているけど、RAIDのリビルドが始まらないときは、新しい交換したディスクを予備のディスクとしてセットしろ

とだけあります。具体的に何やればいいか書いてないやん!

いろいろと調べてみても、やり方が見つかりません。

ネットを見ていたら、エラー時のディスク交換の方法として、ホットスワップではなく、いったんNASを停止して、交換後起動すると自動的に認識・リビルドをする、というのがありました。

QNAP製のNAS TS-231+でRAID1を構成しているHDDにエラーが発生したので交換してみる – 酔人日月抄

なので、すがる思いで、最後の手段として、NASを一度シャットダウンして、再起動してみます。

起動したっぽいけど、ブラウザから管理画面にアクセスできません。ディスクのランプの様子からは動いているっぽいので、とりあえず翌日の朝までほっときます(こちらの記事で経験済みですが、2TBのリビルドで大体5時間程度かかったので)。

翌朝確認すると、無事リビルドが終わってました。

助かったー。

余談

実は、リビルド完了を確認しようとしたとき、やっぱり、ブラウザからアクセスできませんでした。 このときは ping も通らない、 SSH でログインもできない状態で、かなり焦る状況でした。

仕方ないので、ディスクアクセスランプが激しく点滅していないことを確認して、電源スイッチを押してシャットダウンし、もう一度起動したところ、無事に起動しました。

一連の作業時のログを確認したところ、リビルドは正しく開始されて、やっぱり5時間程度かかり完了していました。が、どうもこのときネットワーク周りでトラブルがあったのか、いままで見たことのないような警告がいろいろと出てました( NTP サーバーに接続できません、とかインターネットとの接続ができないことに起因するっぽいものが多い印象でした)。

推測ですが、リビルドを期待して再起動した際に、ネットワーク周りが正しく起動しなかったようです(とはいえ、ネットワーク自体の警告やエラーが無いのでなんともいえないのですが)。

あと、今回は、他の NAS などのバックアップ先がこの NAS なのと、この NAS 上のデータも別のところにバックアップ済みなので、新たにバックアップはとらずに作業を開始してます。が、このようにディスク交換時は想定外のことも起きえるので、バックアップは必ず取ってから作業することをお勧めします。

まあ、無事に起動したのでいいんですが、なかなか怖い経験でした。