■要約
・Rightscaleが公開しているAMIを使用する。
・以下のコマンドを使う。
ec2-describe-images -x all --- 公開イメージの一覧を表示
ec2-add-keypair 鍵名 --- 鍵ファイル作成
ec2-describe-images --- インスタンスの状態を確認
ec2-run-instances イメージ番号 -k 鍵名 --- インスタンス起動
ec2-terminate-instances インスタンス番号 --- インスタンス終了
■前提条件
・AWSのアカウント作成が完了している。
・Amazon EC2 Command-Line Toolsの導入が完了している(ec2verコマンドが動く状態)。
・Access Key ID、Secret Access Keyの取得が完了している。
・X.509証明書(certificateおよびprivate key)の取得が完了している。
■CentOS 5のイメージファイルを探す
RightScaleが公開しているCentOS 5 base imageを使用します。必要最小限のパッケージのみインストールされているので、検証環境が必要な場合や自分で自由に環境を構築したい場合に最適です。
$ ec2-describe-images -x all | grep rightscale | less
5月24日現在の最新のCentOS 5のイメージは、rightscale_images/CentOS5_0V2_0_1.img.manifest.xml です。ec2-describe-imagesの実行結果から次のような行を探して確認します。
IMAGE ami-5c08ed35 rightscale_images/CentOS5_0V2_0_1.img.manifest.xml 411009282317 available public i386 machine
■ssh用の鍵ファイルを作成
ec2上のサーバにsshで接続するための鍵ファイルを作成します。鍵の名称は、ec2で動かすサーバのホスト名など、わかりやすい名前をつけます。
$ ec2-add-keypair servername | sed -e "1d" > id_servername
$ chmod 400 id_servername
・sed -e "1d"は、先頭の1行を削除します。
・chmodによるパーミッションは必ず行ってください。644など誰でも読み取りできる設定だとサーバ側のsshdでログインを拒絶されます。
■インスタンス起動
ec2-describe-imagesで確認したイメージ番号と、ecs-ad-keypairで指定した鍵の名称を指定してインスタンスを起動します。
$ ec2-run-instances ami-5c08ed35 -k servername
■ファイアウォールの設定変更
sshで接続するために、22/tcpを開きます。
$ ec2-authorize default -p 22
なお、ポートを指定せずに実行すると、0から65535までのすべてのポートが開放されます。
■インスタンスの起動確認
$ ec2-describe-images
RESERVATION r-4bfb3c22 181775919748 default
INSTANCE i-b82ae3d1 ami-5c08ed35 ec2-72-44-52-225.compute-1.amazonaws.com domU-12-31-38-00-24-31.compute-1.internal running lagavulin 0 m1.small 2008-05-24T12:46:45+0000 us-east-1a
■sshでの接続
$ ssh -i id_servername root@ec2-72-44-52-225.compute-1.amazonaws.com
■インスタンス終了
$ ec2-terminate-instances i-b82ae3d1


