
誰でも簡単に、無料でシンガポールにサーバが作れます。AmazonWebServiceの無料利用枠、及び機能の一つであるCloudFormationテンプレートを活用しています。
実行後に利用出来る構成は
- CentOS5(suz-lab_ebs_centos-core-i386-5.5.5)
- Micro-Instance(2ECU/613MB memory/8GB RootDisk)
- FireWall(SSH&HTTPのみ許可)
です。やり方は以降に記載しています。サイトを一時退避して、国内サーバをシャットダウンしましょう。草の根ですが、確かな活動です!計画停電にお困りの方もいいんじゃないでしょうか
CloudFormationとは?
マシンタイプ、ファイアウォール、ディスク容量等の構成を予め定義しておき、テンプレートとして保存しておくことで、簡単に同じ環境を構築することが出来る機能です。
http://setsuden.tumblr.comこのブログは、AmazonEC2のシンガポールで動作しています。
AmazonEC2には、通常のWebサイト運用には十分なほどの無料利用枠があります。
サーバの消費電力は決して小さくありません、可能な限り、国内の消費電力を減らす取り組みを。
通常、AmazonEC2でシステムをつくるためにはいくつかの細かな要素を組み合わせなければなりません。しかし、今からそれを覚えている暇はないと思います。AmazonのCloudFormationという仕組みは、面倒なことを出来る限り自動化できます。無料利用枠のテンプレート作りましたので、下記の手順で利用できます。
時間は15~30分程度で終わります。
なお、AmazonWebServiceのアカウントをまだ持っていない人は、事前にAmazonEC2のアカウントを取得して下さい。この手順で作成したサーバは、あなたのサーバです。無理な使い方をしない限り、少なくとも1年間は無料で使い続けることも可能です。
サーバを起動する前に、KeyPairを作成しておく必要があります。
KeyPairsとは?
SSHの秘密鍵及び公開鍵のことです。秘密鍵は次の画面でPCにダウンロードできます。公開鍵は、これからつくるサーバに自動でアップロードされています。両方が揃わないと、ログイン出来ない仕組みになっています。
EC2タブをクリックし、Regionは「Asia Pacific(Singapore)」を選択します

次の画面で、左下の「Key Pairs」を選択し、「Create Key Pair」を選択。既に利用中の鍵がある場合は新規作成する必要はありません。

KeyPairの名前を入力します。ここでは、「setsudenKP」としました。

KeyPairは無事作成されました。「Close」で終了します。

鍵が手に入ったので、次はサーバを起動します。「CloudFormationタブをクリックします。初めて「CloudFormation」を使う場合は、サインアップが必要です。
CloudFormationとは?
マシンタイプ、ファイアウォール、ディスクボリューム等の構成を予め定義しておき、テンプレートとして保存しておくことで、簡単に同じ環境を構築することが出来る機能です。
「CloudFormationを使う前にサインアップしてね。直ぐ終わるしフリーだよ」という旨の表示が現れます。

メールが飛んできます。一番上のリンクをクリック。

これでCloudFormationを使う準備はOKです。

「Create New Stack」を選択します。

下記の画面が表示されます。

入力例は下記のようになります。
StackNameはなんでもいいです。
StackTemplate Sourceは、今回は私が作ったTemplateを利用する為、「Provide a Template URL」を選択します。URLには下記を入力して下さい。
https://s3-ap-southeast-1.amazonaws.com/setsuden/20110314FreeSetsuden-CentOS5Core.txt

この画面は、先ほどのTemplateに対する追加のパラメータです。説明は以下のようになります。

確認画面。問題なければ「Create Stack」を押す。


「CREATE_IN_PROGRESS」は作成中を表します。恐らく1,2分で終わるはずなので、右上の「Refresh」ボタンを押します。

問題なければ「CREATE_COMPLETE」と表示されます。「ROLLBACK(異常による切り戻し)」と表示された場合は、下のEventsタブで原因を調査できます。だいたいKeyPairの綴りミスとかが多いです。

今現在、下記の画像のような構成です。この構成済みのサーバにログインします。

OutPutsタブのLoginMethod行の右側にログインコマンドが記載されています。構文は下記のような感じです。
$ ssh -i <先ほどダウンロードしたKeyPair> root@<サーバのIPアドレス>
ログインを試します
1 2 3 4 5 6 7 8 9 10 11 12 13 | ローカル端末$ ssh -i Downloads/setsudenKP.pem root@122.248.255.220 -p 22 The authenticity of host '122.248.255.220 (122.248.255.220)' can't be established. RSA key fingerprint is 9d:eb:99:55:b0:4e:df:24:35:0e:66:0b:89:c6:c3:b7. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '122.248.255.220' (RSA) to the list of known hosts. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0644 for 'Downloads/setsudenKP.pem' are too open. It is recommended that your private key files are NOT accessible by others. This private key will be ignored. bad permissions: ignore key: Downloads/setsudenKP.pem Permission denied (publickey,gssapi-with-mic). |
上記のように警告がでる場合があります。
先ほどダウンロードしたKeyPairのパーミッションが甘く、他人が閲覧できる状態の為変更するようにとの警告です。
権限を変更の後、再度ログインを試します。
1 2 3 4 5 | ローカル端末$ chmod 600 Downloads/setsudenKP.pem ローカル端末$ ローカル端末$ ssh -i Downloads/setsudenKP.pem root@122.248.255.220 -p 22 Last login: Wed Oct 27 13:30:33 2010 from p436950.tokynt01.ap.so-net.ne.jp [root@ip-10-128-51-12 ~]# |
ログイン出来ました。現状では素のままのCentOSです。ここからは通常通りの構築となります。
データコピーは、SSHポートを利用して行います。rsyncに-e sshオプションなどを使うといいと思います。
下記、コマンドの例です。
1 2 3 4 | 移設元サーバ $ rsync -avz -e ssh /home/user/ setsuden:/home/user -z 圧縮 -v コピー中ファイルを表示 -a 便利オプション(パーミッション属性をそのまま保持する、等) |
5:12 PM
このページのおかげで簡単に作成することができました。
ありがとうございました。
「CloudFormationで構成の新規作成」のところで再度リージョンをAsia Pacificを選択する必要がありましたが、それ以外は何の問題もなくできました。
(Keypairの綴りの間違いもやりました!)