Successfully reported this slideshow.

Portable infrastructure with puppet

12,303 views

Published on

My PuppetCamp Europe 2010 Keynote presentation, discussing progress on Puppet and launching the Puppet Forge

  • Be the first to comment

Portable infrastructure with puppet

  1. 1. Portable Infrastructu re with Puppet Luke Kanies Founder of Puppet project Founder and CEO of Puppet Labs
  2. 2. The state of Puppet
  3. 3. Puppet is stable
  4. 4. Puppet is changing quickly • Still plenty of features to add • Every day we learn, and every lesson brings a refactoring • Maturity brings its own design requirements • Connectiveness is a larger priority
  5. 5. Puppet is Pervasive Web Entertainment Technology Financial Defense
  6. 6. I promised some things last year
  7. 7. Puppet Camp 2009 Promises •1.0 •WebGUI •Modules
  8. 8. Rowlf is imminent
  9. 9. 0.2
  10. 10. 0 0.2
  11. 11. 1.0
  12. 12. 0 1.0
  13. 13. 2.6
  14. 14. Lots of refactoring, and a lot of features
  15. 15. Pure Ruby DSL
  16. 16. Class Parameters
  17. 17. Finished migration to REST Still working on publishing all of the formats and URLs
  18. 18. The single executable shift puppetmasterd puppet master puppetd puppet agent puppetca puppet cert ralsh puppet resource puppetdoc puppet doc
  19. 19. More informative reports Heavily trimmed
  20. 20. Exposing types and classes
  21. 21. Faster in many ways • Compiles are much faster • File serving is streamed (thanks Brice!) • Lots of small improvements
  22. 22. Relationship syntax
  23. 23. Hashes
  24. 24. Taught us a lot about how (not) to release
  25. 25. “Web GUI” Dashboard is growing and prospering
  26. 26. Node classification
  27. 27. Reporting
  28. 28. Lots to come • Automatically detect optional and required parameters • Catalog and report correlation • Discovery • Harass Rein for more information!
  29. 29. Let’s go Back
  30. 30. Why does Puppet exist?
  31. 31. Embarrassment
  32. 32. Fear
  33. 33. A simple dream: That sysadmins could reuse code
  34. 34. Enable focus on the value-add Usually Ideally 0 25.0 50.0 75.0 100.0 Things you have to do Things you want to do
  35. 35. The Problem } • No standardization Every • 75% of IT budgets spent infrastructure to maintain existing systems starts from • Code changes with the scratch sysadmin
  36. 36. We needed a high-level language for
  37. 37. Shell scripts are assembly code Programmin SysAdmin g Low-level, non- Assembly perl/shell/etc portable, single-use Abstract, portable, C* Puppet reusable * For small values of abstract
  38. 38. So: The ultimate goal was code reuse
  39. 39. We’ve built a platform that can enable reuse
  40. 40. Now we just need to start sharing
  41. 41. Announcing: Puppet Forge http://forge.puppetlabs.com http://projects.puppetlabs.com/projects/ module-site
  42. 42. Share the modules you’ve created
  43. 43. Find modules others have
  44. 44. Client-side tools
  45. 45. Extension metadata is
  46. 46. Minimum Viable Product (MVP)
  47. 47. It’s all about code reuse
  48. 48. Westheimer's Discovery: A couple of months in the laboratory can frequently save
  49. 49. Luke’s Corollary: A couple of months of development can frequently save a couple of hours on the internet.
  50. 50. Collaborate on existing code rather than
  51. 51. Or, start again and publish
  52. 52. A new forcing function in
  53. 53. Because there’s now a place for all that metadata: • Classes, definitions, nodes, etc. • Required and optional parameters • Versions • Dependencies
  54. 54. Drives further introspection in Puppet
  55. 55. We can add: • Portability information - ‘confine’ in classes and modules • Incompatibilities • “Tested on” information • Etc.
  56. 56. Pushes Dashboard to manage modules
  57. 57. Package-like behaviour in the modules
  58. 58. Fills out the product portfolio •The industry-leading open source automation platform Puppet •Supported with subscription Puppet •A graphical view into your Puppet infrastructure •A simplified interface for many configuration actions Dashboard •Collaborate with other IT administrators on Puppet content Puppet Forge •Access Puppet Labs supported modules
  59. 59. Any Question

×