AWSでインスタンスを生成して、ローカルからログインできるようにしてみる


仕事で必要になったのでクッキーを秒間170万枚焼きながらやってみる

インスタンス生成

  1. https://console.aws.amazon.com/ec2/v2/home にアクセス。ログインする
  2. デフォルトでは、アメリカにインスタンスが生成されるので、変更したければ、右上の「Oregon」をクリックして、好きなエリアを選択
  3. 左のメニューから「instances」を選択
  4. インスタンス管理画面に遷移するので、「Launch Instance」ボタンをクリック
  5. インスタンス生成画面に遷移するので「Classic Wizard」を選択
  6. Amazon Linux AMI」を選択
INSTANCE DETAILS
  1. インスタンス数は 1
  2. Instance Type は今のところデフォルトに。Availability Zone は今回は1台だし特に設定せず
  3. 更に色々聞かれるけど、今のところはデフォルトのままで進む
CREATE KEY PAIR
  1. キーペア名を設定する
  2. 「Create & Download your Key Pair」をクリックして、秘密鍵をダウンロードする(〜.pem)
CONFIGURE FIREWALL
  1. 今のところは、sshでアクセスしたいだけなのでデフォルトのまま
インスタンス起動
  1. 「Launch」をクリックしてインスタンス起動!!
  2. インスタンス管理画面に遷移して、一覧に今回生成したインスタンスが表示される
    • 暫く待つと、State が running になるのでそれまで待機

IPアドレスの払い出しと紐付け


このままだと、外部からアクセスする為のIPアドレスが無いので、Elastic IP にて、IPアドレスを払いだして、インスタンスに紐付けする必要がある

  1. 左のメニューから「Elastic IPs」を選択
  2. 「Allocate New Address」を選択
  3. IPアドレスを選択して、「Associatae Address」を選択

ローカル環境からアクセスしてみる

# **** は、ダウンロードした秘密鍵の名前
$ cp ~/Downloads/*****.pem ./.ssh/.
$ chmod 600 ~/.ssh/test1234.pem
# Amazon Linux AMI では、ec2-user なるアカウントが用意されている
$ ssh -i ~/.ssh/test1234.pem ec2-user@***.***.***.***


       __|  __|_  )
       _|  (     /   Amazon Linux AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-ami/2013.03-release-notes/
There are 10 security update(s) out of 21 total update(s) available
Run "sudo yum update" to apply all updates.

$ ruby -v
ruby 1.8.7 (2012-10-12 patchlevel 371) [x86_64-linux]

# 特にパスワードを聞かれずにsudoできる(らしい)
$ sudo ls


まずはここまで

終了手順

インスタンスの終了
  1. 左のメニューから「instances」を選択
  2. インスタンス管理画面に遷移するので、起動中のインスタンスを選択
  3. 「Actions」から「stop」か「terminate」を選択
IPアドレスの関連外しと破棄
  1. 左のメニューから「Elastic IPs」を選択
  2. 一覧から破棄したいIPアドレスを選択
  3. 「Disassociatae Address」をクリック
  4. 「Release Address」でIPアドレスを破棄


$0.00 : 実行中のインスタンスと関連付けられている Elastic IP アドレス
$0.005 : 実行中のインスタンスと関連付けられていない Elastic IP アドレス/時間あたり(比例計算)

宿題

  • Amazon Linux AMI の利点。centOS とかとの違いを調査
  • sudo できない dev アカウントを作る
  • セキュリティアップデートしてみる
  • ruby1.9 を入れてみる
  • コンソールからインスタンスを生成してみる
  • cloud watcher で監視してみる

そんな感じで