【さくらクラウド】アーカイブから複製したままだとSSHログインができない!

さくらクラウドのロゴ

※当ブログでは商品・サービスのリンク先にプロモーションを含みます。ご了承ください。

今回はさくらクラウドのサーバをアーカイブから複製して、同じ仕様のサーバを増やしていく手順について試してみたいと思います。

下記のようにAWSの記事でも書いたのですが、サーバをてっとり早く複製して色々な状況に合わせて利用する際にとても便利です。

既存EC2インスタンスからスナップショットを使って新しくEC2インスタンスを複製する

2017年7月21日
新しいサーバが欲しくなる時
  • アクセスが増えてきたからサーバを増やして分散させたい
  • 新しいサービス公開に向けてサーバが必要
  • テスト用に本番と同じ構成のサーバが欲しい
  • その他諸々

では試していきたいと思います。

サーバからアーカイブを作成する

左メニューのストレージの中の「アーカイブ」を選択し、右上の「追加」をクリック

さくらクラウドのアーカイブ追加画像

アーカイブソース

空のアーカイブを作成するか、またはソースとなるものを選択

  • ブランク
    • 空のアーカイブを作成します。主にFTPで手元のディスクイメージをアップロードする際などに選択します。
  • ディスク
    • 作成済みのディスクの内容をアーカイブにコピーします。
      ※「アーカイブサイズ」で選択した容量より小さいディスクのみ選択が可能です。
  • アーカイブ
    • 作成済みのアーカイブ、もしくは他のゾーンに存在するアーカイブをソースとして指定することが可能です。
  • VPSディスク
    • 会員IDを使用してコントロールパネルにログインしている場合、同じ会員IDで契約中の「さくらのVPS」のディスクをソースとして指定することが可能です。

引用: 【TIPS】アーカイブ機能を活用してみよう | さくらのクラウドニュース

今回は下記のように作成します。

  • アーカイブソース
    • ディスクでアーカイブ元になるサーバを選択
  • 名前
    • web-test-archive
  • 説明、タグ
    • 未設定
  • アイコン
    • CentOS
さくらクラウドアーカイブ追加画面

アーカイブが作成されたらアーカイブ一覧で確認しましょう。

有効状態が「コピー」から「利用可能」になると利用可能になります。

ただ私の環境だけか15分くらいかかりました。。。

さくらクラウドアーカイブ一覧画面

アーカイブからサーバを複製する

さくらクラウドでサーバを立ち上げる際にディスクイメージというものを選択するのですが、アーカイブを作成していると、サーバ立ち上げ時のディスクイメージの「マイアーカイブ」に作成済みのアーカイブが選択可能項目として表示されます。

アーカイブはあくまでアーカイブ元サーバのOSを含めた設定のコピーになりますので、その他のサーバプランやディスクプランなどを変更する事で、同じ環境でより高いスペックのサーバを簡単に用意する事ができます。

ではアーカイブ元サーバの起動時と同じく、サーバ一覧から「追加」をクリックして、新規サーバ追加画面からサーバを作成してみましょう。

因みに今回はテストなのでプランもアーカイブ元サーバと同じプランを選択します。

ホスト名は「web-test-2」で作成します。

サーバ起動時にマイアーカイブの選択画像

サーバの追加が完了したらサーバ一覧から確認してください。

今回は「web-test-2」が作成されている事が確認できました。

さくらクラウドサーバ一覧

複製したサーバにSSHログインする

ここからが今回の記事の本題です。

取り敢えず初回サーバ起動時と同じくインターフェースに表示されているIPアドレスでSSHログインしてみましょう。

# 鍵の設定も複製元と同じはずなのでIPだけ変更した状態でログイン
ssh -i ~/.ssh/tsukarooohi root@59.106.215.131

# 鍵認証を設定していない場合はこちら
ssh root@59.106.215.131

通常の手順でサーバを起動したのであれば上記コマンドでSSHログインできるのですが、やはりこのサーバに関してはSSHログインできません!

私はここでハマったためこの記事を書こうと思ったのですが( ̄▽ ̄;)アハハ…

SSHログインできない理由は、さくらクラウドのアーカイブ機能は、本当にアーカイブ元のサーバの設定をまるごと活かした状態で新しいサーバを起動しているところにあります。

そのためサーバに設定されているIPアドレスやデフォルトゲートウェイも当然アーカイブ元の設定値のままになっているので、同じIPアドレスのサーバが2台起動しているような状態になります。

ここで私がハマってしまった要因として、AWSの利用度が高く、EC2のサーバをスナップショットやイメージから複製した場合はそのままSSHログインできるので、同じ感覚で考えてしまった事。

サーバ一覧を見ると分かるのですが、インターフェースにはちゃんと別々のIPアドレスが割り振られている事です。

なのに実際のサーバ内の設定値はインターフェースに表示されているIPアドレスとは違い、アーカイブ元のIPアドレスやデフォルトゲートウェイが設定されているのです!

複製したサーバのIPアドレスとデフォルトゲートウェイを変更する

何はともあれSSHログインできないので、さくらクラウドのコントロールパネルのコンソール機能を利用して変更します。

サーバ一覧から先程複製したサーバの詳細画面に移ります。

さくらクラウドサーバ詳細ボタン

コンソール機能を選択し、黒い画面の上でクリックしてコンソール機能を利用するのですが、このさくらクラウドのコンソール機能の使いづらさは何なんだ!とイラつくこと間違いナシです!

コンソールでの操作中にキーボードのショートカットなどでタブを移動したりしようとしても、コンソールへの入力とみなされ変な処理がされるので気をつけてください。

取り敢えず危なそうと感じた場合は「切断」をクリックしてコンソールから抜けることをオススメします!

※そのまま変な設定に変更してしまってもめんどくさいので。

さくらクラウドコンソール機能

ではまずはrootでログインします。

パスワードはアーカイブ元のサーバ追加時に設定したパスワードになりますので、コンソール上部にある「コピー」などを利用して上手くログインしてください。

変更箇所は2点なので下記の内容を覚えてそのまま設定変更してください。

# 下記ファイルのIPADDRとGATEWAYの値を変更します。
vi /etc/sysconfig/network-scripts/ifcfg-eth0

# 下記ファイルにアーカイブ元のhostnameが設定されていると思います。
# ここも新しいサーバのhostnameに変更します。
# 今回の場合ですと「web-test-2」に変更します。
vi /etc/hostname

# サーバの再起動
reboot

再度サーバにSSHログインする

再起動が完了したら改めてSSH接続を行ってみましょう。

# 鍵の設定も複製元と同じはずなのでIPだけ変更した状態でログイン
ssh -i ~/.ssh/tsukarooohi root@59.106.215.131

# 鍵認証を設定していない場合はこちら
ssh root@59.106.215.131

無事複製したサーバにSSHログインできましたね。

Webブラウザで表示確認

では最後に複製元と同じようにWebブラウザでNginxのデフォルト画面が表示されるか確認して終わりにしたいと思います。

ブラウザでの確認画像