WikiMiNET

La documentation technique et administrative

Outils pour utilisateurs

Outils du site


wiki:services:puppet

Puppet

Puppet est un service d'automatisation très efficace. Il se décompose en deux parties :

  1. L'agent puppet qui doit-être installé sur toutes les machines à gérer
  2. Le puppet master qui va pousser les modifications sur les agents.

Cette définition est simple mais inexacte car on ne dit jamais à puppet de faire des modifications on lui donne l'état final et il sait comment procéder pour y arriver (installation de packages etc …)

Puppet n'est plus utilisé en prod à MiNET car personne ne le maintenait. De plus, d'après les vieux, le projet Puppet bat de l'aile et d'autres solutions (comme Ansible par exemple) seraient plus adaptées à notre utilisation.

Installation de puppet

Ajout du depot et installation de l'agent:

install-puppet.sh
  export http_proxy=http://192.168.102.61:82
  wget http://apt.puppetlabs.com/puppetlabs-release-wheezy.deb
  dpkg -i puppetlabs-release-wheezy.deb
  apt-get update
  apt-get install puppet

Afin de faire démarrer puppet au démarrage de la machine, modifiez /etc/default/puppet comme ci-dessous

# Defaults for puppet - sourced by /etc/init.d/puppet
# Start puppet on boot?
START=yes

# Startup options
DAEMON_OPTS=""

Dans /etc/puppet/puppet.conf, ajoutez les lignes ci-dessous

[agent]
report=true
server=puppet.minet.net
listen=true

Créer le fichier /etc/puppet/auth.conf

# touch /etc/puppet/auth.conf

Puis redémarrez l'agent

/etc/init.d/puppet restart

Afin d'envoyer une requête vers puppetmaster (le serveur puppet), faîtes :

# puppet agent --test

Une erreur apparaît mais c'est normal, vous avez besoin d'accepter le certificat du client sur puppetmaster.

RDV sur la VM puppet (c'est un exemple avec ntp1, à adapter)

root@puppet:/etc/puppet# puppet cert list
"ntp1.minet.net" (SHA256) [...]
root@puppet:/etc/puppet# puppet cert sign ntp1.minet.net
Signed certificate request for ntp1.minet.net
Removing file Puppet::SSL::CertificateRequest [...]

Enfin Vérifiez que la VM sur laquelle vous avez configuré l'agent apparaît bien sur le dashboard : ​http://192.168.102.195:3000/

Trubble shooting

  • Un lien qui peut aider en cas de soucis de syntaxe
wiki/services/puppet.txt · Dernière modification: 2016/02/26 19:13 par thithib