OpenSource For You

Puppet: The Popular Choice for IT Automation

Puppet is used to configure UNIX-like computer systems as well as Windows systems. It uses its own declarativ­e language or a domain specific language. Let’s get to know this tool a bit better.


Puppet is an IT configurat­ion management tool and key software in the IT automation arena. In Puppet, you can define your infrastruc­ture configurat­ions and applicatio­n configurat­ions. It gives you good visibility of what has gone wrong and, by reporting all tasks, will help you to record all the changes. By using Puppet, systems administra­tors can reduce the time spent on repetitive tasks, ensuring consistent configurat­ion across their infrastruc­ture.

Puppet is an open source tool developed by Puppet Labs. It can be used on Linux (most flavours), Solaris, AIX and Windows platforms.

Puppet comes in two versions—the open source community version and the enterprise paid-for version. Even on a paid version, you get a one-month trial with a learning VM from Puppet Labs.

Before installing Puppet, let’s compare it with another similar tool called Chef on the affordabil­ity parameter.

1. Chef uses Ruby, which is a difficult language to learn for beginners, while Puppet uses DSL (domain specific language), which is optimised for the task of describing resources.

2. Puppet has a larger installed base, as compared to Chef.

3. Puppet has a large developer community.

4. It supports more platforms than Chef.

5. Puppet is declarativ­e while Chef is not.

Puppet being a declarativ­e language means that you are writing the code, and you decide what the status of your machine should be after running the code and what not to do. The program will decide what to do to achieve the target state of the server.

We will now discover how to install Puppet and use it. For testing purposes, you can either download the learning VM from the Puppet Labs site, or you can download Puppet and install it on a machine.

Prerequisi­tes for installing Puppet

1. Ensure the server and client names are fully resolvable.

2. Configure the NTP service and ensure that it is running.

3. Download the Puppet package (wget puppetlabs/puppet).

Install the Puppet package (create a repo with the folder and run yum install puppet).

Install Apache (yum install httpd) using the following command: 4. 5.

#Install puppetmast­er-passenger 6.

Install the package passenger (yum install puppetmast­erpassenge­r).

Start Puppet (service puppetserv­er start).

Make Puppet start when the server boots (chkconfig on puppetserv­er), or download the learning VM from Puppet Labs.

Install the Puppet agent on all client servers.

Puppet uses SSL certificat­es to authentica­te communicat­ion between master and agent nodes. The Puppet




 ??  ??

Newspapers in English

Newspapers from India