[検証] 仮想PCで学ぶ「体当たり」Windowsシステム管理 第13回 Windowsのディスク管理をマスターする(下) 3.RAID-5ボリュームの再構成(2) デジタルアドバンテージ 打越 浩幸2011/02/03 |
|
|
RAID-5ボリュームを構成するディスク2台以上に障害が発生するとどうなる?
上の例では、RAID-5を構成するディスクのうち、1台に障害が発生した場合の例を示した。では2台以上のディスクに障害が発生するとどうなるであろうか。Windows OSのRAID-5では、ディスクの冗長度は1台分しかないため、試すまでもなく失敗することは容易に想像できるが、一応やってみよう。
先ほど修復したRAID-5ボリュームに対し(ディスクは3台ある)、2台目と3台目のディスクをdiskpartのcleanコマンドで消去したのが次の画面である。
「ディスク 2」と「ディスク 3」が消去されたディスクである。「初期化されていません」という状態になっている。「ディスク 1」は元のままだが、状態が「冗長の失敗」ではなく、単に「失敗」となっている。またドライブ名は消失し、ボリューム全体がアクセス不可能になっている。また一番下に表示されている仮想的なエラーを表すドライブ(「不足」「ダイナミック」)も2台分ある。
この状態で可能な操作は、ポップアップ・メニューを見ると分かるように[ボリュームの再アクティブ化]か[ボリュームの削除]だけである。修復することはもはや不可能だ。
2台障害発生時に利用可能な選択 |
ディスク2台に障害が発生した場合は、ボリュームの修復メニューはもう利用できない。 |
[ボリュームの再アクティブ化]は前回「ストライプ/スパン・ボリュームを構成するディスクに障害が発生するとどうなる?」で述べたように、一時的に外していたディスクを再接続するときに利用するメニューである。新規のディスクを接続して、ボリュームを初期化したり、再構成したりするときに使うものではない。実行しようとしても、次のような画面が表示され、元のディスクを接続するように促される。
再アクティブ化のエラー |
再アクティブ化しか選択できないが、実行してもこのようなメッセージが表示されるだkである。分かりづらいが、もはや修復できないというエラーのようである。 |
このような事態になる前に、ディスクの1台に障害が発生した時点で管理者は適切な対応(ディスクの交換など)をとる必要がある。
全ディスクに障害が発生したら?
上の例では2台以上に障害が発生した場合を見てきたが、では全ディスクに障害が発生するとどうなるだろうか。仮想環境なら、こういうテストも簡単にできるので、試しておこう。
RAID-5を構成する全ディスク(3台分)に対して、diskpartのcleanコマンドを実行したのが次の画面である。
全ディスクに障害が発生した場合の例 | |||||||||
RAID-5ボリュームを構成する全ディスクに障害が発生したとすると、このようになる。もはや、元のRAID-5ボリュームの情報はどこにも表示されていない。そのようなボリュームがあったという情報まで失われているようである。 | |||||||||
|
先ほどの画面と比べると、RAID-5ボリューム(水色のバー)がまったく何も表示されていない点が異なる。エラーの表示もない。これは、RAID-5(やミラーやストライプ)などのボリューム情報は、各ディスクの先頭に分散して保存されているということを表している。Windows OSのシステム・パーティション内だけを保存しておいても、ボリュームの情報は保存されないので、注意する必要がある。仮想ディスクの場合なら、ボリュームを構成する仮想ディスク・ファイルはまとめて保存や移動をする必要があるだろう。
ディスクの署名が衝突するとどうなる?
最後にディスクの署名データとその競合について触れておく。
ディスクの先頭には「署名」データと呼ばれる、4bytesのユニークなIDデータが記録されている(フロッピー・ディスクやディスク・ボリュームの「ボリューム シリアル 番号」と同じようなもの)。Windows OSはこの署名データを見て、どのディスクがシステムに接続されているかを判別している。たとえ同じ型番のディスクや、同じ内容を保存したディスクを使っていても、この署名データによって別のディスクであることを認識している。もし署名データがなければ、同じ構成のハードディスクの内容を取り違えたり、間違ってアクセスしたりしてしまう可能性がある。
ディスクの署名データは、ディスクの先頭セクタのオフセット+0x01B8に記述されており、例えばdiskpartのdetail disk/uniqueid diskコマンドや、TIPS「ディスクのパーティション・テーブルを調査する」に記した方法などで確認できる。
仮想マシンを利用する場合、.VHDファイルをコピーして仮想ディスクを用意することがあるが、これは注意しなければならない。この方法だと、同じ署名データを持つ仮想ディスクがどんどん増えてしまうからだ。もしこうやって作成した仮想ディスクを同じ仮想マシンに接続すると、同じ署名データを持つディスクが競合することになる。Windows OSでは、同じ署名データを持つディスクを検出すると、2台目以降のディスクを無効(オフライン)にして、アクセスできないようにする。まずはこれを確認してみよう。
以下の例は、1つの仮想ディスク・ファイルをコピーして計3つ作成し、1台のWindows Serverマシンに接続して起動したところだ。オリジナルのディスクには2つのパーティションがあるため、正しく動作していれば、全部で6つの追加ドライブが表示されるはずである。だが追加した3つのディスクのうち、後ろの2つ(ディスク2とディスク3)はオフラインになっていることが分かる。
同じ署名データを持つディスクの使用例 | |||||||||||||||||||||
ディスク1の仮想ディスク・ファイルをコピーしてディスク2とディスク3を作成し、その3台を同時に接続してWindows Server 2008 R2を起動してみた。しかし同じ署名データを持つディスクであるため、2台目以降は無効になり、アクセスできない。 | |||||||||||||||||||||
|
イベント・ビューアには「ディスク 2 のディスク署名は、ディスク 1 のディスク署名と同じです。」などと言った警告メッセージが記録されている。
では実際の署名データを見てみよう。diskpartコマンドを起動し、「select disk 1」のようにしてディスクを選択後(ディスクは先頭から0、1、2、3、……と数える)、「detail disk」や「uniqueid disk」コマンドを実行すると確認できる。ただしuniqueidコマンドは古いWindows OSでは利用できないことがある。
C:\>diskpart ……コマンドの起動 |
追加したディスクの署名データは「95E1458D(16進数で8桁)」で、同じになっていることが分かる。仮想ディスクの内容を直接調査する場合は、.VHDファイルの内容を16進数でダンプ出力し、ディスクの先頭セクタのデータを調査すればよいだろう。
ディスクの先頭セクタのダンプ出力例 | |||
.VHDファイルを16進数でダンプ出力し、先頭セクタの内容を確認しているところ(jhdは16進ダンプするためのコマンド)。セクタのサイズは通常512bytesで、ブート・セクタは先頭が「33 C0 8E ……」で始まり、「…… 55 AA」で終了している。.VHDファイルをダンプすると、すぐ見つかるだろう(絶対的な場所は仮想ファイルのサイズに応じて変わるので、常に同じ場所ではない)。オフセット+0x01B8からの4bytesがディスクの署名データ。その直後にある16bytesのデータは、パーティション・データ。パーティションが2つあるので、2組続いている。 | |||
|
ディスクの署名データが衝突した場合の対処は?
ディスクの署名データが衝突した場合は、まったく別の署名データに変更する必要がある。とはいえ、操作は簡単である。オフラインになっているディスクを右クリックし、ポップアップ・メニューから[オンライン]にするだけで、自動的にユニークになるような署名データに更新されるはずである。ただしOSによってはこの方法が使えないことがあるので、その場合は改めてディスクを作成し直すか、diskpartのcleanコマンドでディスクの情報を削除後、ディスクを初期化する(初期化では自動的にユニークな署名データが書き込まれる)。
オンラインにしてディスクの署名データを更新する | ||||||
これはWindows Server 2008 R2での例。オンラインにするだけで、自動的にユニークなディスク署名データに更新してくれる。この操作が不可能なOSの場合は、手動で署名データを変更する。 | ||||||
|
コマンド・プロンプト上で作業する場合は、diskpartで「uniqueid disk id=12345678」のように実行することで、直接変更することもできる(古いWindows OSではこのコマンドはサポートされていない)。
INDEX | ||
[検証]仮想PCで学ぶ「体当たり」Windowsシステム管理 | ||
第13回 Windowsのディスク管理をマスターする(下) | ||
1.RAID-5ボリュームの作成 | ||
2.RAID-5ボリュームの再構成(1) | ||
3.RAID-5ボリュームの再構成(2) | ||
「検証」 |
- Windowsのディスク管理をマスターする(下) (2011/2/3)
複数のディスクを組み合わせて大容量化と耐障害性を確保するRAID-5。その作成方法や障害時の対応を解説 - 第254話 サポート・ライフサイクル2 (2011/2/1)
「まったく、何かってば横文字の名前を使って。だからパソコンはいやなのよね。石子、この『ライフサイクル』ってのは何なの?」 - WindowsからiPhone/Macに送れない文字とは? (2011/1/28)
Windowsから丸数字の「1」をメールに書いて送ると、iPhone/Macintoshでは「(日)」に化ける!? 化けてしまう文字の種類やその原因を解説する - iPhone/iPod touchでリモート・デスクトップ接続 (2011/1/27)
iPhoneを使ってWindows PCにリモート・デスクトップ接続する方法を解説。これで外出先から手軽に社内コンピュータの操作が可能になる
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
- - PR -