VagrantでAWSのEC2インスタンスを作成する

概要
1. VagrantAWS用のプラグインをインストール
2. AWS用にダミーBoxファイルを追加する
3. Vagrantfileの作成
4. インスタンスを起動する

作業環境
OS: MacOS X 10.9.5
VirtualBox: 4.3.22
Vagrant: 1.7.2

1. VagrantAWS用のプラグインをインストール
vagrant-awsをインストールします。

$ vagrant plugin install vagrant-aws
Installing the 'vagrant-aws' plugin. This can take a few minutes... 
Installed the plugin 'vagrant-aws (0.6.0)'!

2. AWS用にダミーBoxファイルを追加する
Vagrantの仕組み上、Boxファイルを追加する必要があります。
今回はダミーのBoxファイルを追加します。

$ vagrant box add dummy https://github.com/mitchellh/vagrant-aws/raw/master/dummy.box

3. Vagrantfileの作成
Vagrantfileは以下のように記述します。

Vagrant.configure("2") do |config|
config.vm.box = "dummy"

  config.vm.provider :aws do |aws, override|
    aws.access_key_id = 'AWSのアクセスキー'
    aws.secret_access_key = 'AWSのシークレットキー' 
    aws.region = 'ap-northeast-1'
    aws.instance_type = 't2.micro'
    aws.ami = 'AMIのID'
    aws.security_groups = ['セキュリティグループ名']
    aws.keypair_name = 'AWSのキーペア名'
    aws.tags = {
        'Name' => 'タグ名' 
    }
    # aws.user_data = ''
    override.ssh.username = "ec2-user"
    override.ssh.private_key_path = '秘密鍵までのパス'
  end 
end

各パラメータの意味は次の通りです。
aws.access_key_id
AWSのアクセスキーを設定する
aws.secret_access_key
アクセスキーに対するSecret Access keyを指定する
aws.region
インスタンスを作成するリージョン(地域)を指定する
aws.instance_type
インスタンスタイプを指定
aws.ami
インスタンスのベースとするAMIのIDを指定する
aws.security_groups
適用するセキュリティグループを指定する
aws.keypair_name
インスタンスSSHログインするときに使用する Key Pairs の名称を指定する
aws.tags
インスタンスに付与するタグに関する指定を行う
aws.user_data
起動時に設定するユーザデータを指定する。
コマンドやスクリプトを実行することもできる
•override.ssh.username
vagrant ssh でログインするときのユーザ名を指定する
•override.ssh.privat_key_path
vagrant ssh 時に使用する秘密鍵を指定。予め取得しておく

4. インスタンスを起動する
provider=awsインスタンスを起動する。

$ vagrant up --provider=aws

以上になります。

参考:
Vagrant 1.1 で EC2 を vagrant up - naoyaのはてなダイアリー
Vagrant で AWS EC2 のインスタンスを使う | CUBE SUGAR STORAGE