The Puppet community and tools grew substantially in 2012. The mailing list and IRC channel memberships doubled, PuppetCamps increased from around 3 to 15, and PuppetConf had over 750 attendees. Puppet 3.0 was released with improved performance, Ruby 1.9 support, and data bindings. Hiera 1.x provided key-value configuration data storage. PuppetDB 1.x became the new store of Puppet-generated data. Puppet Enterprise 2.x offered a pre-configured complete stack including Puppet, MCollective, Hiera, and the Enterprise Console.
Scanning the Internet for External Cloud Exposures via SSL Certs
PuppetCamp SEA @ Blk 71 - Puppet: The Year That Was
1. Puppet Camp SE Asia - Dec 2012
The Year That Was
Nigel Kersten, CTO/Product
nigel@puppetlabs.com, @nigelkersten, IRC: nigelk
Monday, December 3, 12
2. Community Growth
metric 2011 2012
Mailing List members ~ 600 ~ 1200
List messages/month ~ 600 ~ 1200
IRC channel members ~ 400 ~ 800
Puppet forks/watchers 200 forks, 425 forks,
on GitHub 400 watchers 1000 watchers
Forge Modules 50 modules over 650 modules
PuppetCamps ~3 ~ 15
Monday, December 3, 12
3. PuppetConf 2012 - San Francisco
• Over 750 attendees, 75 sessions, 71 speakers
Monday, December 3, 12
4. Puppet Certification Launched
• Validate your Puppet knowledge
• Puppet Professional
• Puppet Developer
• http://puppetlabs.com/services/certification
Monday, December 3, 12
5. The Year That Was - Changes at Puppet Labs
• Parallel Value Streams
– Puppet Enterprise, Open Source/Platform, Forge
– Product, Design and Engineering
• New Office in Portland
• New Office in London
• New Community Manager - Dawn Foster
– Metrics Geek: http://puppetlabs.com/community/metrics/
– dawn@puppetlabs.com
– @geekygirldawn
– IRC: DawnFoster
Monday, December 3, 12
6. Semantic Versioning
• SemVer commitment for all products
– http://semver.org
• For version “x.y.z”
– x: Major
• Compatibility-breaking changes
– y: Minor
• New, backwards-compatible features
– z: Patch
• Bug fixes, no other behavioral/functional changes
Monday, December 3, 12
7. Puppet 3.0.x
• Improved performance
• Reduced memory footprint
• Dynamic variable scope removed
– Simple: Local -> Inherited -> Node -> Global
• ENC authoritative over agent environment (#3910)
• pluginsync
• Data bindings for class parameters
Monday, December 3, 12
8. Puppet 3.0.x
• Ruby 1.9.3 support added
• Ruby 1.8.5 support removed
• Centos/RHEL 5 users stuck on Ruby 1.8.5?
– Use Puppet Labs Ruby 1.8.7 packages
Monday, December 3, 12
9. Puppet 3.0.x
• Lots of changes
• Awesome new Reference Manual
– http://docs.puppetlabs.com/puppet/3/reference/
– Read the release notes and upgrade guide!
Monday, December 3, 12
10. Hiera 1.x
• Key/Value data store for configuration data
• Keeps site-specific data out of manifests
• Avoids repetition
• Configurable hierarchy based on Fact values
• Automatic data binding source for Puppet 3.0
Monday, December 3, 12
14. MCollective 2.x
• Direct Addressing
• Discovery Plugins
• Stability and Security
• Chained command piping
$ mco rpc package status package=mcollective -j
| jgrep "data.properties.ensure=2.0.0-6.el6"
| mco rpc puppetd runonce
Monday, December 3, 12
15. PuppetDB 1.x
• Source of truth for Puppet-generated data
• 100% compatible storeconfigs replacement
• 100% compatible inventory service replacement
• Stores entire catalog and all the facts
• Vastly increased performance
• Written in Clojure, runs on the JVM
• Heavily Instrumented
Monday, December 3, 12