a puppet story
DESCRIPTION
Slides from RubyConf 08, about 50% slides recycled from velocity/UTOSC, some inside jokes plus code for simple Puppet type and providerTRANSCRIPT
![Page 1: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/1.jpg)
A Puppet Story...Systems Building Systems
![Page 2: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/2.jpg)
![Page 3: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/3.jpg)
This is my second RubyConf
![Page 4: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/4.jpg)
This is my second RubyConf
![Page 5: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/5.jpg)
This is my second RubyConfUse your powers for Awesome!
![Page 6: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/6.jpg)
This is my second RubyConfUse your powers for Awesome!
![Page 7: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/7.jpg)
This is my second RubyConfUse your powers for Awesome!
![Page 8: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/8.jpg)
Developer Sysadmin
![Page 9: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/9.jpg)
Developer Sysadmin
Three people
![Page 10: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/10.jpg)
Forgive him, for he believes that the customs of his tribe are the laws of nature!
--George Bernard Shaw
![Page 11: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/11.jpg)
sudo chown -R us:us /your/base
![Page 12: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/12.jpg)
What is Puppet?Language Parser
Client/Server
Resource Abstraction
A few other things
All Ruby... : )
![Page 13: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/13.jpg)
![Page 14: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/14.jpg)
LoveYou must love your tools, if you don't, it will show in the work you do...
--Dave Thomas
![Page 15: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/15.jpg)
Can you feel the Spirit?
![Page 16: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/16.jpg)
What is a sysadmin?
![Page 17: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/17.jpg)
Not Exactly Modern
![Page 18: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/18.jpg)
LukeKanies
![Page 19: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/19.jpg)
One Goal:Revolutionize System Administration
![Page 20: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/20.jpg)
Say What?!??
![Page 21: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/21.jpg)
Don’t look at me... I wasn’t the last one to touch it...
![Page 22: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/22.jpg)
![Page 23: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/23.jpg)
Wisdom of the Clouds
![Page 24: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/24.jpg)
![Page 25: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/25.jpg)
You can either easily manage complex systems at scale...
![Page 26: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/26.jpg)
You can either easily manage complex systems at scale...
Or you can’t...
![Page 27: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/27.jpg)
Everything the SameEverything Distinct
![Page 28: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/28.jpg)
LukeKaniesRecovering Sysadmin
![Page 29: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/29.jpg)
SSH Cfengine ?
![Page 30: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/30.jpg)
Bad product,hungry Luke
![Page 31: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/31.jpg)
SSH Cfengine ?
![Page 32: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/32.jpg)
SSH Cfengine ?
![Page 33: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/33.jpg)
Who’s using Puppet?
“...at Google we're currently using Puppet
to manage close to 6,000 Macs, and it's likely our deployment
will expand dramatically beyond
that....”
![Page 34: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/34.jpg)
Competitive Advantage
![Page 35: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/35.jpg)
People are finally figuring out puppet and how it gets you
to the pub by 4pm. Note that I've been at this pub since
2pm.-- Jorge Castro
![Page 36: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/36.jpg)
Enter Puppet...
Configuration Is Declarative Code
Semantics Matter
Reproducible
Shareable
Maintainable
Extensible
![Page 37: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/37.jpg)
Programming SysAdmin
Low-level, non-portable Assembly commands
and files
Abstract, portable C* Resources
An Analogy
* For small values of abstract
![Page 38: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/38.jpg)
Portablity
23 package types
Users in NetInfo, useradd, pw
Support for Debian, Ubuntu, Red Hat, Solaris, OS X, Gentoo, SuSE, FreeBSD, and more
![Page 39: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/39.jpg)
Network Effects
![Page 40: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/40.jpg)
Portable ResourcesThis:
![Page 41: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/41.jpg)
Portable Resources
Becomes:
This:
![Page 42: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/42.jpg)
Portable Resources
Becomes:
This:
![Page 43: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/43.jpg)
Portable Resources
Becomes:
This:
![Page 44: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/44.jpg)
Portable Resources
Becomes:
This:
![Page 45: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/45.jpg)
Portable Resources
Becomes:
This:
![Page 46: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/46.jpg)
Debian
![Page 47: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/47.jpg)
Debian
Red Hat
![Page 48: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/48.jpg)
Debian
Red Hat
![Page 49: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/49.jpg)
![Page 50: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/50.jpg)
![Page 51: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/51.jpg)
Package
![Page 52: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/52.jpg)
Package
Configuration
Configuration should get modified after
package installation
![Page 53: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/53.jpg)
Package
Service
Service should restart when
configuration changesConfiguration
Configuration should get modified after
package installation
![Page 54: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/54.jpg)
![Page 55: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/55.jpg)
![Page 56: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/56.jpg)
![Page 57: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/57.jpg)
![Page 58: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/58.jpg)
![Page 59: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/59.jpg)
Perspectives
![Page 60: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/60.jpg)
Idempotence...
![Page 61: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/61.jpg)
Idempotence...
![Page 62: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/62.jpg)
Idempotence...
Describes the property of operations in mathematics and computer science which yield the same result after
the operations is applied multiple times.
![Page 63: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/63.jpg)
![Page 64: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/64.jpg)
![Page 65: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/65.jpg)
![Page 66: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/66.jpg)
![Page 67: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/67.jpg)
![Page 68: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/68.jpg)
![Page 69: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/69.jpg)
![Page 70: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/70.jpg)
![Page 71: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/71.jpg)
![Page 72: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/72.jpg)
?????
![Page 73: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/73.jpg)
CommunityOpen Source
(Beer & Speech)
![Page 74: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/74.jpg)
What’s on the Horizon?Currents, Drift and Directions
![Page 75: A Puppet Story](https://reader038.vdocument.in/reader038/viewer/2022102705/54b6c67b4a7959a0608b45b9/html5/thumbnails/75.jpg)
Questions?andrew@reductivelabs
twitter.com/littleidea