仕方無いので、再インストールし、イメージの復旧に挑んだ。
RAIDが壊れて無いのにRAIDを戻すって手順が事例としてなかなか無く、コマンドを調べつつやったので少々時間掛かったが、3台の仮想サーバを復旧させるのに一からインストールし直して3時間だったので、まぁ素早く出来た方でしょう。
最悪別の機器にでも同様の手順で復旧は出来た筈。
手順を整理しておく。
1.まず、RAID1でメンバ2つのディスクでmdoのボリュームを作成する。
mdadm -C /dev/md0 -l1 -n2 /dev/sdb1 /dev/sdc1
このコマンド自体で、/dev/sdb1や/dev/sdc1のデータが壊れないのか、これが一番キモを冷やした。
が、基本大丈夫。どちらかが破損している場合どうなるのか、は不明。。。どなたか詳しい方教えて下さい。
2.ボリュームグループの認識
[root@OROCHI etc]# vgscan
Reading all physical volumes. This may take a while...
Found volume group "VG_XenStorage-3654e841-0240-8ed2-0095-f590d590bf73" using metadata type lvm2
Found volume group "VG_XenStorage-19fb495e-d6e4-84ac-bf76-6e3afdbbe0ea" using metadata type lvm2
おっけ、ありました。
[root@OROCHI etc]# vgs
VG #PV #LV #SN Attr VSize VFree
VG_XenStorage-19fb495e-d6e4-84ac-bf76-6e3afdbbe0ea 1 28 0 wz--n- 1.82T 1.62T
VG_XenStorage-3654e841-0240-8ed2-0095-f590d590bf73 1 2 0 wz--n- 51.63G 51.61G
うん、サイズもOKです。
3.XenServerに認識させる
xe sr-introduce type=lvm content-type=user device-config:device=/dev/md0 name-label="Local storage 2" uuid=19fb495e-d6e4-84ac-bf76-6e3afdbbe0ea
こーんなコマンドです。
この状態でXenServerのGUIからLocal storage 2ってのがグレーな状態で表示されます。
3.Xenからの認識
http://forums.citrix.com/message.jspa?messageID=1370522#1370522
これがかなり近い内容。
xe pbd-create sr-uuid=19fb495e-d6e4-84ac-bf76-6e3afdbbe0ea device-config:device=/dev/md0 host-uuid=e7649c59-2cfa-4203-a675-5f2a432a6e4b
この実行結果を使って以下のコマンドを実行。
xe pbd-plug uuid=82f89bfc-4646-a742-a624-8e10f79b7e46
これでLocal storage 2の中身のVirtual Diskが見えるようになりました。
後はXenServerの設定を復旧すれば良いのですが。。。
コピーして作成しまくってたのでどのディスクがどこに割当たってるのか全然分かりません。。。
Windowsサーバだけはディスク量が違ったので明確に分かり、それを割当たらすんなり起動しました!
一安心。
後はExportしていたバックアップからちょこちょこImportして戻せばなんとかなりました。
しかし、仮想ディスクのマッピング情報のバックアップは必須ですね。ちゃんとやっておきます。。
xe vm-export metadata=true --multiple filename=VMEXPORT
ですね。。。
ちなみに、以下のページも非常に参考になりました。