havana

Reference module to install OpenStack Havana with cubbystack

Joe Topjian

jtopjian

9,076 downloads

8,877 latest version

3.2 quality score

Version information

  • 0.2.0 (latest)
  • 0.1.0
released Mar 1st 2014

Start using this module

Documentation

jtopjian/havana — version 0.2.0 Mar 1st 2014

Havana Reference Module

This module is a reference implementation for the cubbystack OpenStack Module.

Table of Contents

  1. Introduction
  2. Setup
  1. Usage
  1. Limitations
  2. Credits

Introduction

This module is able to deploy a multi-node OpenStack environment out of the box. It currently supports two types of nodes:

  • Cloud Controller: Runs all services except for nova-compute
  • Compute Node: Runs nova-compute

In the future, this module will support more types as well as different variations on those types. Each type will probably be broken out into its own branch.

Setup

Requirements

This module has been tested with Ubuntu 12.04. Each node only requires one network interface, although support for three interfaces is included in the configuration.

Puppet 3.2. You must also have the future parser enabled.

Hiera 1.3.

The cubbystack module.

Usage

Module Installation

This module installs just like any other Puppet module. Make sure it is located in a correct modulepath directory such as /etc/puppet/modules.

Hiera Configuration

This modules includes an example Hiera configuration file and data source. If you'd like to use the examples provided, first copy the Hiera configuration:

$ sudo cp hiera/hiera.yaml /etc/
$ sudo cp hiera/hiera.yaml /etc/puppet/

Then copy the example data source:

$ sudo mkdir /etc/puppet/hieradata
$ sudo cp hiera/common.yaml /etc/puppet/hieradata/

Finally, review the common.yaml file and change any parameters that need modified to suit your environment.

Roles

Once the module is installed and Hiera is configured, the last step is to apply a role to a node. This module comes with two roles: a cloud controller and compute node:

node 'cloud.example.com' {
  include havana::roles::controller
}

node /c[0-9]+.example.com/ {
  include havana::roles::compute
}

Limitations

This module is a reference module. Its purpose is to show you can use cubbystack in a practical way. Therefore this module will not cover all different types of OpenStack environments.

Credits

This module is based off of Chris Hoges's excellent Puppet work.