Vagrant + AWSメモ
vagrantのawsプラグインを今更ながら使う。Macになって、VagrantもWindowsから使ってた頃よりも使いやすくなったので。普段はVirtualBoxなんですが、台数を稼ぎたい時なんかには必要だろうなぁと。自宅で遊ぶのに台数が必要か? と言われると困るが。
- security group(ファイアウォール)を正しく設定しないとsshで入れない。Vagrantfileでもそれを指定する。
- Amazon Linuxの場合はユーザ名がec2-user、RHELはroot、Ubuntuはubuntuと選択するOSによって異なる。これもVagrantfileに書く。
- sshの秘密鍵(keypair)をVagrantfileと同じディレクトリに置くと、rsyncでVMの/vagrantに転送されてしまう。Vagrantfileは転送されない。
- だがvagrant rsyncでどちら方向にもコピーされてないような気が…
- Amazon Linuxのsudoersはrequirettyが有効なので/vagrantを作れなくてエラーになる。
- requirettyの行をコメントアウトしてvagrant provisionでOK
- 警告の消し方が分からない
警告というのは、これ。
WARNING: Nokogiri was built against LibXML version 2.8.0, but has dynamically loaded 2.9.1
[fog][WARNING] Unable to load the 'unf' gem. Your AWS strings may not be properly encoded.
ぐぐると情報は出てくるのだが、その通りやったつもりでも直らないんです。まあ別にいいけど。 今のところ、↓が最小構成か?
Vagrant.configure("2") do |config|
config.vm.box = "dummy"
config.vm.provider :aws do |aws, override|
aws.access_key_id='your key'
aws.secret_access_key='your secret'
aws.keypair_name='your kp'
aws.region='ap-northeast-1'
aws.ami='ami-0d13700c'
aws.instance_type='t1.micro'
aws.security_groups = [ 'your security group' ]
override.ssh.username='ec2-user'
override.ssh.private_key_path='/path/to/kp.pem'
end
end