私の環境でのメモとなりますので、必ずしも、同様に作業出来るとは限りませんので、試される方は、十分に知識を身につけて各自の責任において作業して下さい。
この記事では、さくらのVPS 1.5Gプランから2Gプランへの移行記事となります。
事前条件
- 旧サーバ・新サーバ(両サーバ)ともSSHが稼働していること
- 両サーバとも同じOS及びバージョンで行うこと
本記事では、Scientific Linuxにて構築するものとする(CentOSでも同じ) - 両サーバもroot権限で作業出来ること
- ある程度、Linuxに精通していること
移行手順
- 新プランのOSインストールを旧サーバに合わせる
(CentOS以外のOSはカスタムインストールする必要有り) - 新サーバにて起動確認し、rootでログイン出来る事を確認
- 新サーバは、外部からSSH接続出来、rootもログイン化にする
セキュリティ強化されている方は、hosts.allow等で、旧サーバのみ接続化にすると良いかと思います - 両サーバとも、yum update; yum clean allをしておく
(この作業はなくても構わないかも) - 旧サーバのサーバデーモンを停止する(ftp, httpなど)
SSHは停止しないよう注意して下さい。もし止めてしまった場合には、VPSコントロールパネルのリモートコンソールで作業するか、そこでデーモンを起動しましょう。 - 新サーバへ転送してはいけないディレクトリを調べる
ちなみに、私の環境では下記の通り
/boot
/dev/
/proc/
/sys/
/var/run/
/var/lock
/tmp/
/tmpfs/
/ramdisk/
Cache*
ifcfg*
ssh_host_*
fstab
/etc/sysconfig/network - 旧サーバから新サーバへrsync転送(新サーバのIPは11.22.33.44とした場合)
excludeが多い場合は、exclude-fromにてテキスト作成しておいても良いでしょう。# rsync -rtlzvogpHAX --exclude /boot/ --exclude /dev/ --exclude /proc/ --exclude /sys/ --exclude /var/run/ --exclude /var/lock/ --exclude ifcfg* --exclude ssh_host_* --exclude fstab --exclude /tmpfs/ --exclude /ramdisk/ --exclude Cache* --exclude /etc/sysconfig/network --block-size=4096 -e ssh / 11.22.33.44:/
- 転送完了したら、新サーバを再起動
- 新サーバにて無事起動する事が出来、ログ等でエラーが出ていないかを確認
もし、起動に失敗した場合は、OSの再インストールからやり直す - 新サーバにて、旧サーバの環境がそのまま受け継がれ、デーモンも起動出来るか確認
文章にすると長くて嫌になるかもしれませんが、私の場合、実質の作業はrsync転送に時間がかかるくらいなので、数十分で作業完了しました。
移行完了後
- DNSのAレコードを旧サーバから新サーバへ向け、設定
急ぐ場合は、TTL設定を短く設定し、DNS情報が置き換わったら、元に戻しましょう - 新サーバ契約を本登録
謝辞:今回の作業に当たり、「さくら VPS 旧プランから 2G 新プランへの移行手順」や「さくらVPS512からVPS1.5Gへの移行(Debian)」の記事を参考にさせて頂きました。