Xserver(エックスサーバー)で動かしてるこのブログを新サーバーに移行してみた

やわなべです。

このブログをホスティングしているエックスサーバー。最新機能を素早く取り入れてくれるんで、お世話になりっぱなしです。そんなエックスサーバから今週末にこのようなメールが。

この度エックスサーバーでは、sv800~sv1110.xserver.jpサーバーをご利用のお客様を対象にサーバー性能の大幅向上および基盤システムを刷新した最新サーバー環境(sv2001.xserver.jp 以降)へ簡単に移行できる「新サーバー簡単移行」機能の提供を開始いたしました。

なんと無料で高スペックのサーバーに移行してくれるそうです。移行しても使えるディスク容量の上限が増えたりはしませんが、処理性能が上がることでレスポンスが快適になったりというメリットはありそうです。

というわけで、早速やってみました。

スポンサーリンク

サーバ移行はコピーベース

 
今回の新サーバーへの移行はざっくりこんな手順になるようです。

  1. 現サーバを稼働させたまま、ホスティングされてる全データを新サーバーへコピー
  2. 新サーバーで動作確認してOKなら、移行実施
  3. 一定期間の後に現サーバのデータ削除

サーバー移行で一番大きいのは新旧でIPアドレスが変わるという点。コンテンツの新サーバーへのコピーはエックスサーバーさんの方で(たぶん自動で)やってくれるんですが、
自分のサイトが移行先の新サーバーでちゃんと動いてるかは自分で責任持って確認しないといけません。

新サーバー提供メールを受けて反射的にサーバー移行を申し込んだのが木曜日。申し込みはインフォパネルというところから行います。

ss72458.png

手順は以下のマニュアルの通りですが、ボタンを2回押すくらいで完了します。

参考 お申し込みについて > 新サーバー簡単移行

フォームを送信するとすぐに「移行申請を受けつけました」というメールが届きますが、データのコピーはすぐ始まるわけではないようです。私みたく反射的に飛びついたユーザーが多くて待ち行列ができているのかもしれません。

というわけで、その日はそのまま寝てしまったんですが、翌朝起きてメールボックスを開くと、2通メールが来ていました。どうやら、深夜2時ごろからコピーが始まって、20分ほどで終了したそれぞれの通知のようです。

コピー完了のメールには、要約すると「1週間の猶予を与えるから、その間に新サーバーでのコンテンツ確認と調整をやれ。移行完了していい状態になったらインフォパネルで完了の手続きをしろ」とありました。ただですね、

このたびのデータコピー作業において、最新サーバー環境へのファイルコピーに失敗したフォルダ・ファイルがございます。

最新サーバー環境へ切り替える前に、以下「データコピー状況の確認」でご案内の手順に沿って、『データコピー実行ログ』をご確認くださいますようお願いいたします。

と、恐ろしいメッセージがさらっと書かれてます。…が、がんばるぞ。

hostsを書き換えて確認しよう

インフォパネルへアクセスするとこんな画面。

ss49904.png

新サーバは新しいIPアドレスで稼働しているので、確認はパソコンの設定でドメインのIPアドレスを擬似的に新サーバーのそれに付け替えて確認すればいいようです。

Macだと具体的には /etc/hosts というファイルに

[新サーバーのIPアドレス] ywnb.net

みたいに書きます。サーバーにドメインをいっぱい稼働させてる人は、全ドメインぶんの記述を書き並べる必要があります。

その状態で、サイトにアクセスして、今のサーバーと同じように動作していればOKです。私の場合もちろんこの「やわなべ.net」の動作確認をするわけですが、特に問題ないようです。このサイトは先日からSSL化してますが、証明書もそのまんま移行できてるようですね。

インフォパネルでは、サーバーコピー時のログが見れます。

実は新サーバへの移行はMySQLのDBサーバーも新しくなっています。WordpressはMySQLを使うので、DBサーバーの場所を設定ファイルに書かないといけないんですが、新しいDBサーバーの場所に書き換えないといけません。ただコピープログラムは賢くて、サイトにwordpressがインストールしてある場合は、勝手にDBサーバーのホスト名のところを新サーバーのそれに書き換えてくれるようです。さすが。

他にもいくつか別ドメインで入れてるサイトがあるんですが、そちらも特に問題なし。あのコピーに失敗したとかいうメッセージは何だったんでしょうか。

インフォパネルには、作業時に生じたエラーログもあるんですが、そこには、

mirror: Fatal error: gnutls_record_recv: The TLS connection was non-properly terminated.

といったエラーが2件出ていることがわかります。が、これでは何に失敗したのかさっぱりわかりませんよね。しかも、
ss49924.png

実は、この移行作業中の間は「サーバーパネル」、いわゆるコンパネ機能が使えません。 新旧サーバーへの「ファイルマネージャー」や「phpMyAdmin」での操作はできるんですが、それだけでエラーの調査や対応をするのはちょっと難しそう。

このまま移行完了しても2週間の間は旧サーバー環境に戻すことができるうようなんで、結局、このまま移行確定することにしました。完了の手続きは「インフォパネル」でボタン1個押すだけで終わって、以降はコンパネでログインすると新サーバーの設定ができるようになります。

で、いまだに何がエラーだったのかわかってないわけですが、もしこのサイトのどこかでエラーが出てるとかありましたら、お知らせいただけるとありがたいです。

DNSサーバーの書き換えを忘れずに!

さて、これで移行作業が終わったかというと、さにあらず。確認作業の途中、自分のマシンだけIPアドレスを変えてアクセスしてましたよね。このままだと新サーバーのコンテンツを見れるのは自分だけ、ということになってしまうので、ドメインのIPアドレスを設定しているDNSサーバーのアドレスを忘れずに書き換えないといけません。

エックスサーバーのDNSで管理している場合は、その書き換えもやってくれるようですが、私はいつもドメインを買っているスタードメインさんのDNSを使っているので、スタードメインの管理画面から各ドメインのIPアドレスを新しいものに書き換えていきます。

ss50630.png

こんな感じで。この作業を手持ちのドメイン全て(そんなにないけど)に対して行います。

終わったら、さっきhostsに書いた一時的な書き換えは消しときましょう。環境によってはDNSが新しいサーバーを見るようになるまでタイムラグがあるかもですが、数時間経ってアクセスして問題なければ、まあ大丈夫かと。