Amazon EC2 とは、Amazon Elastic Compute Cloud の略で、Elastic Compute Cloud の頭文字が E C C = E C x 2 となることから、Amazon EC2 と呼んでいる。この EC2、要は Amazon による VPS サービスだと思えばいいのだが、VPS と違う点もいくつかある。それは、
- 課金は通常の VPS のように月額単位ではなく、時間単位である。サーバ起動は Amazon が用意した Java ベースのコマンドラインツールで自分の好きなときにいくつでも起動させることができる。起動したサーバのことをインスタンスという。 しかし、1つ立てるごとにそれぞれ課金される。
-
サーバをシャットダウンしたら、サーバのデータはすべて消滅する。インスタンスの消滅はデータの消滅を意味する。万一サーバがダウンしたらインスタンスが消えることになるので、やはりデータは消える。データは EBS (USB ディスクのように使える)に保存するか、サーバのディスクイメージごと Amazon S3 に保存することはできるようになっている。従って Amazon EBS(Elastic Storage Block Storage)か Amazon S3 (Simple Storage Service) を併用するのが前提となる。
- サーバを起動するには、まずディスクイメージを選ぶ(選べる)。つまり Fedora や Ubuntu、CentOS などの Linux ディストリビューションのディスクイメージを起動時に指定する。
- インスタンスを起動するたびに IP アドレスは毎回変わる。ホスト名は xxxx.awsservices.com という、IP アドレスを含んだドメイン名が動的に振られる。だからホスト名などを自身のもので固定したいときはダイナミック DNS を使うしかない。※しかし、この記事を投稿した翌日の 2008/03/27 には、追加料金 1時間1セントを支払えばスタティック IP の割り振りも可能となったというアナウンスがあった(固定 IP アドレスは使用している時間ではなく、使用していない時間に課金されることに注意)。
以下は、Amazon EC2 を使う上での大まかな流れ。
- 環境変数の設定
- SSH の鍵をセットアップ
- EC2 の用意するコマンドラインベースの Java ツールによってディスクイメージ(AMI*)を選択
(Fedora、Ubuntu など、ほかにも様々なディストリビューションのイメージが無料、有料である)
- サーバを起動=(サーバ)インスタンスを作成
- SSH + 鍵によるアクセス(SSH で、パスワードは使わない)
- 好みのサーバ環境にカスタマイズ作成(3. で Linux ディストリビューションではなく、何かの機能に特化したイメージでインスタンスを起動した場合はこのステップは省略)
- ディスクイメージを保存
- サーバを停止=インスタンスは消滅、ディスクイメージも消滅
- 上の 3. に戻る
トラックバック URL:
http://perltips.twinkle.cc/trackback/314
from Perl Tips on 2008/12/23(火) 11:02
0
Nice!
Google AdSense
イメージ登録を抹消(自分のマシンから)
# ec2-deregister ami-5bae4b32
IMAGE ami-5bae4b32
イメージを S3 から削除(EC2 のインスタンスから)
# ec2-delete-bundle -b <your-s3-bucket>
from Perl Tips on 2008/04/20(日) 21:09
0
Nice!
Google AdSense
インスタンスの /mnt ディレクトリに鍵ペアをアップロード
# scp -i id_rsa-gsg-keypair pk-xxxxx.pem cert-xxxxx.pem root@domU-12-34-31-00-00-05.usma1.compute.amazonaws.com:/mnt
ボリュームをバン
from Perl Tips on 2008/04/16(水) 17:12
38
Nice!
Google AdSense
Amazon EC2 を使うには、ツールが使えるように環境変数を設定したり、鍵や証明書を作成したりと、なかなか面倒な手続きがいるのでまとめてみた。
from Perl Tips on 2008/04/16(水) 17:07
1
Nice!
Google AdSense
インスタンス化するイメージ(AMI)を検索(以下、自分のイメージ self と、amzon が用意しているイメージを検索)
# ec2-describe-images -o self -o amazonIMAGE ami-5bae4b32 ec2-public-