Our Puppet Story – Patterns and Learnings

von Martin Schütte (DECK36)

In the past years it was our mission to manage development, testing and production environments for web projects with agile multi-team setups. Systems were often rather complex, with dozens of services involved. The infrastructure requirements changed frequently and as agile as the rest of project. And of course changes had to be tested and deployed continuously in a controlled and reproducible manner. A mission impossible without systematic configuration management and even with such a great tool like Puppet a continuous challenge.

In this talk I will present our collection of useful tools, learnings and design patterns for Puppet. We will potentially come across topics like Vagrant, VeeWee, EC2, Docker, ENC, facter.d, git magic, Hiera, monitoring, autoregistration, rspec testing, MCollective, Puppet roles and profiles. This talk will not reinvent the wheel, but present some techniques that made us much more productive in our daily work and will hopefully help you in the future.

Über den Autor Martin Schütte:

Martin Schütte is working as a system automation engineer focussing on web technologies. He is a contributor to different open source software projects, most importantly the NetBSD syslog daemon, and is the maintainer of the PHP PEAR Payment_DTA package, the crm114 plugin for SpamAssassin, and the IPv6 plugin for Snort IDS. He has talked about these projects on several occasions at EuroBSDCon, Chemnitzer Linuxtage, Brandenburger Linux-Infotag, and WPCamp Berlin.
Martin is now working at DECK36 in Hamburg where he is consultant and engineer in the fields of automation and continuous integration.