Windows Server 2003 までの MSCS では、クラスタで使用しているディスクを交換して、ディスク署名が変わると
ClusterRecovery でドライブの変更または、dumpcfg でディスク署名を変更して、交換したディスクを交換前の
ディスクと同じようにするという作業を実施していました。
Windows Server 2008 の WSFC (MSFC) で、ディスク署名が変更されるとどのような動きになり、どのような修復
作業が必要になるのかを調べてみました。
Windows Server 使い倒し塾 の以下の記事を自分なりにまとめてみた形です。
Windows Server 2008 フェールオーバー クラスタで、clusterrecovery.exe によるディスク署名の変更は必要か?
Windows Server 2008 では、DISKPART コマンドからディスク署名の確認 / 変更ができます。
# ディスク署名の確認は以前の OS の DISKPART でもできますね。
ディスク署名の確認 / 変更の操作は以下のコマンドになります。
DISKPART
LIST DISK SELECT DISK <ディスク ID> [ディスク署名の確認] [ディスク署名の変更] |
DISKPART を実行して UNIQUEID コマンドから、ディスク署名の確認 / 変更が行えます。
ディスクに対して署名を変更しますので最初に [LIST DISK] または、[LIST VOL] で対象のディスクを確認しています。
LIST VOL ではボリュームの確認になりますが、[SELECT VOL] でボリュームを選択すると、ボリュームを作成している
ディスクが選択されますので、ドライブレターからディスクを判断する場合は、[LIST VOL] で調べて [SELECT VOL] で
ボリュームからディスクを選択するのが使いやすいと思います。
[ディスク署名が変更された場合の修復]
まずはディスク署名だけを変更して、クラスタのディスクがどのようになるかを確認してみました。
H ドライブのディスクが今回、ディスク署名を変更したディスクなのですが、正常にオンラインになっていますね。
Windows Server 2003 以前では、ディスク署名が変わっているとオンラインにすることができませんでした。
以下のログが、イベントビューアに出力されています。
単純なディスク署名の変更だと、クラスタが自動的に署名の修復作業を実施し、最新のディスク署名の値で、
クラスタの構成情報を更新してくれているようです。
[ディスク再作成後の修復]
次は、ディスクを再作成した時にどのような動きになるのか確認してみたいと思います。
何かのリソースで使っているディスクでテストをしたほうがよいと思いますので、DTC で使用しているディスクで
検証してみたいと思います。
一度 iSCSI のディスクを削除し、ターゲット側で新規に作成したディスクを H ドライブとして割り当ててから、
クラスタを起動してみました。
ディスクを再作成した場合、イベントビューアに以下のエラーが出力されていました。
署名の再設定がされなかったみたいですね。
ドライブ文字は一緒にしていますので、MSDTC のディスクとして認識はしていますが、オンラインにはなっていません。
オンラインにすると以下のエラーになります。
この場合は、ディスクの修復をすることでオンラインにすることができます。
ディスクの修復は [フェールオーバー クラスタ管理] から対象のディスクを右クリック → [その他のアクション]
→ [修復] で実行することができます。
ディスクの修復をすることで、代替ディスクとして別のディスクを対象のクラスタディスクとして割り当てることができます。
これでディスクはオンライにできます。
MSDTC のリソースを新規に作成したディスクでオンラインにするためには別の手順が必要になりそうです。
こちらについては別途調べてみたいと思います。
# MSDTC をオンラインにしようとすると以下のエラーが発生します。
2008 になってクラスタのディスク復旧が標準の GUI からできるようになったので復旧手順もシンプルになりそうですね。