Puppet est un outil de gestion de configurations qui permet d'automatiser des tâches répétitives, déployer des applications et gérer des infrastructures informatiques, qu'elles soient homogènes ou hétérogènes. Il s'adresse particulièrement aux équipes restreintes ayant plusieurs systèmes à administrer et souhaitant éviter le gaspillage de temps lié aux tâches manuelles. Puppet fonctionne via des modules, est compatible avec divers systèmes d'exploitation, et est soutenu par des outils additionnels comme PuppetDB, Hiera, et MCollective.