仮想化, 日記, 自宅サーバー

自宅サーバーのさくらVPSへの引越し

このブログをホスティングしているサーバーは2000年以降11年間いわゆる自宅サーバーで運用してきた。これも安定して電気が提供されていたからであって、この度の地震に伴う計画停電はどうしようもない。最近は頻度が減ってきたものの頻繁に発生する計画停電はどうしようもなくクラウドに避難。引越し先としてはいろいろ考えられるが、以下の条件で調べてみた。

  • root権限を使える
  • メモリ512MB、HDD20GB程度とロースペックでいいので安い
  • 既存のVMをそのまま引越しできる

その結果、さくらのVPSに決定。上のスペックで月々980円という約牛丼2杯分という無理のないプライス。とはいえ、3番目の条件である既存VMの引越しはサポートされておらず通常はプリインストールのCentOSである。普通はこれをセットアップして使う。

既存VMの引越しはサポートされていないが、さくらVPSは完全仮想化なのでOSが起動してしまえばまあどうにでもなる。というわけで2段階でVMを移植した。方法としてはまず、上に書いた「カスタムOSインストール」でDebianをミニマムインストール(1GB)して起動し、そこからSWAPパーティションを除く残りの18Gにファイルシステムを作成し既存VMのルートファイルシステムをコピー。そのあと、/boot/grub/menu.lstを書き換えておもむろに再起動。図にするとこんな感じ。

この再起動後がこの移植作業の最大の難所である。だいたい最初の起動ではinitrdが無効とかrootファイルシステムがマウントできないとかで起動に失敗する。しかしこのさくらのVPSが秀逸なのがVGAコンソールが使えることだ。KVMには詳しくないが、Webの管理画面からJava Appletで管理画面であるVGAのコンソールが使えるので、Grubの画面操作や起動に失敗した画面でエラー内容を確認できる。これによりいくつか試行錯誤があったが無事に手持ちのVMを起動することができた。その他にも仮想のシリアルポートもサポートされておりこれもWebの管理画面から利用することができる。

ルートファイルシステムのコピーはパイプでsshに送ってssh経由で転送。コマンド例はVPSで新パーティションを/mnt/tmpにマウントしておき。以下を実行。

tar zcpf – . | ssh root@<VPSのサーバー> “(cd /mnt/tmp ; tar zxpvf -)”

注意点としてはお試し期間中は無料だけど外向けのSMTPポートが使えないこととネットワークの帯域宣言がされていることか。正式申し込みに1日ぐらい必要なので使うのを決めたら本申し込みをしましょう。

このVMのイメージは2002年くらいになんとなくインストールしたDebianをひたすらバージョンアップしたもので、今まで3.0→3.1→4.0→5.0→6.0とメジャーバージョンアップもapt-getコマンドでアップグレードしただけに感慨深い。また稼働VMもVMware Server→Xen→VMware ESX→KVM(さくらVPS)と渡り歩いてきた。今回の地震で自宅での運用は途切れたが、このDebianのメジャーバージョンアップは続けていきたいと決意を新たにする今日この頃です。

similar posts

comment

よろしければ、コメントをどうぞ。トラックバックはこちら

このエントリーのコメントの購読

次のHTMLタグが使えます。: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

*Required Fields