ディスク破損からの Windows リストア

2021-05-14 | コメント(0)

今朝起きて、昨日の作業の続きをしようと、別PCのSQLサーバーに接続しようとしたところ接続できなくなり、変だなと思ってサーバーを確認したところ、ハードディスクが1台壊れたようです。

記憶域プールを構成している1台が壊れたようで、この記憶域プールの仮想ディスクは、主に Hyper-V ゲストの vhdx を置いていたので、そこにあるOSがすべてロストしてしまいました。

幸いなことに、そこの各仮想サーバーは、Windows Server Backup で別ドライブに分散して取るようにしていたので、完全ロストすることなく、壊れる前の状態に復旧出来たので、復旧時の記録としてエントリーを残します。

ちなみに、壊れたディスクは Western Digital の RED 4TB, WD40EFRX (SATA600 5400) です。良く WD RED と言われるNASに使われる堅牢なものですが、壊れてしまいました。

Windows Server 2012 R2 の頃から使っているので、少なくても7年以上使っていると思います。このPCは1年中24時間ほとんど電源を落とさないので、相当な連続通電時間になります。まぁ WD RED でも壊れる時が来るわけですね。

Hyper-V上の仮想サーバーを保守するときは、リモートデスクトップ越しでHyper-Vホストに入って作業することが多いのですが、SQLサーバーとDevOpsサーバーが入っている仮想サーバーのWindowsアップデートがいつまでたっても終わらず、仕方なく Hyper-V ホスト側からシャットダウンしようとしましたが、それでも停止してくれない状態になりました。

仕方なく、タスクマネージャーから vmwp.exe を探し、プロセスを終了させても停止してくれません。

このため、Hyper-Vゲストが動いている状態ですが、Hyper-V ホスト本体を(リモートから)再起動させたところ、なかなか復帰してくれず。

普段このPCには、対面で画面を見ることはあまりなく、別のPCからリモートデスクトップ越しで操作しているのですが、さすがに変なのでPCの前に行ったところ、一定間隔でカラカラカラ・・カラカラカラ・・と、

HDDが壊れる前触れの、そう、あの変な嫌な音がしていました。

ディスプレイの電源を入れて、画面を見たところシャットダウン途中の青い画面のまま、シャットダウンが出来ないようでした。

電源長押しで強制的に電源を落とし、再起動したところ、一応は起動できました。

エクスプローラーから存在するドライブレターを確認。

windows-disk-damage-drive-before.png

複数のディスクが見えますが、普段あるはずの、Eドライブ と Jドライブ がありません。

記憶域プールの仮想ディスクの状態を見ると、異常の表示になっています。

windows-storage-vdisk-damage-before.png

ディスクの状態を確認すると、いきなり初期化されていないディスクがある旨の表示がされました。ここは「キャンセル」でダイアログを閉じます。

windows-disk-damage-dlg.png

各ディスクの状態です。

windows-disk-damage-before.png

ここの ディスク3 が不明となっていますが、本来なら、ディスク2, ディスク4 と同じパーティションのディスクで見えるはずなのですが、この ディスク3 が壊れたようです。

さらに、認識していない不明な ディスク5 が現れています。

この不明な ディスク5 は、記憶域プールの仮想ディスクが壊れたことによって、残っている有効なディスクの空き容量から作られた仮想ディスクだったことが分かります。

このサーバーは、Windows Server 2019 で、ディスク構成として、5台のハードディスで記憶域プールを vPools という名前で作り、その全容量を vDisk1 という名前の仮想ディスクをSimple構成で作成し、Eドライブとしています。

Simple構成は、ストライピングの RAID 0 と同じものなので、速度は速いですが構成しているディスクが1台でも壊れるとアウトです。

これが実際に起こってしまいました。

壊れた ディスク3 は、単一の Jドライブ と、記憶域プール用の領域を持っていたので、Eドライブ と Jドライブ のデータがロストしたことになります。

Hyper-V のホストとして、ほとんどその用途でしか使っていないものですが、Hyper-V ゲストは、Simple構成の仮想ディスク上に vhdx があり、Active Directory のメンバーのOSなどがここに乗っています。それらのOSが全て壊れたことになります。

まず、壊れたと思われるディスクが繋がれたまま、PCを再起動したところ、BIOSのポスト画面は通過してクリアできますが、起動時にWindowsを開始していますの表示のまま、アイコンがクルクルと回って表示されたままWindowsが立ち上がってくれません。

仕方なく電源長押しで強制停止しました。上記のこれまでの画面キャプチャが撮れたことはある意味ラッキーだったのかもしれません。

破損したハードディスクの、電源とSATAケーブルを外してPCを再起動すると、すんなり立ち上がってくれました。

さっきまで一定間隔でカラカラカラ・・カラカラカラ・・と聞こえていた嫌な音はしなくなりました。

壊れたハードディスクを物理的に外しても、記憶域プールと仮想ディスクの構成上には、いままでの状態で残ったままになっています。接続されていないディスクを右クリックしてプロパティを見ることもできます。

壊れた状態を眺めていても仕方が無いので、構成上の物理ディスクから壊れたディスクを削除しようとしますが、シンプルレイアウトの場合は仮想ディスクを削除しないと物理ディスクが削除できないようです。(下図)

このため、先に仮想ディスクのほうを削除します。

仮想ディスクを一度デタッチする。

デタッチ後

仮想ディスクの削除。

仮想ディスク削除後の画面。仮想ディスクは削除しましたが、記憶域プールを構成する物理ディスクはまだ壊れたディスクを外してないので、容量が 1.30 TBと表示されています。

ちなみに、記憶域プール vPools のプロパティは次のようになっています。

では再度、物理ディスクの削除。

物理ディスクの削除後の画面。

ん?削除されてない!?。と思われましたが、このディスクの使用状況が「自動」から「使用中止」に変わっています。記憶域プール vPools の容量も 1.30 TB から 1.04 TB と変わっています。

「使用中止」になったところで物理ディスクからは削除されていないので、再度、物理ディスクの削除をします。

その後、やっと物理ディスクが消えてくれました。記憶域プールの vPools は4台構成になります。

ディスクの管理から見ると、このようになっています。

では仮想ディスクを作ります。仮想ディスク表示域の中央のリンクか、タスクから仮想ディスクの作成から作成できます。

記憶域プールの選択。

仮想ディスクの新規作成ウイザードになります。

名前箇所に仮想ディスク名を入力。ストレージ層を作成するというチェックボックスがありますが、この選択はしません。※この名前は構成上の名前です。ディスクのボリュームラベルではありません。

エンクロージャの回復性の指定。ハードウェア的なことですが、このチェックボックスは灰色で有効になっていませんでした。

記憶域のレイアウトの選択。Simple を選択。

※以前に Parity を試しに使ったことがありますが、割と遅くて使うには私はストレスでした。すべてSSD/M2などで台数も多く用意できるならありかもと思いますが、HDDが含むなら厳しいと思います。

プロビジョニングの種類の指定。固定を選択。

仮想ディスクのサイズの指定。最大サイズを選択。

作成前の確認画面。良ければ作成。

仮想ディスク作成中~完了。

「このウィザードを閉じるときにボリュームを作成します」のチェックを入れると、ボリューム作成ウイザードになりますが、一旦チェックせずに閉じます。

仮想ディスク作成後の画面。

ディスクの管理を見るとこのようになりました。作成した仮想ディスクは ディスク 7 として見えてます。フォーマットされてませんが普通のディスクとして扱えるものになります。

仮想ディスクにボリュームを作成します。

ボリュームウイザードが始まります。次へ。

サーバーとディスクの選択で、ディスク 7 を選択。

ボリュームのサイズの指定では、初期表示で最大量になっているので、そのまま次へ。

ドライブ文字またはフォルダーへの割り当てはお好みで。(ドライブ文字としてEドライブを指定してます)

ファイルシステム形式の選択では、まぁそのままで良いですが、私はボリュームラベルは空文字にしています。ボリュームラベルはエクスプローラー上に現れますが、私はドライブレターが判れば良くて、そこに文字が表示されるのが邪魔だと思っているので。

確認画面。作成します。

ボリューム作成中。クイックフォーマットなので数秒で終わります。

再度、ディスクの管理を確認。普通のディスクとして Eドライブ が見えてます。

これで仮想ディスクの作成は完了です。

ちょっと気が向いたので、ディスクのベンチマークを取って比較しました。

今作成した仮想ドライブ。Eドライブ, SSD x2, HDD x2 の4台でシンプルレイアウト(ストライピング)

Cドライブ, SSD

Kドライブ, HDD (WD RED)

どうでしょう?。SSD単体ほど早くは無いですが、HDD単体よりは3倍位の性能というところですかね。

複数台の仮想PCをここで動かすので、単一OSとしての速度よりも、各OSからの同時アクセスの耐性もあると思うので、まぁ良いかなと自分なりに思っています。

カテゴリ:

コメントする

※HTMLタグは使えません

Author

あきちゃん

主に、.NETでWebシステムの設計と開発をしています。
(茨城県在住, 都内勤務)
プロフィール