I have a fairly large network, and I need to use some sort of configuration management tool to manage it. I've decided that Puppet Open Source meets my needs. How do I install it?
Ubuntu – How to install a puppetmaster
puppetserver
Related Solutions
First off, bcfg2, chef, and cfengine are all in the universe repository, which is a community supported repository of software. It is better explained here:
http://www.ubuntu.com/project/about-ubuntu/components
The most relevant portion of that page here is
"Popular or well supported pieces of software will move from universe into main if they are backed by maintainers willing to meet the standards set by the Ubuntu team."
When you're talking about server related software, main is really a giant commitment.
At some point, one has to think about the burden that the maintenance of all the packages in main puts on Ubuntu as a project. LTS server releases in particular are supported with security updates for 5 years. So when the MIR team and greater Ubuntu development community looks at whether something should go into main, one of the first things they look at is whether there isn't already something with feature parity in main.
Many times, Ubuntu will still go forward with adopting the package for main. MySQL and PostgreSQL are both in main and at this point have very similar functions and features. This is in large part because there are massive groups of Ubuntu users who use either one, and plenty of people out there maintaining the software.
In the case of configuration management solutions, cfengine, puppet, and chef, all seem to offer a high degree of overlap in functionality, and zero compatibility. So there's an opportunity to make an opinionated decision for users who haven't chosen one. In this case, those involved with that decision up to now have chosen Puppet for a number of reasons which have been discussed at Ubuntu Developer Summits (UDS) in detail many times.
This choice is always up for discussion. Chef, Cfengine, anything else, just need to have somebody willing to make a compelling case that it will serve a large number of Ubuntu users to include the software in main.
I would encourage you then to read through the requirements here:
https://wiki.ubuntu.com/UbuntuMainInclusionRequirements
And file a MIR request if you think it will pass, using this process:
https://wiki.ubuntu.com/MainInclusionProcess
If you're not getting much traction on your MIR, file a blueprint attached to an upcoming UDS (UDS-Oneiric is coming up in May in Budapest). You don't have to fly all the way to Budapest to join the discussion (note that sponsorship is available on a limited basis), you can attend virtually. Either way, I think its clear that the Ubuntu development community wants to hear from you and any other users who feel that Ubuntu can be improved.
Cfengine might be an alternative. You could also check this list of alternatives to puppet.
Best Answer
Do note: This should work (and has been tested on) Ubuntu 10.04, 12.04 and 14.04.
Boot the server, and then change the hostname to
To do that, run
sudoedit /etc/hosts
and then change the $HOSTNAME (not localhost) entry topuppet
.Then, run
sudoedit /etc/hostname
and delete the $HOSTNAME line, and then addpuppet
to it.Now, reboot the server.
To properly set up puppet, you need to be the root user. So become root by running:
sudo -i
and then entering your password when asked.
Now, we're going to use the official Puppet repo, since it has newer versions of most of it.
We will download the latest puppet from http://apt.puppetlabs.com/, the command below will download the version designed for your version of Ubuntu, if the link fails, then your version of Ubuntu is not supported.
Now we have the puppet repository added.
Now we have updated our sources.list, so apt-get knows where to find the puppetmaster package.
Now, you're ready go and pull the strings!