Xen爆発しろ!

またもXenのトラブルで落ちる。

落ちた時にFS(Reiser)を壊したものだから、なんだかんだで14時間も止めるハメに。

とりあえずまとめとしてメモ書いとく。

昼頃起きたら、どうもサーバが止まっているようだったのだけど、shellを叩くと反応がある。じゃあshutdownすりゃいーじゃんと思うのだが、shutdownはまるっきり出来ない。しょうがないので、ホストからxm destroyする。原因がどこにあるかはわからないが、とりあえず止まる。

fsckをかけると、ジャーナルの処理がされる。当然のようにそれでは完了してくれなくて、–rebuild-treeなぞを要求する。まぁここまではよくあること。あまり驚かない。ところが、/homeにあたるlvをfsckすると、途中でabortする。思いっきりアセる。

とは言え、そこでメゲずにもう一度–rebuild-treeをすると正常終了する。どうせささいなバグが元でabortなんだから、メゲずにやってみるのが正しいw

もちろんlost+foundに大量にファイルが出来る。まぁしょうがない。何とか出来そうなものは何とかして、vm再起動する。

lost+foundの中身を整理しようと、ゲスト上でlsすると止まってしまった。しょうがないので、またxm destroyする。当然のようにfsck。

ところが/homeのlvはfsck中にshellごと飛ぶ。まぁ–rebuild-treeもあまり信用出来ないので、同じサイズのlvをもう1つ作って、元の/homeのlvはread only mountして、新しいlvにcpする。fsckをしないとread only mountに失敗することがあるのだけど、fsckしておけば問題なく出来る。

cpは問題なく終了したので、vm再起動 <- 今ここ あとは、lost+foundの中身を整理して復旧作業完了。 /homeは400GBくらいあるので、何をしてもそれなりに時間がかかる。 しかしまぁ、何度も書いているんだけど、ちょっと負荷が重くなるとうちのXenは死んでしまう。他ではXenが不安定で嘆いてる話はあまり聞いたことがないんだけど、みんなどんな状態で使っているのだろう。うちはそれなりにいろいろ実験してから本番投入しているので、設定がおかしいとかってことは多分ないと思うのだけど。 今時Xenは珍しいものじゃないと思うのだけど、意外なほど情報がない。Ver 3.0以前のものはそれなりにあるのだけど、そのうちのほとんどはdistroの標準設定みたいなのを動かして、動いた動いたと喜んでいるレベルのものなので、運用管理の参考になるものは極めて少ない。さもなくば、「Xen用カーネルをソースから作りました」的なもの。いずれにしても、「運用」まで書かれたものがない。 日本語で書かれていることを諦めて英語のものを探しても、あまりない。ましてや、Ver 3.2とかになると、もっと少ない。FLOSSの常識の通り、添付ドキュメントもあまりアテにならない。 さらに、Xenと組み合わせて使うボリュームの仮想化とか分散化についてのいい資料もあまりない。nfsが使いものにならないのは実証済みだし、NBDもあまりアテにならない。iSCSIも、適当にファイルサーバ上にtargetを作っても、どうもパフォーマンスが出せない。OCFS(Oracle Cluster File System)もイマイチ動きが悪い。みんなどうやってるんだろうなぁ。同じホスト上で動かすのでも、どのfs typeが良いかという資料はあまりない。あっても古い。 こういったことをちゃんとまとめたら、それだけで十分コンサルのネタになりそうなんだがな。実際、仮想化って便利だからやらない手はないと思うし。