Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
puppet [Le 18/02/2013, 17:08] 83.193.67.94 [Validation] |
puppet [Le 13/11/2023, 01:40] (Version actuelle) Benjamin Loison [Puppet] Mise en majuscule d'un caractère le nécessitant |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>entreprise serveur Hardy Lucid Maverick}} | + | {{tag>Xenial entreprise serveur}} |
---- | ---- | ||
====== Puppet ====== | ====== Puppet ====== | ||
- | ===== Présentation ===== | + | Puppet est un outil de gestion de la configuration de serveurs, il permet le télédéploiement de configuration sur un ensemble de serveurs en quelques minutes. L'intérêt de cette solution open source réside dans son support multi-plateformes (basé sur Ruby), sa sécurité (TLS), son développement actif et sa relative simplicité à mettre en œuvre. |
- | Puppet est un outil de gestion de la configuration de serveurs, il permet le télédéploiement de configuration sur un ensemble de serveurs en quelques minutes. L'intérêt de cette solution open source réside dans son support multi-plateformes (basé sur Ruby), sa sécurité (ssl), son développement actif et sa relative simplicité à mettre en oeuvre. | + | |
\\ | \\ | ||
{{:administration:puppet.png|}} | {{:administration:puppet.png|}} | ||
- | <note tip>Il existe une version Legacy (0.25.x) qui comporte de nombreux bugs et manque de fonctionnalités l'article ci-dessous ne traite que de la version stable 2.6.x</note> | + | Systèmes supportés : |
+ | Puppet fonctionne sur la plupart des systèmes Unix et sur Windows. Voir [[http://www.puppetlabs.com/puppet/requirements/|ici]] pour plus de détails. | ||
- | ===== Prérequis ===== | + | |
+ | ===== Pré-requis ===== | ||
+ | * Disposer des [[:sudo|droits d'administration]]. | ||
+ | * Disposer d'une connexion à Internet configurée et activée. | ||
* Disposez de plusieurs serveurs à administrer sans quoi le gain de temps et d'énergie ne sera pas effectif. | * Disposez de plusieurs serveurs à administrer sans quoi le gain de temps et d'énergie ne sera pas effectif. | ||
* Notions en administration système. | * Notions en administration système. | ||
- | ===== Systèmes supportés ===== | ||
- | Puppet fonctionne sur la plupart des systèmes Uni* et dans une moindre mesure Windows. voir [[http://www.puppetlabs.com/puppet/requirements/|ici]] pour plus de détails. | ||
- | <note tip>Windows est officiellement supporté depuis la version 2.7.x</note> | ||
===== Installation ===== | ===== Installation ===== | ||
- | Puppet est présent dans les dépôts, installez les paquets puppet, facter et puppetmaster (pour le serveur maître) : | + | Puppet est présent dans les [[:dépôts]], installez les paquets puppet, facter et puppetmaster (pour le serveur maître) : |
- | * Sur le client | + | * Sur le client : <code>apt-get install puppet</code> |
- | <code>apt-get install puppet</code> | + | * Sur le master : <code>apt-get install puppetmaster</code> |
- | * Sur le master | + | |
- | <code>apt-get install puppetmaster</code> | + | |
Cependant si vous souhaitez une version différente rendez-vous sur la page de téléchargement [[http://www.puppetlabs.com/misc/download-options/|officielle]] pour obtenir un package .tar.gz. Autre solution installer puppet sous forme de [[http://puppetlabs.com/downloads/gems/|gem]] (le système de paquet ruby). Dans ce cas l'installation est tout aussi simple : | Cependant si vous souhaitez une version différente rendez-vous sur la page de téléchargement [[http://www.puppetlabs.com/misc/download-options/|officielle]] pour obtenir un package .tar.gz. Autre solution installer puppet sous forme de [[http://puppetlabs.com/downloads/gems/|gem]] (le système de paquet ruby). Dans ce cas l'installation est tout aussi simple : | ||
<code> | <code> | ||
Ligne 38: | Ligne 36: | ||
<note tip>Les fichiers de configuration sont donnés à titre d'exemple. Vous êtes libre d'indiquer d'autres paramètres.</note> | <note tip>Les fichiers de configuration sont donnés à titre d'exemple. Vous êtes libre d'indiquer d'autres paramètres.</note> | ||
- | On modifie le fichier /etc/puppet/puppet.conf : | + | On [[:tutoriel:comment_modifier_un_fichier|modifie le fichier]] **/etc/puppet/puppet.conf** : |
<file> | <file> | ||
[main] | [main] | ||
Ligne 59: | Ligne 57: | ||
</file> | </file> | ||
- | === Parefeu === | + | === Pare-feu === |
- | On modifie également notre parefeu afin de laisser passer les flux : | + | On modifie également notre pare-feu afin de laisser passer les flux : |
<code> | <code> | ||
iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -s ipdumaster --sport 8140 -d ipduclient -j ACCEPT | iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -s ipdumaster --sport 8140 -d ipduclient -j ACCEPT | ||
Ligne 69: | Ligne 67: | ||
=== Configuration de l'agent Puppet === | === Configuration de l'agent Puppet === | ||
- | /etc/puppet/puppet.conf | + | On [[:tutoriel:comment_modifier_un_fichier|modifie le fichier]] **/etc/puppet/puppet.conf** : |
<file> | <file> | ||
[main] | [main] | ||
Ligne 107: | Ligne 105: | ||
</file> | </file> | ||
- | === Parefeu === | + | === Pare-feu === |
- | Si vous disposez d'un parefeu actif il faut songer à ouvrir le port 8139 : | + | Si vous disposez d'un pare-feu actif il faut songer à ouvrir le port 8139 : |
<code> | <code> | ||
iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -s ipduclient --sport 8139 -d ipdumaster -j ACCEPT | iptables -A OUTPUT -p tcp -m state --state NEW,ESTABLISHED -s ipduclient --sport 8139 -d ipdumaster -j ACCEPT | ||
Ligne 141: | Ligne 139: | ||
===== Problèmes ===== | ===== Problèmes ===== | ||
==== Désactivez le déploiement automatique d'un client ==== | ==== Désactivez le déploiement automatique d'un client ==== | ||
- | Un client **puppetd** qui tourne en daemon à la fâcheuse tendance d'être configuré pour exécuter un //**puppetd --test**// à intervalles réguliers. Pour solutionner ce problème tout en gardant un daemon à l'écoute du **puppetrun** du master il faut lancer le process **puppetd** avec l'option **--no-client** soit : | + | Un client **puppetd** qui tourne en daemon à la fâcheuse tendance d'être configuré pour exécuter un //**puppetd --test**// à intervalles réguliers. Pour solutionner ce problème tout en gardant un daemon à l'écoute du **puppetrun** du master il faut lancer le process **puppetd** avec l'option **%%--%%no-client** soit : |
<code>puppetd --no-client</code> pour automatiser l'ensemble on pourra le rajouter dans le fichier /etc/init.d/puppet | <code>puppetd --no-client</code> pour automatiser l'ensemble on pourra le rajouter dans le fichier /etc/init.d/puppet | ||
Ligne 211: | Ligne 209: | ||
Pour supprimer cette application, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]]. Si vous avez choisi l'option des gems il vous suffira de faire : | Pour supprimer cette application, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]]. Si vous avez choisi l'option des gems il vous suffira de faire : | ||
<code>gem uninstall puppet | <code>gem uninstall puppet | ||
- | gem uninstall facter</code>. | + | gem uninstall facter</code> |
===== Liens ===== | ===== Liens ===== | ||
* **en** [[http://www.puppetlabs.com/|Site officiel]] | * **en** [[http://www.puppetlabs.com/|Site officiel]] | ||
* **en** [[http://docs.puppetlabs.com/|Documentation officielle]] | * **en** [[http://docs.puppetlabs.com/|Documentation officielle]] | ||
* [[http://puppetlabs.com/downloads/gems/|Dépôt de gems]] | * [[http://puppetlabs.com/downloads/gems/|Dépôt de gems]] | ||
- | * **fr** [[http://fr.wikipedia.org/wiki/Puppet_%28outil%29|Fiche sur Wikipédia]] | + | * **fr** [[wpfr>Puppet|Fiche sur Wikipédia]] |
---- | ---- | ||
//Contributeurs principaux : [[:utilisateurs:Herrleiche]].// | //Contributeurs principaux : [[:utilisateurs:Herrleiche]].// |