Systems building Systems: A Puppet Story

Download Systems building Systems: A Puppet Story

Post on 15-Jan-2015

3.986 views

Category:

Technology

3 download

Embed Size (px)

DESCRIPTION

 

TRANSCRIPT

<ul><li> 1. Systems Building Systems A Puppet Story </li></ul> <p> 2. What is Puppet? Language Parser Client/Server Resource Abstraction A few other things... 3. Luke Kanies Recovering Sysadmin 4. One Goal: Revolutionize System Administration 5. What is a sysadmin? 6. Not Exactly Modern 7. Do tools have to suck? 8. Say What?!?? 9. Everything the Same Everything Distinct 10. Best Practices 11. Dont look at me... I wasnt the last one to touch it... 12. SSH Cfengine ? 13. Bad product, hungry Luke 14. SSH Cfengine ? 15. SSH Cfengine ? 16. You can either easily managecomplex systems at scale... 17. You can either easily managecomplex systems at scale... Or you cant... 18. Whos using Puppet?...at Google we'recurrently using Puppet to manage close to6,000 Macs, and it's likely our deploymentwill expanddramatically beyondthat.... 19. Competitive Advantage 20. People are nally guring outpuppet and how it gets you to the pub by 4pm. Note that I've been at this pub since2pm. -- Jorge Castro 21. Enter Puppet... Conguration Is Declarative Code Semantics Matter Reproducible Shareable Maintainable Extensible 22. Developer Sysadmin 23. Threepeople Developer Sysadmin 24. An Analogy Programming SysAdminLow-level,commands Assembly non-portableand lesAbstract,C*Resources portable * For small values ofabstract 25. Portable Resources This: 26. Portable Resources This:Becomes: 27. Portable Resources This:Becomes: 28. Portable Resources This:Becomes: 29. Portable Resources This:Becomes: 30. Portable Resources This:Becomes: 31. Portable23 package typesUsers in NetInfo,useradd, pwSupport for Debian,Ubuntu, Red Hat,Solaris, OS X,Gentoo, SuSE,FreeBSD, and more 32. Debian 33. DebianRed Hat 34. DebianRed Hat 35. Package 36. Conguration should Packageget modied after package installationConguration 37. Conguration should Packageget modied after package installationService should restartConguration whenconguration changesService 38. Idempotence... 39. Idempotence... 40. Idempotence... Describes the property of operations in mathematics and computer science which yield the same result after the operation is applied multiple times. 41. Network Effects 42. Code Puppetmasterd puppetd puppetdOS Xin the puppetdcloudLinux 43. Every Client: 44. Every Client:Retrieve resource catalog from centralserver 45. Every Client:Retrieve resource catalog from centralserverDetermine resource order 46. Every Client:Retrieve resource catalog from centralserverDetermine resource orderCheck each resource in turn, xing ifnecessary 47. Every Client:Retrieve resource catalog from centralserverDetermine resource orderCheck each resource in turn, xing ifnecessaryRinse and repeat, every 30 minutes 48. Every Resource: 49. Every Resource: Retrieve current state (e.g., by querying dpkg db or doing a stat) 50. Every Resource: Retrieve current state (e.g., by querying dpkg db or doing a stat) Compare to desired state 51. Every Resource: Retrieve current state (e.g., by querying dpkg db or doing a stat) Compare to desired state Fix, if necessary (or just log) 52. Image from http://ickr.com/photos/pingnews/132543603/ 53. Questions? andrew@reductivelabs twitter.com/littleidea </p>