The Environment:
Hosts:
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“):
[files] path /etc/puppet/files allow *.domain.local [plugins] path /etc/puppet/files allow *.domain.local
Note:You can allow a subnet, too. (“allow 192.168.0.0/24“).
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.
[puppetd] server=puppetmaster.domain.local
/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.
Links:
An introduction to using Puppet Teil 1
An introduction to using Puppet Teil 2
myndmachine43
30 Juni 2009Cool post, just subscribed.
Pingback: links for 2010-08-23 | blog/shl@INTERDOSE