Andrew Parker                             @aparker42                            IRC: zaphod42                         andy...
Who am I?Friday, February 8, 13
State of the PuppetFriday, February 8, 13
Puppet Labs: by the numbers                                Jan 2012    Jan 2013           Employees            55         ...
Who uses Puppet?Friday, February 8, 13
Strong Community (Jan 2013)                  Forum               Members   Messages                  puppet-users list   5...
How can you take part in the     Puppet Community?     • Help with Documentation     • Ask/Answer questions        • http:...
Puppet?Friday, February 8, 13
DIY System ManagementFriday, February 8, 13
System Management: The Puppet     WayFriday, February 8, 13
Defining a Desired StateFriday, February 8, 13
Maintaining Desired State     • Provision a Node     • Describe how it should look     • Let Puppet manage itFriday, Febru...
Puppet                         Enterprise?Friday, February 8, 13
Puppet EnterpriseFriday, February 8, 13
GUI for Puppet                                 Time-based                                  display for                    ...
PE Live Management                           Choose nodes to                            clone to ensure                   ...
VM/Cloud ProvisioningFriday, February 8, 13
PE Compliance     • Establish baseline          of desired state     • Visualize changes          to desired baseline     ...
Recent Features     • Certificate Signing from the GUI     • Authentication with LDAP and oAuthFriday, February 8, 13
Resources for SuccessFriday, February 8, 13
Puppet HappeningsFriday, February 8, 13
Friday, February 8, 13
Puppet 3 Developments     •    Removal of dynamic scoping     •    Extensions loaded from gems     •    Full Ruby 1.9.3 su...
Scope          # dynamic scoping is gone          class parent {            $var = "from parent"            include includ...
Data Binding          class ntp($server = hiera(ntp_server,                 ‘time.apple.com’)) {             ...          ...
Performance     GainsFriday, February 8, 13
Friday, February 8, 13
Puppet 3 moving on from 2.7      2.7.0 Release 3.1.0 Release                         3.0.0 ReleaseFriday, February 8, 13
API Documentation!Friday, February 8, 13
Transparency in plansFriday, February 8, 13
Forge HappeningsFriday, February 8, 13
By the Numbers                             Jan 2012   Jan 2013           Modules           260        750+           Users...
What changed?     • Dedicated team     • Show download counts     • More visible documentationFriday, February 8, 13
MCollective                         HappeningsFriday, February 8, 13
Continuous Release     • Agents in packages, real packages     • MCO does it, so you can make them too     • Continuously ...
Usability     •    Better docs     •    More Complete applications     •    Out of the box usability     •    But still th...
PuppetDB                         HappeningsFriday, February 8, 13
Better Query, More Storage     • PuppetDB 1.1 released     • Enhanced Query API for          facts, subqueries, regular   ...
Training                              &                         CertificationFriday, February 8, 13
Training by CountryFriday, February 8, 13
Puppet Education:     Training and Certification TrackFriday, February 8, 13
Questions?Friday, February 8, 13
Thank You!Friday, February 8, 13
Upcoming SlideShare
Loading in …5
×

State of Puppet

1,142 views

Published on

Andy Parker's "State of Puppet" presentation from Puppet Camp Stockholm.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

State of Puppet

  1. 1. Andrew Parker @aparker42 IRC: zaphod42 andy@puppetlabs.comFriday, February 8, 13
  2. 2. Who am I?Friday, February 8, 13
  3. 3. State of the PuppetFriday, February 8, 13
  4. 4. Puppet Labs: by the numbers Jan 2012 Jan 2013 Employees 55 110 Customer Countries 29 42 836 m2 2,232 m2 Office Space 9,000 ft2 25,000 ft2Friday, February 8, 13
  5. 5. Who uses Puppet?Friday, February 8, 13
  6. 6. Strong Community (Jan 2013) Forum Members Messages puppet-users list 5255 1029 puppet-dev list 952 127 ask.puppetlabs.com 205 383 #puppet 938 Redmine 3839 Repository Forks Watchers Puppet 466 1145 MCollective 149 103Friday, February 8, 13
  7. 7. How can you take part in the Puppet Community? • Help with Documentation • Ask/Answer questions • http://ask.puppetlabs.com • mailing lists • IRC • Help with bug triage • Contribute code • Contribute modules on the Forge • Visit https://puppetlabs.com/community to learn moreFriday, February 8, 13
  8. 8. Puppet?Friday, February 8, 13
  9. 9. DIY System ManagementFriday, February 8, 13
  10. 10. System Management: The Puppet WayFriday, February 8, 13
  11. 11. Defining a Desired StateFriday, February 8, 13
  12. 12. Maintaining Desired State • Provision a Node • Describe how it should look • Let Puppet manage itFriday, February 8, 13
  13. 13. Puppet Enterprise?Friday, February 8, 13
  14. 14. Puppet EnterpriseFriday, February 8, 13
  15. 15. GUI for Puppet Time-based display for insight into rate of change High level status for nodes Detailed node status to pinpoint specific issuesFriday, February 8, 13
  16. 16. PE Live Management Choose nodes to clone to ensure consistency Browse for Preview the managed impact nodes in your before you infrastructure clone nodesFriday, February 8, 13
  17. 17. VM/Cloud ProvisioningFriday, February 8, 13
  18. 18. PE Compliance • Establish baseline of desired state • Visualize changes to desired baseline • Accept or reject changes to baselineFriday, February 8, 13
  19. 19. Recent Features • Certificate Signing from the GUI • Authentication with LDAP and oAuthFriday, February 8, 13
  20. 20. Resources for SuccessFriday, February 8, 13
  21. 21. Puppet HappeningsFriday, February 8, 13
  22. 22. Friday, February 8, 13
  23. 23. Puppet 3 Developments • Removal of dynamic scoping • Extensions loaded from gems • Full Ruby 1.9.3 support • Pluginsync by default • Data Separation with data binding • Performance improvements • Better version numbers • More platform support • Code loading improvements • Even more documentationFriday, February 8, 13
  24. 24. Scope # dynamic scoping is gone class parent { $var = "from parent" include included } class included { notify { $var: } ## NOT GONNA WORK notify { $parent::var: } ## YUP }Friday, February 8, 13
  25. 25. Data Binding class ntp($server = hiera(ntp_server, ‘time.apple.com’)) { ... } # can be changed to class ntp($ntpserver = ‘time.apple.com’) { ... }Friday, February 8, 13
  26. 26. Performance GainsFriday, February 8, 13
  27. 27. Friday, February 8, 13
  28. 28. Puppet 3 moving on from 2.7 2.7.0 Release 3.1.0 Release 3.0.0 ReleaseFriday, February 8, 13
  29. 29. API Documentation!Friday, February 8, 13
  30. 30. Transparency in plansFriday, February 8, 13
  31. 31. Forge HappeningsFriday, February 8, 13
  32. 32. By the Numbers Jan 2012 Jan 2013 Modules 260 750+ Users 930 2000+ Daily Downloads 500 2200Friday, February 8, 13
  33. 33. What changed? • Dedicated team • Show download counts • More visible documentationFriday, February 8, 13
  34. 34. MCollective HappeningsFriday, February 8, 13
  35. 35. Continuous Release • Agents in packages, real packages • MCO does it, so you can make them too • Continuously built, continuously releasedFriday, February 8, 13
  36. 36. Usability • Better docs • More Complete applications • Out of the box usability • But still the framework it always was • Full integration into puppet rainingFriday, February 8, 13
  37. 37. PuppetDB HappeningsFriday, February 8, 13
  38. 38. Better Query, More Storage • PuppetDB 1.1 released • Enhanced Query API for facts, subqueries, regular expressions • Report Storage • Report Query in an experimental APIFriday, February 8, 13
  39. 39. Training & CertificationFriday, February 8, 13
  40. 40. Training by CountryFriday, February 8, 13
  41. 41. Puppet Education: Training and Certification TrackFriday, February 8, 13
  42. 42. Questions?Friday, February 8, 13
  43. 43. Thank You!Friday, February 8, 13

×