James Turnbull@kartarIRC: jamesturnbulljames@puppetlabs.comFriday, May 3, 13
A Quick PollFriday, May 3, 13
The State ofITFriday, May 3, 13
http://info.puppetlabs.com/2013-state-of-devops-report.htmlFriday, May 3, 13
More. Faster.Friday, May 3, 13
Old practices areConstraints ...Friday, May 3, 13
...and oldconstraints aregoneFriday, May 3, 13
DevOpsFriday, May 3, 13
Change must beembracedFriday, May 3, 13
CloudFriday, May 3, 13
State of ITAutomationFriday, May 3, 13
Enabling FrictionlessTechnological ChangeFriday, May 3, 13
Customers EverywhereFriday, May 3, 13
New Approach: SoftwareDefined Infrastructure1. DEFINE 2. SIMULATE4. REPORTRe-usable infrastructure-as-code Before deployin...
Lifecycle of a Puppet Run1. FactsThe node sends data about its stateto the puppet master server.2.#Catalog#Puppet&uses&the...
PuppetArchitectureWeb Server Database ServerApplication ServerReportingGUI &WorkflowsContentAdmin &SecurityVirtual Machine...
Simple, DeclarativeFriday, May 3, 13
Strong CommunityForum Members Jan 2012 March 2013puppet-users list 3588 5531puppet-dev list 724 994ask.puppetlabs.com N/A ...
Easy to Get Involved• Help with Documentation• Ask/Answer questions• http://ask.puppetlabs.com• mailing lists• IRC• Help w...
AUGUST 22 - 23http://puppetconf.comFriday, May 3, 13
Friday, May 3, 13
PuppetEnterpriseFriday, May 3, 13
Puppet EnterpriseGRAPHICAL USER INTERFACE LIVE MANAGEMENTSERVICES & SUPPORTVMWARE CLOUD PROVISIONERFriday, May 3, 13
GUI for PuppetHigh-level status of nodesfor instant visibilityTime%based*display*for*insight*into*rate*of*change*Detail*of...
PE Live ManagementFriday, May 3, 13
VM/Cloud ProvisioningFriday, May 3, 13
Recent Features• Certificate Signing from the GUI• Authentication with LDAP and oAuthFriday, May 3, 13
Organizational ScalabilityFriday, May 3, 13
PuppetActivity LogFriday, May 3, 13
Puppet 3.2.0• Ruby 2.0 Support• External Certificate AuthoritySupport• Experimental “Future” parser• Slow Catalog Profilin...
Puppet 3.2.0 - Experimental Parser• parser = future• Iteration and Enumerables$a = [1,2,3]each($a) |$value| { notice $valu...
Scope# dynamic scoping is goneclass parent {$var = "from parent"include included}class included {notify { $var: } ## NOT G...
class ntp($server = hiera(ntp_server,‘time.apple.com’)) {...}# can be changed toclass ntp($ntpserver = ‘time.apple.com’) {...
PerformanceGainsFriday, May 3, 13
Friday, May 3, 13
Puppet 3 moving on from 2.72.7.0 Release3.1.0 Release3.0.0 ReleaseFriday, May 3, 13
API Documentation!Friday, May 3, 13
Transparency in plansFriday, May 3, 13
Puppet Armatures (ARM)• Proposals to enhance / add features to Puppet orother projects in the Puppet eco-system• ARM is a ...
The Puppet Forge• Repository of modules• Written by the community• Written for the community• Identify the best ones out t...
Forge By the NumbersJan 2012 April 2013Modules 260 1050+Users 930 2325+Total DownloadsSince Feb 2012588,000+Friday, May 3,...
MCollective• Framework to build server orchestration• Parallel job execution• Real-time discovery of resources• Target onl...
MCollective 2.2.x• Network discovery completely pluggable• Sources of Truth:• network,database,file,anything• Result Summa...
MCollective 2.2.x - Puppet Agent• http://srt.ly/mcpuppet• Orchestrates deployments• Manages Puppet agent runs,supports:• n...
MCollective 2.2.x - Puppet AgentFriday, May 3, 13
MCollective 2.2.x - Puppet AgentFriday, May 3, 13
MCollective 2.2.x - Puppet AgentFriday, May 3, 13
MCollective 2.2.x - Puppet AgentFriday, May 3, 13
PuppetDB• Central storage for catalogs and facts that are part ofyour puppet infrastructure• Incredibly fast replacement f...
PuppetDB• PuppetDB 1.1 released• Enhanced Query API forfacts,subqueries,regularexpressions• Report Storage• Report Query i...
Razor Provisioning• Rules-based provisioning for bare metal hardwareand virtual servers• Developed in cooperation with EMC...
Razor Present and Future• Security audits,fixes in the 0.9.0 release• Not yet ready for prime time• Help us get it there• ...
Hiera• Simple pluggable Hierarchical Database• Key/value lookup tool for configuration data• Keeps site-specific data out ...
Facter 1.7• External Facts!https://docs.puppetlabs.com/guides/custom_facts.html#external-facts• Any executable in the fact...
Friday, May 3, 13
Puppet LabsFriday, May 3, 13
Puppet Labs: by the numbersJan 2012 April 2013Employees 55 134Customer Countries 29 42Office Space836 m29,000 ft22,232 m22...
Awesome Espresso & TeaWeekly Company LunchPuppet Labs: A Great Place to Work!Photos by Gary LarizzaFriday, May 3, 13
We’re Hiring!Friday, May 3, 13
Training&CertificationFriday, May 3, 13
Training by CountryFriday, May 3, 13
Puppet Education:Training and Certification TrackFriday, May 3, 13
Questions?Questions?Friday, May 3, 13
Thank You!Learn More:http://puppetlabs.comhttp://puppetlabs.com/communityhttp://puppetlabs.com/puppet/puppet-enterprise/Fr...
Upcoming SlideShare
Loading in …5
×

State of Puppet - NYC

1,312 views

Published on

James Turnbull delivers the 'State of Puppet' at Puppet Camp NY 2013. PuppetCamp Bonus: 25% off a Puppet Certification Exam! Use code PU2551959831 at http://bit.ly/Sv3tQa through the end of September.

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,312
On SlideShare
0
From Embeds
0
Number of Embeds
14
Actions
Shares
0
Downloads
36
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

State of Puppet - NYC

  1. 1. James Turnbull@kartarIRC: jamesturnbulljames@puppetlabs.comFriday, May 3, 13
  2. 2. A Quick PollFriday, May 3, 13
  3. 3. The State ofITFriday, May 3, 13
  4. 4. http://info.puppetlabs.com/2013-state-of-devops-report.htmlFriday, May 3, 13
  5. 5. More. Faster.Friday, May 3, 13
  6. 6. Old practices areConstraints ...Friday, May 3, 13
  7. 7. ...and oldconstraints aregoneFriday, May 3, 13
  8. 8. DevOpsFriday, May 3, 13
  9. 9. Change must beembracedFriday, May 3, 13
  10. 10. CloudFriday, May 3, 13
  11. 11. State of ITAutomationFriday, May 3, 13
  12. 12. Enabling FrictionlessTechnological ChangeFriday, May 3, 13
  13. 13. Customers EverywhereFriday, May 3, 13
  14. 14. New Approach: SoftwareDefined Infrastructure1. DEFINE 2. SIMULATE4. REPORTRe-usable infrastructure-as-code Before deploying changesAutomatically and reliablyInsight into changesDESIREDSTATECURRENTSTATE3. ENFORCE}Friday, May 3, 13
  15. 15. Lifecycle of a Puppet Run1. FactsThe node sends data about its stateto the puppet master server.2.#Catalog#Puppet&uses&the&facts&to&compile&a&Catalog&that&specifies&how&the&node&should&be&configured.&3.#&Report#Configura9on&changes&are&reported&back&to&the&Puppet&Master.4.#&Report#Puppets&open&API&can&also&send&data&to&3rd&party&tools.&1 Facts 2 Catalog#Node#3 Report#4 Report#Report#Collector#Friday, May 3, 13
  16. 16. PuppetArchitectureWeb Server Database ServerApplication ServerReportingGUI &WorkflowsContentAdmin &SecurityVirtual Machine CloudHardwarePUPPET MASTER SERVERPUPPETAGENTPUPPET FORGE CONTENT MARKETPLACEPUPPETAGENTPUPPETAGENTPUPPET OPEN SOURCE PLATFORMFriday, May 3, 13
  17. 17. Simple, DeclarativeFriday, May 3, 13
  18. 18. Strong CommunityForum Members Jan 2012 March 2013puppet-users list 3588 5531puppet-dev list 724 994ask.puppetlabs.com N/A 336#puppet 600 999Repository Jan 2012 March 2013Puppet Forks 236 533Puppet Watchers 526 1230Friday, May 3, 13
  19. 19. Easy to Get Involved• 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 learnmoreFriday, May 3, 13
  20. 20. AUGUST 22 - 23http://puppetconf.comFriday, May 3, 13
  21. 21. Friday, May 3, 13
  22. 22. PuppetEnterpriseFriday, May 3, 13
  23. 23. Puppet EnterpriseGRAPHICAL USER INTERFACE LIVE MANAGEMENTSERVICES & SUPPORTVMWARE CLOUD PROVISIONERFriday, May 3, 13
  24. 24. GUI for PuppetHigh-level status of nodesfor instant visibilityTime%based*display*for*insight*into*rate*of*change*Detail*of*node*status*to*pinpoint*specific*issues*Friday, May 3, 13
  25. 25. PE Live ManagementFriday, May 3, 13
  26. 26. VM/Cloud ProvisioningFriday, May 3, 13
  27. 27. Recent Features• Certificate Signing from the GUI• Authentication with LDAP and oAuthFriday, May 3, 13
  28. 28. Organizational ScalabilityFriday, May 3, 13
  29. 29. PuppetActivity LogFriday, May 3, 13
  30. 30. Puppet 3.2.0• Ruby 2.0 Support• External Certificate AuthoritySupport• Experimental “Future” parser• Slow Catalog Profiling• OpenWRT OS Support• DSL modulo operator - %Friday, May 3, 13
  31. 31. Puppet 3.2.0 - Experimental Parser• parser = future• Iteration and Enumerables$a = [1,2,3]each($a) |$value| { notice $value }• each,foreach,collect,select,reject,reduce,slicecollect([1,20,3]) |$value| { $value < 10 }# produces [1,3]Friday, May 3, 13
  32. 32. Scope# dynamic scoping is goneclass parent {$var = "from parent"include included}class included {notify { $var: } ## NOT GONNA WORKnotify { $parent::var: } ## YUPFriday, May 3, 13
  33. 33. class ntp($server = hiera(ntp_server,‘time.apple.com’)) {...}# can be changed toclass ntp($ntpserver = ‘time.apple.com’) {...}Data BindingFriday, May 3, 13
  34. 34. PerformanceGainsFriday, May 3, 13
  35. 35. Friday, May 3, 13
  36. 36. Puppet 3 moving on from 2.72.7.0 Release3.1.0 Release3.0.0 ReleaseFriday, May 3, 13
  37. 37. API Documentation!Friday, May 3, 13
  38. 38. Transparency in plansFriday, May 3, 13
  39. 39. Puppet Armatures (ARM)• Proposals to enhance / add features to Puppet orother projects in the Puppet eco-system• ARM is a process for collecting,reviewing,sorting,and recording the result of proposals forenhancements• Used for work that require 2+ weeks effort, hassignificant changes,is in high demand,or containschanges to Puppet Language / evaluation semantics• Community-focused process to improve opennessand transparency for Puppet Labs-funded andcontributor effortsgithub.com/puppetlabs/armaturesFriday, May 3, 13
  40. 40. The Puppet Forge• Repository of modules• Written by the community• Written for the community• Identify the best ones out there• Great place to contribute your own modulesFriday, May 3, 13
  41. 41. Forge By the NumbersJan 2012 April 2013Modules 260 1050+Users 930 2325+Total DownloadsSince Feb 2012588,000+Friday, May 3, 13
  42. 42. MCollective• Framework to build server orchestration• Parallel job execution• Real-time discovery of resources• Target only the systems you wantFriday, May 3, 13
  43. 43. MCollective 2.2.x• Network discovery completely pluggable• Sources of Truth:• network,database,file,anything• Result Summarization in the DDL• Shell Completion support• ships with zsh and bash examplesFriday, May 3, 13
  44. 44. MCollective 2.2.x - Puppet Agent• http://srt.ly/mcpuppet• Orchestrates deployments• Manages Puppet agent runs,supports:• noop,tags,splay,environments,server• enable/disable,custom lock messages• current status,most recent run status• Manages resource usage on the Puppet Master• Throttle # of simultaneous runsFriday, May 3, 13
  45. 45. MCollective 2.2.x - Puppet AgentFriday, May 3, 13
  46. 46. MCollective 2.2.x - Puppet AgentFriday, May 3, 13
  47. 47. MCollective 2.2.x - Puppet AgentFriday, May 3, 13
  48. 48. MCollective 2.2.x - Puppet AgentFriday, May 3, 13
  49. 49. PuppetDB• Central storage for catalogs and facts that are part ofyour puppet infrastructure• Incredibly fast replacement for existingActiveRecord storeconfigs• Easily deployed via a puppet module from the ForgeFriday, May 3, 13
  50. 50. PuppetDB• PuppetDB 1.1 released• Enhanced Query API forfacts,subqueries,regularexpressions• Report Storage• Report Query in anexperimental APIFriday, May 3, 13
  51. 51. Razor Provisioning• Rules-based provisioning for bare metal hardwareand virtual servers• Developed in cooperation with EMC• Easily deployed via a puppet module from the Forge• Automatically brings the new server into yourpuppet infrastructure• Open,pluggable,and programmableFriday, May 3, 13
  52. 52. Razor Present and Future• Security audits,fixes in the 0.9.0 release• Not yet ready for prime time• Help us get it there• File bugs,contribute to the communityFriday, May 3, 13
  53. 53. Hiera• Simple pluggable Hierarchical Database• Key/value lookup tool for configuration data• Keeps site-specific data out of your manifests• Puppet classes request data and Hiera will act like asite-wide config file• Makes it easy to configure nodes,re-use Puppetmodules and publish your modules• Support is built into Puppet 3,and is available as anadd-on for Puppet 2.7Friday, May 3, 13
  54. 54. Facter 1.7• External Facts!https://docs.puppetlabs.com/guides/custom_facts.html#external-facts• Any executable in the facts.d directory is a fact• Just return key/value pairs on STDOUT• Windows• .com .exe .bat .ps1 supported• Also supports structured data files in facts.d• .yaml .json .txt supportedFriday, May 3, 13
  55. 55. Friday, May 3, 13
  56. 56. Puppet LabsFriday, May 3, 13
  57. 57. Puppet Labs: by the numbersJan 2012 April 2013Employees 55 134Customer Countries 29 42Office Space836 m29,000 ft22,232 m225,000 ft2Friday, May 3, 13
  58. 58. Awesome Espresso & TeaWeekly Company LunchPuppet Labs: A Great Place to Work!Photos by Gary LarizzaFriday, May 3, 13
  59. 59. We’re Hiring!Friday, May 3, 13
  60. 60. Training&CertificationFriday, May 3, 13
  61. 61. Training by CountryFriday, May 3, 13
  62. 62. Puppet Education:Training and Certification TrackFriday, May 3, 13
  63. 63. Questions?Questions?Friday, May 3, 13
  64. 64. Thank You!Learn More:http://puppetlabs.comhttp://puppetlabs.com/communityhttp://puppetlabs.com/puppet/puppet-enterprise/Friday, May 3, 13

×