vagrant-omnibusでEC2インスタンスにChef Soloをインストール

Posted by joeartsea on 2013-07-24

Vagrantのvagrant-omnibusプラグインを使うとVagrantで作成するEC2インスタンスに対して、vagrant upやvagrant provision時にVagrantfileで指定したバージョンのChef Soloをインストールしてくれます。

まずは以下でvagrant-awsとvagrant-omnibusプラグインをインストール。

1
2
3
4
5
$ vagrant plugin install vagrant-aws
$ vagrant plugin install vagrant-omnibus
$ vagrant plugin list
vagrant-aws (0.2.2)
vagrant-omnibus (1.1.0)

次にVagrantfileを以下のように設定。

これでvagrant upなりvagrant provisionするとリモートのEC2インスタンスにChef Soloがインストールされます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ vagrant provision
[default] Rsyncing folder: /Users/kojo/Documents/workspace/aws-dummy/ => /vagrant
[default] Installing Chef 11.6.0 Omnibus package...
$ vagrant ssh
Last login: Tue Jul 23 17:36:00 2013 from xxx
__| __|_ )
_| ( / Amazon Linux AMI
___|___|___|
https://aws.amazon.com/amazon-linux-ami/2013.03-release-notes/
There are 6 security update(s) out of 11 total update(s) available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-10-132-98-51 ~]$ knife -v
Chef: 11.6.0