Servermanagement with puppet – Part 1

The Environment:

puppetmaster: The puppetmaster
pc1: The first testclient
pc2: The second testclient

Domain: domain.local

Note: I used Ubuntu 9.04 in all servers.

Puppetmaster installation

aptitude install puppetmaster

Activate fileserver for the local network (”/etc/puppet/fileserver.conf”):

path /etc/puppet/files
allow *.domain.local

path /etc/puppet/files
allow *.domain.local

Note:You can allow a subnet, too. (”allow”).

Edit / Create the site file ”/etc/puppet/manifests/site.pp”:

This is puppets main configuration file. To test the configuration, we want to copy a file from the puppetmaster to the clients.

# site.pp

class filetest {
   file { '/etc/testfile':
      source => "puppet://puppetmaster.domain.local/files/etc/testfile"

node default {
   include filetest

Now create the testfile and the directories:

mkdir -p /etc/puppet/files/etc
vim /etc/puppet/files/etc/testfile

Choose a content for this file “Hello World” for example.

/etc/init.d/puppetmaster restart

Client Installation

aptitude install puppet

Connect the puppet client to the server

Add the following content to the puppet configuration file /etc/puppet/puppet.conf to connect the client to the server.

/etc/init.d/puppet restart

On the puppetmaster:

puppetca --list
puppetca --sign pc1.domain.local

A restart of puppet is the fastet way to test the configuration:

/etc/init.d/puppet restart

Now you should see the file /etc/testfile on each client.

In the next part of this howto, we will use some modules with puppet and create an example configuration for pratical use.


An introduction to using Puppet Teil 1
An introduction to using Puppet Teil 2

This Post Has 2 Comments

  1. Cool post, just subscribed.

Schreibe einen Kommentar

eMail-Benachrichtigung bei weiteren Kommentaren.
Auch möglich: Abo ohne Kommentar.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.