Chapter 5. Configuration Management

Automation is key to a reproducible, failure-tolerant infrastructure. Cloud administrators should aim to automate all steps of building their infrastructure and be able to re-provision everything with a single click. This is possible through a combination of configuration management, monitoring, and provisioning tools. To get started in creating appliances that will be automatically configured and provisioned, three tools stand out in the arsenal: Veewee, Packer, and Vagrant.

Note

Veewee is being replaced by Packer. There is some effort to create a CloudStack builder for Packer.

Vagrant is a tool to create lightweight, portable, and reproducible development environments. Specifically, it allows you to use configuration management tools to configure a virtual machine locally (via VirtualBox) and then deploy it in the cloud via Vagrant providers. Recipe 5.4 gives you an introduction to this development tool.

A new kid on the block in configuration management and orchestration is Ansible. Ansible is based on SSH communications with the instances and a no-server setup. It is push based at the core. It is easy to install and get started. Of course, just like Puppet, Salt, and Chef, it can be used in conjunction with Vagrant. Ansible (Recipe 5.6) has some great documentation, so we will go quickly through the installation process and dive straight into some key concepts and a basic provisioning using Vagrant.

5.1. Installing Veewee

Problem

You need to build ...

Get 60 Recipes for Apache CloudStack now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.