Administration centralisée de machines avec Puppet

Puppet Types

Définition

Les types sont en fait les différents objects de configuration dans Puppet. Ce sont ces types qui au sein des fichiers de configuration vont permettre la génération de la configuration attendue pour un client donné.

Les types sont la base du langage de Puppet.

Files

Cet Object spécifie la configuration pour un fichier donné au sein du client. Il sera ainsi possible de spécifier ses droits d'accès ainsi que son contenu.

Packages

Cet Object permet de demander l'installation ou non d'un paquet, un programme provenant d'un dépôt d'applications.

Services

Celui-ci stipule le lancement ou non d'une application sur le client, dénommé ici service.

Exec

Il permet le lancement de lignes de commande sur la machine distante (le client).

Et bien d'autres ...

Tous les types doivent permettre d'effectuer toutes les actions et configurations possibles sur une machine Unix. Je n'ai détaillé que les plus importants mais des types comme Cron (lancement d'une commande régulièrement), user (création d'un utilisateur) ou mount (montage d'une ressource) sont par exemple disponibles.

Je vais vous donner plusieurs exemples de configurations utilisants ces types afin de mieux vous expliquer leur fonctionnement. Pour la liste complète des types, le site officiel Puppet est disponible : http://www.puppetlabs.com.