Amazon EC2 関連

ちょっと覚書き

サービスコンソール

ここから、「Amazon EC2」のタブを開く。そしてログインしてEC2の個コンソールへ。

支払い情報はコンソール内ではなく、右上の Navigationメニューの Your Account の Account Activity にあるの注意。そっちに行こうとするともう一度パスワード認証がある。

コンソール自体の使い勝手はまあ良いんだけど、ちょっと横に長い。コントロールが右端にあって、しかもはみ出してると操作不能になるので注意。はみ出しているためそもそも気が付かないとか注意。

キーペア

起動した EC2インスタンス(仮想マシン)への sshアクセスにはコンソールで Key Pairs を作成しておく必要がある。作るとプライベートキー(.pemファイル)がその場でダウンロードしてくるので大切に保存する。クライアント側の ssh の為にアクセス権限注意「chmod 600」とか。

WindowsPuTTY 使うときはそのファイルを PuTTYgen(PuTTY Key Generator)を使って専用形式に変換する必要がある。「Load」釦を押して「.pem」ファイルを選択、必要ならパスフレーズを設定して、「Save private key」して「.ppk(Putty Private Key Files)」ファイルを作る。PuTTY起動時に認証のためのプライベートキーファイルに指定する

(最初の)ログインは取り敢えず rootユーザなの注意。「root@<インスタンスの Public DNS: ec2-<IPっぽい-数字->云々>」コンソールでインスタンスを選んでおいて Public DNS 欄をコピーしてくる。

最初のインスタンス

最終的には自前で AMI (Amazon Machine Image) を用意した方が良いだろうけど最初様子見て Amazonさん自身が用意した FedoraRuby on Rails イメージを使うことにする。smallマシーン

起動時点で http://<ec2-<IPっぽい-数字->云々> に行くと Rails の Welcome aboard が動いている。最初から。

ログインしてみた

root で入ってみる。噂に聞くとおり確かに ssh のレスポンスに一拍おくような感覚がある。まあ、慣れれば問題ないレベル。

この機械のハードディスクの様子はこんな感じ

[root@domU-12-31-38-00-28-D2 ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             9.9G  1.3G  8.2G  13% /
/dev/sda2             147G  188M  140G   1% /mnt
none                  854M     0  854M   0% /dev/shm
[root@domU-12-31-38-00-28-D2 ~]# mount
/dev/sda1 on / type ext3 (rw)
none on /proc type proc (rw)
none on /sys type sysfs (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sda2 on /mnt type ext3 (rw)
none on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
[root@domU-12-31-38-00-28-D2 ~]# cat /etc/fstab
/dev/sda1               /                       ext3    defaults 1 1
/dev/sda2               /mnt                     ext3    defaults 0 0
/dev/sda3               swap                    swap    defaults 0 0
none                    /dev/pts                devpts  gid=5,mode=620 0 0
none                    /dev/shm                tmpfs   defaults 0 0
none                    /proc                   proc    defaults 0 0
none                    /sys                    sysfs   defaults 0 0

fdiskで夫々の領域をみる

Disk /dev/sda1: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa68331d3
Disk /dev/sda2: 160.1 GB, 160104972288 bytes
255 heads, 63 sectors/track, 19464 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x3177e8d0
Disk /dev/sda3: 939 MB, 939524096 bytes
255 heads, 63 sectors/track, 114 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xdd33fe4e

CPU とメモリ

[root@domU-12-31-38-00-28-D2 ~]# cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 15
model           : 65
model name      : Dual-Core AMD Opteron(tm) Processor 2218 HE
stepping        : 3
cpu MHz         : 2599.998
cache size      : 1024 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow up pni cx16 lahf_lm cmp_legacy svm extapic cr8legacy ts fid vid ttp tm stc
bogomips        : 6502.57
clflush size    : 64
 root@domU-12-31-38-00-28-D2 ~]# free
             total       used       free     shared    buffers     cached
Mem:       1747764     301228    1446536          0      34156     178896
  • /+ buffers/cache: 88176 1659588
Swap: 917496 0 917496
Railsの起動スクリプト

root の contab から起動していた

[root@domU-12-31-38-00-28-D2 ~]# crontab -l
# restart your mongrel server
@reboot /bin/sh /home/webuser/helloworld/restart.sh
@reboot /bin/sh /etc/init.d/mysqld start
[root@domU-12-31-38-00-28-D2 ~]# cat /home/webuser/helloworld/restart.sh
#!/bin/sh
cd /home/webuser/helloworld/log && rm mongrel.pid -f
pkill -9 mongrel_rails -u root
cd /home/webuser/helloworld && /usr/bin/mongrel_rails start -e development -p 80 -d
useradd

「groupadd」「useradd」してみる。作ったユーザの authenticated_keys に適当な公開鍵をセット。
それはそれで ssh接続可能になる。一度ここまでくれば、EC2コンソールで作るキーペアじゃなくても大丈夫と言うことだ。

shutdown

そして「/sbin/shutdown -h now」暫くするとEC2コンソールのインスタンス状態も terminated になる。もう復活は出来ない。