Beginner's Thoughts on Making Puppet Modules - David Klann - PuppetCamp Chicago '12
On the Journey to PuppeteeringPuppet noob, but a seasoned sysadmin● UNIX internals developer (compiler, packaging, drivers)● Software project manager and sysadmin● Networking: ThickNet Ethernet Coax● Enterprise network design, manage, security● etc. ...
On the Journey to Config Automation● Why config management? – small operation – scripts and version control (mostly) just fine – what are the issues were trying to solve?
Why Puppet● Standardization● Community Support● Puppet Labs Apparent Commitment to Free Software and the Open Source model● Architecture
Bumps in the Road● Community Puppet – Puppet DSL: alien language (Rails déjà vu) – frequent Puppet releases caused breakage – packaging
Fixing Potholes● Puppet Enterprise – packaging: solved – update breakage: solved – DSL: not solved, but getting used to it
Intro to Puppet Modules● Whats to Like – consistent view – consistent interface – separation of data and logic
Intro to Puppet Modules● Whats to Despise – bugs – useless error messages – pe_accounts: huh?
Puppet Mastery● Goal: a series of modules to manage ISP services (NTP, SNMP, postfix, dovecot, RADIUS, etc.) – stand-alone modules? – how to integrate? e.g., /etc/sysconfig/iptables: stand-alone? as part of another module?