Puppet

Logo Puppet

Qu’est-ce que Puppet ?

Puppet est un outil de gestion de configuration Open Source créé en 2005. Il utilise un langage déclaratif propre (DSL) pour décrire l’état souhaité des systèmes et garantir leur conformité.

Site officiel Puppet

Architecture

Modèle client-serveur

  • Puppet Server : compile les catalogues
  • Puppet Agent : applique les configurations
  • PuppetDB : stocke les facts et rapports
  • Facter : collecte les informations système

Langage déclaratif

class webserver {
  package { 'nginx':
    ensure => installed,
  }
  
  service { 'nginx':
    ensure  => running,
    enable  => true,
    require => Package['nginx'],
  }
  
  file { '/etc/nginx/nginx.conf':
    ensure  => file,
    content => template('webserver/nginx.conf.erb'),
    notify  => Service['nginx'],
  }
}

Fonctionnalités

  • Idempotence : exécutions répétables
  • Rapports : conformité et dérives
  • Hiera : séparation code/données
  • Forge : modules communautaires

Comparaison entre Puppet et Ansible

Aspect Puppet Ansible
Agent Oui Non
Langage DSL Puppet YAML
Mode Pull Push
Conformité continue Oui Manuel

L’expertise Worteks

Worteks gère des infrastructures Puppet :

  • Déploiement : Puppet Server et agents
  • Modules : développement sur mesure
  • Migration : vers Ansible si pertinent
  • Audit : conformité et reporting

Contactez nos experts