DevOps Zone is brought to you in partnership with:

Matthew is a Linux Consultant and Systems Administrator specialising in removing human error from configuration and deployment through the use of automation. He has supported systems of all sizes, from small businesses to home entertainment and major cloud providers. Matthew is a DZone MVB and is not an employee of DZone and has posted 9 posts at DZone. You can read more from them at their website. View Full User Profile

Automated Build Systems with Puppet & Cobbler

05.02.2012
| 10716 views |
  • submit to reddit

OK, so I’m not the first to blog about this, however I’m using Cobbler and Puppet to automate the creation of VMs on my laptop for testing/staging purposes so I thought I’d blog about it here.

The aim is to use Cobbler to setup the base operating system and install puppet, then let Puppet take over and install and configure the rest of the system.

There’s a few things we need to do:

  1. Install a server to act as the “master” server
  2. Install Cobbler
  3. Install Puppet

Although I usually use Debian or Ubuntu, Cobbler works best on CentOS and that’s what I use during my day job, so we’ll be installing CentOS as the base operating system on the master server.

Download the version of CentOS you want to use (although it’s worth digging out the “netinstall” image if you don’t want to download five or six isos!) and install an absolute minimal system – disable everything when it asks you which packages to install – the less clutter the better!

Enable the EPEL repository (download the RPM from http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm then install it using ‘rpm -Uvh epel-release-5-3.noarch.rpm’) and install cobbler with a simple

yum install cobbler cobbler-web puppet puppet-server


This will install not only cobbler but also the web interface – the web interface is very useful for adding systems etc to cobbler.

Before proceeding with the configuration of cobbler and puppet, make sure you also install “yum-utils” and “cman”.

I know that this is cheating, but follow the installation instructions found at https://fedorahosted.org/cobbler/wiki/UsingCobblerImport and https://fedorahosted.org/cobbler/wiki/CobblerWebInterface and then come back here to continue setting up the system.

Once your master cobbler server is set up, test it by building a basic system via PXE.  Once you are happy that works, move on to the next item – configuring Puppet.

Published at DZone with permission of Matthew Macdonald-wallace, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)