Home > Debian, Divers, Linux topics, Puppet, Ubuntu > Installation Puppet Client

Installation Puppet Client

Bookmark this on Hatena Bookmark
Hatena Bookmark - Installation Puppet Client
Share on Facebook
Post to Google Buzz
Bookmark this on Yahoo Bookmark
Bookmark this on Livedoor Clip
Share on FriendFeed
Installation Puppet ClientBlog de G. MOKOLOMBOKA

Pour tester ce qui suit, il est important de commencer par l’article sur installation de Puppet Server se trouvant ici

2. Installation de Puppet client sur differentes machines:

# Tester le hostname

puppet-client@hostname -f

# Résultat

puppet-client

# Modifier le FQN  dans le fichier /etc/hosts en tant que root

# Avant

127.0.0.1 localhost 127.0.0.1 puppet-client

# Après

127.0.0.1 puppet-client.localhost.loc puppet-client
localhost 127.0.0.1 puppet-client

# Saugarder le fichier.

# Tester à nouveau le hostname:

 puppet-client@hotsname -f 

# Résultat

puppet-client.localhost.loc

# Installer puppet Client

puppet-client@aptitude install puppet

# J’essaie de contacter le serveur Puppet

puppet-client@puppetd --test --waitforcert 15

# Résultat:

info: Creating a new certificate request for puppet-client.localhost.loc
 info: Creating a new SSL key at /var/lib/puppet/ssl/private_keys
/puppet-client.localhost.loc.pem err:
Could not find server : getaddrinfo: Name or service not known err:
Could not request certificate: Certificate retrieval failed: Could not find server puppet

# La machine cliente (puppet-client)  n’a pas réussi à contacter le serveur,

# Je vais donc modifier le fichier  /etc/hosts et lui indiquer
l'adresse ip du serveur.

# Avant

127.0.0.1       puppet-client.localhost.loc puppet-client localhost
127.0.1.1       puppet-client
# The following lines are desirable for IPv6capable hosts ::1
localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0
ip6-mcastprefix ff02::1 ip6-allnodes ff02::2
ip6-allrouters ff02::3 ip6-allhosts

# Après

127.0.0.1       puppet-client.localhost.loc puppet-client localhost
127.0.1.1       puppet-client
192.168.0.114   puppet
# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

# Résultat:

peer certificate won’t be verified in this SSL session notice: Did not receive certificate

notice: Set to run one time’; exiting with no certificate

# Cela signifie que le certificat de puppet-client n’existe pas sur le serveur (puppet-master).

# Je vais le créer.

Création du certificat sur puppet-master

# Je liste les certificats qui existent sur le serveur

puppet-master@puppetca --list

# Résultat:

 puppet-client.localhost.loc 

# Cela veut dire que puppet-client n’a pas de certificat sur puppet-master

# Je liste tous les certificats du serveur

 puppetca --list --all

# Résultat:

puppet-client.localhost.loc
+ puppet-master.localhost.loc

# Ce qui signifie que seul puppet-master possède un certificat en local mais pas puppet-client

# Je crée le certificat de puppet-client depuis le serveur

puppet-master@puppetca --sign puppet-client.localhost.loc

# Résultat:

puppet-client.localhost.loc notice: Signed certificate request for
puppet-client.localhost.loc notice:
Removing file Puppet::SSL::CertificateRequest puppet-client.localhost.loc at
'/var/lib/puppet/ssl/ca/requests/puppet-client.localhost.loc.pem'

# J’affiche tous les certificats

 puppetca --list --all

# Resultat :

puppet-client.localhost.loc  puppet-master.localhost.loc

# Le certificat est bien créé Il faut refaire test depuis puppet-cleint, en essayant de recontacter le serveur:

puppet-client@puppetd --test --waitforcert 15

# Résultat :

warning: peer certificate wont be verified in this SSL session notice:Got signed certificate
info: Retrieving plugins err: /File[/var/lib/puppet/lib]: Failed to generate
 additional resources
during transaction: Cannot access mount[plugins] err: /File[/var/lib/puppet/lib]:
 Failed to retrieve current state of resource: Cannot access mount[plugins]Could not describe /plugins: Cannot access mount[plugins]
info: No classes to store info: Caching catalog at /var/lib/puppet/state/localconfig.yaml
notice: Starting catalog  run notice: //File[/tmp/testfile]/ensure: createdinfo: Creating state file
/var/lib/puppet/state/state.yaml notice: Finished catalog run in 0.08 seconds

# Je tape la commande suivante

ls -l /tmp

# Le fichier existe sur puppet-client

# There is also a problem of plugin.

# To fixe this, go in /etc/puppet/puppet.conf

#Avant

 [main] 
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
pluginsync=true
[puppetmasterd]
templatedir=/var/lib/puppet/templates

# Après

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter pluginsync=false
[puppetmasterd]
templatedir=/var/lib/puppet/templates

# Je refais le test

puppetd --test

# Résultat:

info: No classes to store info: Caching catalog at /var/lib/puppet/state/localconfig.yaml notice:
Starting catalog run notice: Finished catalog run in 0.08 seconds

# Je vais sur le serveur et je change le fichier manifest par défaut site.pp pour créer un autre fichier

# Avant

 file { "/tmp/testfile": ensure => file }

# Après

file { "/tmp/testfile": ensure => file }
file { "/tmp/testnew": ensure => file }

#Sur puppet-client je lance la commande de test

# Test

puppet-client@puppetd --test

# Résultat:

 info: No classes to store info: Caching catalog at /var/lib/puppet/state/localconfig.yaml
notice: Starting catalog run notice: //File[/tmp/testnew]/ensure: created
 notice: Finished catalog run in 0.17 seconds

# Le nouveau fichier est bien créé sur puppet-client

Toutes les autres machines clientes sont installées de la même façon.

Vous trouverez des documentations ici:

Documentation de puppe:

http://docs.reductivelabs.com/

puppet dashbord sur lequel je vous présenterais dans un prochaine article:

http://www.puppetlabs.com/blog/a-tour-of-puppet-dashboard-0-1-0/

Le forum des utilisateurs de puppet:

http://groups.google.com/group/puppet-users?hl=en

Share and Enjoy
Tinyurl for this post
  1. No comments yet.

IMPORTANT! To be able to proceed, you need to solve the following simple math (so we know that you are a human) :-)

What is 10 + 3 ?
Please leave these two fields as-is: