さくらのクラウドでサーバーのIPアドレスを変えずにサーバーを入れ替える方法

クラウドでサービスインしているサーバーのOSやサーバー環境(RDB、Webサーバー、言語・・・)を更新するには、新たにサーバーを準備し更新した環境を作りサーバーを入れ替えるのがダウンタイムが少なく良いですよね。Amazon EC2 には Elastic IP アドレス という機構があり、保持しているIPアドレスに任意の EC2サーバーを割り当てられるので、同一IPでのサーバー入れ替えは簡単です。
しかし、さくらのクラウド にはElastic IP アドレスのような機構は無く、同一IPでのサーバー入れ替えは簡単には出来ませんが、短時間のダウンタイムで入れ替える事が出来る事が分かりました。


方法

さくらのクラウドは、サーバーを作成すると(グロバールな)IPアドレスが付いてきますが、既に使っているサーバーのIPアドレスを再割り当ては出来ません。サーバーを作成する際にストレージ(ディスク、SSD)も作成しますが、ストレージはサーバーから切り離し別々に管理で来ます。
また、ストレージ管理メニューの「ディスク修正」でストレージ内のOSに設定されているホスト名、IPアドレス等を書き換える事が出来ます。この「ディスク修正」を使う事で新たなサーバー用に作ったストレージのIPアドレスを書き換え、従来のサーバーにつなぎ替える事で同一IPで新しいOS/サーバー環境に入れ替える事が出来ます。

手順

1. 新しいサーバーを作成し、新しい環境を構築する

クラウドの管理画面でサーバーを作成し、起動したら Chef などで新しい環境を構築します。

2. 新しいサーバーを止めて、ストレージを外す

クラウドのサーバー管理メニューでサーバーからストレージを外します


3. ディスク修正でIPアドレス等を変更する

クラウドのストレージ管理メニューのディスク修正で旧サーバーと同じ値を設定する


4. サービスインしているサーバーを止め、ストレージを付け替える

クラウドの管理画面で現在サービスインしているサーバーを止め、 2.と同様にストレージを外し、下の画像のように 新サーバーに付いていたストレージを割付け、サーバーを起動。
この作業の間はサービスが停止しますが、予め練習しておけば時間は数分だと思います。

以上です。

おまけ、さくらのクラウドの感想

お客様のサービスをさくらの専用サーバーからクラウドに移行して運用していますが、Amazon EC2と比べた感想は

良い点

  • 値段が安い。一時的な利用ではなく、基本的に動かしたままの場合はサーバーの利用料が安い
  • 同一価格で比較すると、サーバーが早くてインストール等が早く済む。CPUやメモリー容量も多い上、SSDも使えるので早いです。
  • 質問にはちゃんとした回答がある (Amazonでは質問したことが無いので比較はわかりません)

悪い点

  • 管理コンソールが使いにくい。Webベースの管理コンソールはバージョンアップし、使いやすさは向上していますが、まだまだAmazonの比べると使い勝手が良くない
  • 技術情報が圧倒的に少ない! 管理コンソールのヘルプは画面操作のみですし、FAQも簡単な解説のみです。ちゃんとした解説はさくらのナレッジ ぐらです(?)
  • Linuxの知識がより必要。Amazonにくらべ管理コンソールで出来ない事もあり、Linuxのシステム管理の知識がAmazonより必要になります。

最後に、今のところ大きな問題もなく安くて快適なさくらのクラウドには満足しています。