Modules and the Puppet Forge

Download Modules and the Puppet Forge

Post on 12-May-2015




0 download

Embed Size (px)


"Modules and the Puppet Forge" by Ryan Coleman of Puppet Labs at Puppet Camp LA, in conjunction with SCALE11x. Follow Ryan @ryanycoleman


<ul><li>1.Tuesday, February 26, 13</li></ul> <p>2. About MeTuesday, February 26, 13Ryan was a RedHat sysadmin for Penn State before joining Puppet Labsas a professional services engineer. Now is product owner for the Forge. 3. Tuesday, February 26, 13The Puppet Forge is a community driven web service for contributing and nding Puppetmodules. 4. Tuesday, February 26, 13 5. Tuesday, February 26, 13Word cloud made from forge module names. Size = frequency 6. Tuesday, February 26, 13The following are examples of what you might nd on the Forge. 7. Tuesday, February 26, 13 8. Tuesday, February 26, 13 9. Tuesday, February 26, 13 10. Tuesday, February 26, 13 11. Tuesday, February 26, 13 12. Forge Module Count 4000 3000 20001000 0 End Q3 End Q4 ~End Q1 ~End Q2 ~End Q3 ~End Q4Tuesday, February 26, 13 13. Tuesday, February 26, 13From the US, LA is the 5th largest city regarding forge traffic- Behind the bay 14. Tuesday, February 26, 13 15. Tuesday, February 26, 13 16. Tuesday, February 26, 13 17. Best Good PracticesTuesday, February 26, 13 18. PL Style GuideTuesday, February 26, 13 19. Tuesday, February 26, 13 20. Tuesday, February 26, 13 21. Tuesday, February 26, 13 22. Tuesday, February 26, 13 23. Code VS DataTuesday, February 26, 13As you get further along with your Puppet Deployments, separating your code (puppetresources) from the data (what package, what version) becomes increasingly important. 24. Tuesday, February 26, 13 25. Tuesday, February 26, 13How do you get from A to B? 26. Tuesday, February 26, 13The answer, use Hiera!Seriously, these docs rock. Read them. 27. Its MAGICBut also, its not...Tuesday, February 26, 13But rst, lets take a closer look at a Puppet run. 28. Tuesday, February 26, 13 29. Tuesday, February 26, 13 30. Tuesday, February 26, 13 31. I need the value for $forge::package_name. How should I conduct mysearch?Tuesday, February 26, 13 32. I need the value for $forge::package_name. How should I conduct my search?Tuesday, February 26, 13Hiera lets you express data in some structured format (which is pluggable).You then establish a hierarchy of lookup, however you like, usually based on facts. 33. I need the value for $forge::package_name. How should I conduct my search?$clientcert$operatingsystem commonTuesday, February 26, 13Consider your hierarchy the lookup order. 34. ? $forge::package_name $clientcert $operatingsystem commonTuesday, February 26, 13 35. ? $forge::package_name $james_bond $RedHat commonTuesday, February 26, 13Facts can be used for a dynamic hierarchy. 36. ? $forge::package_name $james_bond$RedHatcommonTuesday, February 26, 13Hiera will simply consult the structured data, looking for variable names, expecting lesnamed after your entry in hiera.yaml 37. ? $forge::package_name $james_bond$RedHatcommonTuesday, February 26, 13Hierarchy matters. The package name is now tmux. 38. Ok, so how do Iimplement it?Tuesday, February 26, 13Thankfully, Puppet 3 has made implementing Hiera really simple. 39. Tuesday, February 26, 13Please dont use the hiera() function. Consider it legacy. 40. Tuesday, February 26, 13This is better, as the user can override this default parameter value.With this, youre locked into hiera. 41. Tuesday, February 26, 13But really, just get yourself onto Puppet 3 and take advantage of automatic Hiera! 42. Data Bindings dont lock yourself inTuesday, February 26, 13Additionally, protect yourself from a potential loss of Hiera. 43. Data Lookup Order Use explicit class declaration values Query Data Binding Use the default value from class. Fail compilation with an error if no value can be found.Tuesday, February 26, 13 44. Built into Puppet 3Tuesday, February 26, 13 45. Tuesday, February 26, 13 46. Tuesday, February 26, 13But really, just get yourself onto Puppet 3 and take advantage of automatic Hiera! 47. Best Practices Conrm to the Style Guide Use Parameterized Classes Dont use hiera() directlyTuesday, February 26, 13Re-cap. 48. InterfacesTuesday, February 26, 13 49. Tuesday, February 26, 13 50. Tuesday, February 26, 13 51. Tuesday, February 26, 13 52. The TeamTuesday, February 26, 13 53. What have we been up to? Re-launch and Re-designTuesday, February 26, 13Though were small, weve been really busy! 54. Tuesday, February 26, 13 55. Tuesday, February 26, 13Lots of little features add up to a substantially nicer to use Forge. 56. What have we been up to? Re-launch and Re-design PMT Fixes (prep for publish) Download CountsTuesday, February 26, 13 57. Tuesday, February 26, 13Download counts, now in your search results! 58. Whats Next? GitHub PublishTuesday, February 26, 13Edit your Modulele, push your commit and well do the publishing! Coming soon to arepository near you. 59. Whats Next?A Full &amp; Public APITuesday, February 26, 13Also coming soon, an actual API for doing all sorts of things with the Forge. 60. Whats Next?Tuesday, February 26, 13Just an experimental mock-up of search results. Actual feature will absolutely look andbehave differently. 61. Tuesday, February 26, 13Private Forge has been a common request. 62. PulpProject.orgTuesday, February 26, 13RedHats Pulp Project is repository management software that recently added support forPuppet Modules. 63. Manage Modules on-premise Mirror Public Forge BUT, please work with me on this Email me or comment on #5033Tuesday, February 26, 13If youre interested in this, email or add your thoughts to going to do something in this space, but want to hear more from you on what youneed. 64. Want to help?Tuesday, February 26, 13If you want to add your inuence to our products, join the Puppet Labs Test Pilots program! 65. Sharpen your skills Get Certied Online learning on the way, February 26, 13Our education courses are carefully crafted and delivered by our fabulous education teamand professional services team.Advanced course coming to LA 3/19Browse upcoming events at 66. Tuesday, February 26, 13 67. Read more! http://garylarizza.comTuesday, February 26, 13Gary Larizza has a great blog post on Boxen. 68. WERE HIRING! Puppet Forge Module Engineer, February 26, 13Seriously, join our team. Itll be awesome. </p>