【トラブルシューティング】仮想マシンが起動できなくなった件。。。
夜中にフリーズメールが来て叩き起こされ、現場に飛び込みました。
ある仮想マシン(サーバー)がダンマリになってしまっていました。
土曜日の夜(深夜なので日付が変わって日曜日)なのでゆっくりシューティングできるとタカをくくっていたのですが。。。
-
コンソールからもログインできないし、さてどうしたもんかと思案はしていたものの、バックアップは取ってあったし、まぁ最悪は戻せるしでのんびり構えてました。
手がなくなったので最後の手段である魔法のコマンド「仮想マシンのOFF>ON」をやることに。
ただ、ちょっと引っかかることがありました。
それはVMotion中だったこと。
この時点で一時停止もできなかったので心配はあったのですがにっちもさっちもいかないのでエイヤ!でやったところ。。。。
ふっ。起動しなくなったぜ。
というか、VCenterが見失いやがったぜ。。。
マジか!?
ということで状況を調査。
VMotion中だったので状況を把握するために元と先のESXiのデータストアを確認。
すると、両方にvmdkが存在する!!
移行先のvmdkはほぼ完全な形になっているっぽいのでこいつをどうにかVCenterが認識してくれればいいんだけど、とおもい設定ファイルの中身を閲覧してみた。。
いやー、サーッパリわかりませんwww
時計は午前3時。
日曜とはいえ出勤してくる人居ますのでのこり4時間程度。
バックアップから戻すならこのタイミングしか無いので転送をスタートさせつつ、更にシューティングを進めます。
一旦ESXiの中身をカラにするため他のVMを別のESXiへVMotionで以降させます。
合わせて当該vmdkを含む仮想マシン全体もバックアップを取りました。
そして移行後に一度ESXiハードウェアの電源OFF>ONを実行します。
が、復旧せず。
期待はしていませんでしたがやっぱりがっかりはするものですw
ここで大体90分位。つまり5時前。
早い人は7時位には来ちゃうことがあるのでちょっと焦りが。。。
バックアップからのリストアはあと30分位でしたが、バックアップジョブ後の変更点は記録されていないのでできれば元VMで戻したい。。
次に一度ESXiをVCenterから解除して再登録みようということに。
VCenter上にあるデータベースの中身をフラッシュするのが目的でした。
が、それでもunknownは変わらず。
ここでちょっとおさらいをすることにしました。
仮想マシンとは?
・本体はvmdkである。ここに全ての情報が乗っている。
・設定ファイルは破損してもESXiが作りなおす。
・現状、vmdk自体は健康そうである。(データ容量から)
・問題は「VMotion実行中」状態を保持し続けていること。
・VMotion自体は既に握っていないのでVCenterからコントロール出来ない状態
ということで仮想マシンが「VMotion未実行状態」になればいいのではないか?との推論に達しました。
さてどうしよう、どんな方法があるのか?
ESXiから仮想マシンを解除し、vmdkを再登録するのが一番手っ取り早そうだということで即実行。
なんときちんと認識してくれました!!
登録を確認し、vmdk以外の設定ファイルなども再作成されていることを確認して仮想マシンをONに!
起動できました~~。
この時点で6時半。
システムチェックをし終わった頃に最初の出勤者がきました。
特に問題なく使えるのを確認して退館できました~
<今回わかったこと>
・vmdkさえ生きていればなんとかなる
・vMotionが98%で停止している状態は超危険。できれば専門の保守をコールすべし
※ESXi5.1以降でこのバグは解消されました(ホッ)
・バックアップはまめに取りましょう♪
・そして、落ち着け!冷静になれ!<いつも心に言い聞かせながら作業してます。