なんとか確保してある時間内に終わりましたが、なかなか冷や汗ものでした…。
1 時間程度で終わるかなと書きましたが、
自分の中での予定では「多少トラブって 2 時間程度だろう」と思っていました。
…が、そうはいかないのが常。
最初に DB サーバの lenny へのアップグレードと、
バックエンドサーバのカーネルアップグレードを行いました。
これは問題なく終了。この時点で 40 分くらい。
DB サーバのカーネルも上げたかったのですが、
etch で作ったのがうまく動かなくて、lenny で再生成。
これは最後に適用しようと考え、
裏でビルドしつつ /. 本体のアップグレードに取りかかりました。
まず、slash パッケージを入れようと思ったのですが、
よく考えたら最終修正が入った正式パッケージをまだ作っていないことに気づいて、
テストサーバでビルド。これに意外と時間がかかってしまったので、
上で再生成したカーネルのほうが先にできてしまいました。
ということで、DB サーバのカーネルアップグレードを先にやることにしました。
問題なければ、再起動後すぐに立ち上がってくるはずですが、
ping が全然返ってきません。カーネルの config は間違っていないはずなので、
ネットワークのインターフェース名が変わってしまったのか?とドキドキ。
ハードに付いているマネジメントカードのリモートコンソールで確認
しようとしたところ、リモートコンソールが表示できない!?
どうやら proxy 経由ではダメのようです。
そこで VPN 環境を構築して、簡易的な VPN で繋いでみて、
やっとリモートコンソールが表示できました。
確認てみたところ、カーネルに入っている NIC のファームウエアファイルのパスが
変わっていたため、ファームウエアを読み込めず、
NIC が認識されていなかったのが原因でした。
とりあえず symlink して回避。無事立ち上がるようになりました。
この時点で 2 時間はとうに過ぎ、淡い期待は見事に裏切られたのでありました。
とはいえ、こっからはスクリプトを動かしつつ、
状況を確認しながら進めていけばいいので楽だなと思ったら、
そうはいかなかったのです…。
サーバ側の設定がテスト環境と微妙に違っていて、
そこで引っかかってしまったので、スクリプトを修正しつつ動かしました。
結局、最終的に実機テストできる状態になったのは 17 時頃でした。
そこからテストをして、新たに見つかった問題をいくつか修正し、
17:50 にオープンさせました。
停止時間が長くなり、ご迷惑をおかけしました。
まだバグはたくさんあると思うので、皆さんのお叱りバグ報告をお待ちしています。