We're going to cook some OpenStack today, so get your ingredients ready:

To be honest, if you count the environment set up commands it's not one command but about five for the whole process. But after the environment set up you can repeat the process using the one setup command over and over again. This is pretty useful for environment specific testing, CI, etc.

Instead of using vagrant with VirtualBox you can of course use your favourite virtualisation solution for testing or use a bare metal setup. All you need is at least two running machines with Ubuntu 12.04 on them. Instead of vagrant up you would then use knife bootstrap with the single-controller and single-compute role.

So let's cook:

Checkout the Chef cookbooks and Vagrantfile

git clone https://www.github.com/cloudbau/openstack-chef-repo.git
librarian-chef update

Set up Chef server environment

Using hosted chef is the easiest way to get started, but you can of course use your own Chef server. The Vagrantfile uses 2GB per node at the moment. So be careful not to exceed your RAM if you increase the compute node count.

vi config.rb # Change the Chef server settings

Upload cookbooks to chef server

spiceweasel infrastructure.yml | sh


Now deploy Openstack!

vagrant up

Get a coffee, tea or whatever you like while it's cooking…

Use it

Open a browser window at to log in to your OpenStack dashboard. The default username and password is "admin" and "secrete". If you want to change that, have a look at the attributes of the keystone cookbook.

What's next

The community chef cookbooks are still under development and the version used here is a slightly modified so that it works with OpenStack Folsom. These changes will be merged back (pull requests are pending) to the community cookbooks and the cookbooks will certainly evolve and also cover OpenStack services like cinder and quantum.

Related Posts