ReleaseEngineering/Puppet/Client Deployment

From MozillaWiki
Jump to navigation Jump to search

Puppet: Usage | Server Setup | Client Setup

This document describes how to install the Puppet client on the CentOS 5.0 reference platform.

Install EPEL

As root,

rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm

Move the JDK

To make the Puppet manifests a bit easier to manage we need to move the JDK to be in the same format as the other tools dirs (/tools/$name-$version):

# as root
cd /tools
mv jdk1.5.0_10 jdk-1.5.0_10
rm -f jdk
ln -s jdk-1.5.0_10 jdk

Mount the file share

Mount the puppet-files directory by adding an entry to fstab:

10.2.71.136:/export/buildlogs/puppet-files /N   nfs	ro	0 0

And then run,

mkdir /N
mount -a

to mount it.

Install Puppet

yum install ruby facter puppet ruby-shadow augeas-libs ruby-augeas

Now, we need to run puppet once and sign its cert on the puppetmaster

# On the client
puppetd --test --server $hostname.build.mozilla.org

You should get a message like "notice: Set to run 'one time'; exiting with no certificate". Sign it on the puppetmaster as follows:

# root @ staging-puppet or production-puppet
puppetca --sign $hostname.build.mozilla.org

Now, back on the slave we enable the service and start it

chkconfig --level 2345 puppet on
service puppet start