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

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

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

$ 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がインストールされます。

$ 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