F&Fサーバ停止から今までの経緯

コラム

F&FサーバはさくらインターネットのVPSで稼働しているのだが、VPSのハードウエア入れ替えによる移行が要請された。
何もしなければ勝手に移行されるようだが、移行開始日程以降であれば自分で移行することも出来る。
移行準備が整うとWeb上に移行のボタンが表示されるので、それをクリックして待つだけで良い。
筈だった。

さくらインターネットは、少なくとも以前はサポートも技術に長けていて、的確な回答が戻ってきていた。
KDDIのサーバも借りたことがあるのだが、技術的な質問をすると「某社のサーバを借りているだけだからそちらに聞いて欲しい」と言われ、GMOに聞くと「技術仕様は分からないから、ホームページにあること以外は回答出来ない」と言われた。
それに比べたらさくらインターネットは相当マトモであり、私自身信頼を置いていた。

3月20日、だから移行のボタンをクリックし、待っていた。
移行が完了するのを待っていたのだが、いっこうにサーバが起動されない。
そこでコンソールで見ると、メモリの参照位置がおかしいか何かとエラーが出てFreeBSDが立ち上がらない。
立ち上がらないのでリスタートがかかり、ループになっていた。

そこでシングルユーザモードで立ち上げてみた。
シングルユーザモードとはWindowsで言うところの、セーフモードみたいなものである。

シングルユーザモードではハードディスクすら見えない状態なので、手動でマウントしていく。
HDDがマウントされるとunixの多くのコマンドが使えるようになるのでチェックする。
チェックすると言ったって、そもそもVPS側のメモリの都合(或いはハードウエア的にメモリが壊れている)なのでどうにもならない。

さくらインターネットには問い合わせたものの、土日祝日は休みなので3日間は返事が来ない。
役に立たないAIチャットは、本当に全く全然、これっぽっちも役に立たない。

Web上を調べてみると、3月上旬にはOSがシングルユーザモードでしか立ち上がらなくなる障害が報告されていた。
実際に被害を受けた人がいるのなら、OSが立ち上がらなくなる可能性があると書いておいてくれれば良いのに。

駄目になることを前提に作業するのと、動作すると思って作業するのでは大きな違いがある。
そもそもVPS提供会社が移行ボタンを押すだけで良いよと書いているのだから、まさかOS自体が立ち上がらなくなるなんて思わなかった。
思わなかったが、バックアップは取っていた。

そのバックアップだが、さくらインターネットはディスクアクセス制限とネットワーク制限があるので、頻繁にバックアップが取れない。
バックアップを取るにはディスクアクセスが増える(tarファイルで35GBほどある)ので、制限に引っかかってしまう。

サーバ停止の可能性があるのなら、コンテンツのデータだけではなくシステム側の必要なファイルや設定もバックアップしておいた。
PerlやPHPのバージョンも重要で、バージョン依存が色々起きる。
WordPressの設定やプラグインの情報なども覚えておく必要があった。

しかし今回はそんな準備のないままOSが立ち上がらなくなった。
他の方のPostを見るとFreeBSD13は良いけれど12は立ち上がらないとなっていた。
F&Fサーバで動いていたのはFreeBSD12である。
そこでOS部分だけをFreeBSD13に出来ないかやってみた。
と言ってもシングルユーザモードなので制限が厳しい。
これだって事前に分かっていれば、サーバが正常稼働している状態でバージョンアップを試みることが出来た。

と言っていても仕方がないので、ネットワークを使えるようにしてアップデートを試みたが、上手く行かなかった。
FreeBSD12が動いている時点、いや動こうとする時に既にダメなのかも。
それでも6時間くらいは色々やってみたが、さすがに疲れた。

これなら新たにインストールした方が早いと思った訳だが、サーバの設定を読み出したりダウンロードすることが(シングルユーザモードなので)余り出来ない。
設定を見ることは出来るが、VPSの端末はキャラクタではなく画像のようでコピーが出来ない。
WordPressは立ち上がらないので設定も分からない。
この時点で古いデータは捨てざるを得ないなと思ったし、もうサーバを立ち上げるのもやめたいと思った。

VPSコンソールで新たなOSのインストールボタンをクリックした。
これでFreeBSD15がインストールされる。
OSがインストールされた後はApacheだとかPerlやPHPやDovecotやPostfixなどを入れていく。
FreeBSDは色々なところでバージョン依存があったりするのだが、FreeBSD12を入れた時はかなりスムーズに行った。
FreeBSDも良くなったものだと思っていたら、FreeBSD15はダメだったのである。
Apacheを入れて立ち上げると、実際にインストールしてあるPHPのバージョンとApacheが認識しているバージョンが違う。
Apacheが認識しているバージョンはインストールされていないので、何かおかしな事になっている。
これを直そうと頑張ったのだが、結局どうにもならなかった。

そこで今度はFreeBSD14に落としてインストールを開始する。
これは比較的上手く行って、ApacheもDovecotもPostfixも動作した。
ここまで来ればあとはWordpressだ。
WordPressはファイルをコピーして立ち上げるだけなので、非常に簡単だ。
非常に簡単なのだが、mysql(データベースサーバ)を認識しない。
これはwp-confih.phpの記述がlocalhostではダメで127.0.0.1で認識するようになったが、それに気づくまでにも時間がかかってしまった。

WordPressにバックアップデータを読み込ませるのだが、mysqlのデータはテキストデータだけではなくテーマの情報などが含まれている。
しかし使用していたテーマであるLionblogはPHP8に対応していないので動かない。
mysqlのデータを入れてもエラーになって立ち上がらない。
ようするにWordpressのバックアップとは、バックアップ前の環境と同じでなければ意味が無いと言うことだ。
今回はOSのバージョンもPHPのバージョンも変わったので、バックアップデータが正しく戻せたからと言って、その内容がちゃんと読めるわけではない。

Windowsのシステムドライブを、他のPCに接続したらWindows自体が立ち上がらない、みたいなものだ。

WordPress独自のバックアッププラグインによるバックアップデータも持っていたのだが、そもそもこれってWordpress自体が正常に立ち上がらないと読み込むことが出来ない。
そこで別のテーマでWordpressを立ち上げ→その後mysqlのデータをインポートし→そこからテキストだけをxmlでエクスポートし→いったんWordpressを初期化し→新規立ち上げてから→xmlファイルを読み込んでみた。
これで画像以外はインポートできたが、何故か正常に読めたのは2020年頃までのデータの一部だけだった。
古いデータは捨てても良いと思っていたので、何がどう悪くて読めないのか迄は追求しなかった。
画像ファイルなどWordpress上では3千枚くらいの写真があることになっているのだが、実際には千枚くらいしか認識しなかった。

そして本日3月23日にさくらインターネットから返事が来た。
VPSの設定を変えてFreeBSD12が立ち上がるかどうかやってみることは出来るけれど、必ず動くとは言えないとのこと。
これは旧サーバのデータをいじっていないことが前提で、旧サーバから再移行は出来ないのだそうだった。

コメント

タイトルとURLをコピーしました