SlideShare a Scribd company logo
1 of 82
Download to read offline
11 Ways to hack
Puppet for Fun and

            Luke Kanies
            Founder and CEO, Puppet
            Labs
            Founder of Puppet
            @puppetmasterd
            luke@puppetlabs.com
Puppet
                 Deploy 1,800 machines in 2 hours
Mobile Phone     vs. 25 machines per day with HP              Investors
 Company         Opsware

                 Scaled from 0 to over 10,000
                 servers
                 in 2 months without training


                 287 servers per SysAdmin
                 vs. 19 for BMC BladeLogic



                 Over 50,000 systems
                 managed by Puppet


Financial   Entertainment        Technology         Defense           Web
Built for you
Great Design




 http://www.encorbio.com/Album/pages/ChkNFH-neuron1.htm
Configuration
  Platform
Fear
Embarrassment
    SSH
20%
More great sysadmins
           Programmers   Sysadmins




 5000       Assembly      Scripts


           Ruby, Java,
Millions                  Puppet
             PHP, C
Incremental Investment
                                    Fully Automated Infrastructure


                              Whole machines



          Multiple services




                                                                     Awesomeness
One file




                              Investment
Why use Puppet?
Scale at speed
Availability
Security
Auditability
Golden image?




Image from http://www.flickr.com/photos/fungep/2516767121/sizes/
Puppet: A brief
 introduction
A language for configuration
       specification
Resource Abstraction
computer      package
cron          port
file          resources
group         router
host          service
interface     sshkey
k5login       stage
mailalias     user
maillist      vcsrepo
mcx           vlan
mount         yumrepo
Cross Platform
Red Hat   Solaris
Fedora     OS X     Windows
Debian      AIX
                     Cisco
Ubuntu     HP-UX
CentOS    OpenBSD     F5
 SuSE     FreeBSD
Workflow
                                                                                            1   Define: With Puppet's declarative
                                                                                                  language you design a graph of
                                                                                           relationships between resources within
                                                                                           reusable modules. These modules define
                                                                                           your infrastructure in its desired state.

                                                                                       E
                                                                              R   AG
                                                                           VE
                                                                      CO
                                                                 SE




                                                            EA
                                                       CR
                                                       IN
                                                  ND
                                              E A
                                          I T E R AT




4    Report: Puppet Dashboard reports                                                                                   2    Simulate:    With this resource
     track relationships between                                                                                              graph, Puppet is unique in its
components and all changes, allowing                                                                                   ability to simulate deployments, enabling
you to keep up with security and                                                                                       you to test changes without disruption
compliance mandates. And with the                                                                                      to your infrastructure.
open API you can integrate Puppet with
third party monitoring tools.




                                CURRENT                                                    3    Enforce: Puppet compares your
                                STATE                                                             system to the desired state as you
                                                                                           define it, and automatically enforces it
                                                                      DESIRED
                                                                      STATE                to the desired state ensuring your system
                                                                                           is in compliance.
Change Propagation
                                              Node




                    1   Facts
                        The node sends
                        normalized data
                        about itself to the
                        Puppet Master.
                                                SSL secure               2    Catalog
                                                                              Puppet uses the Facts to
                                                encryption                    compile a Catalog that
                                                on all data                   specifies how the node
                                                transport                     should be configured.
Report    3
The node
reports back
to Puppet
indicating the
configuration is
complete, which
is visible in the                             Puppet
Puppet Dashboard.                             Master             4                    Report Collector
                                                                                      (Puppet or 3rd party tool)
                                                              Report
                                                              can also send data
                                                              to third party tools.
domain => local
                   Automatic Inventory
facterversion => 1.5.8
fqdn => sliver.local
hardwaremodel => i386
hostname => sliver
interfaces => lo0,gif0,stf0,en0,en1,fw0,vmnet1,vboxnet0
ipaddress => 192.168.174.1
ipaddress_lo0 => 127.0.0.1
ipaddress_vmnet1 => 192.168.174.1
kernel => Darwin
kernelmajversion => 10.6
kernelrelease => 10.6.0
macosx_productname => Mac OS X
macosx_productversion => 10.6.6
netmask => 255.255.255.0
netmask_lo0 => 255.0.0.0
netmask_vmnet1 => 255.255.255.0
network_lo0 => 127.0.0.0
network_vmnet1 => 192.168.174.0
operatingsystem => Darwin
operatingsystemrelease => 10.6.0
path => /opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
ps => ps auxwww
puppetversion => 2.6.4
rubysitedir => /opt/local/lib/ruby/site_ruby/1.8
timezone => PST
uptime => 1 day
rubyversion => 1.8.7
sp_bus_speed => 1.07 GHz
Centralized, Serverless, or
     Puppet Dashboard         Puppet Module Forge      3rd Party Systems
                                                               Data




                                    Modules

   MCollective
   handles                    Puppet Master
   orchestration




                     Facter                   Facter                  Facter
      Puppet Agent             Puppet Agent            Puppet Agent




            NODE                     NODE                    NODE
Scales like HTTPS

2 known 50k node sites

Multiple 30k node sites

 Tens of 3k node sites
Built as a platform
Model-based hackability

• Hosts
• Inventory data
  • IP, hostname, platform, etc.
• Resource lists
• Resource dependencies
• Change events
Puppet Faces

ca                            key
catalog                       man
certificate                   node
certificate_request           parser
certificate_revocation_list   plugin
config                        report
facts                         resource
file                          resource_type
help                          status
MCollective:
Infrastructure
 message bus
Puppet Forge
404 free, reusable modules
Hacking Puppet for
Fun and Productivity
Question
Authority
Model-based
 Hackability
Examples

https://github.com/lak/velocity_2012-
Hacking_Puppet


 https://github.com/puppetlabs/puppetlabs-stdlib/
Hack #1: Puppet as you




       ~/.puppet/puppet.conf
Editing files as you
Code:




Result:
Simpler version
Code:




Result:
Client/server
Code:




Server:



              (and lots more text)


Client:
Hack #2: Curl speaks
Puppet:




Curl:
Hack #3: Data,
 and lots of it
Data
                                              Node




                    1   Facts
                        The node sends
                        normalized data
                        about itself to the
                        Puppet Master.
                                                SSL secure               2    Catalog
                                                                              Puppet uses the Facts to
                                                encryption                    compile a Catalog that
                                                on all data                   specifies how the node
                                                transport                     should be configured.
Report    3
The node
reports back
to Puppet
indicating the
configuration is
complete, which
is visible in the                             Puppet
Puppet Dashboard.                             Master             4                    Report Collector
                                                                                      (Puppet or 3rd party tool)
                                                              Report
                                                              can also send data
                                                              to third party tools.
#3.1: Catalog
Catalog as JSON
{
    "data": {
      "edges": [
         {
            "source": "Stage[main]",
            "target": "Class[Settings]"
         },
         {
            "source": "Stage[main]",
            "target": "Class[main]"
         },
         {
            "source": "Class[main]",
            "target": "File[/tmp/local_file]"
         }
      ],
      "resources": [
         {
            "type": "Class",
            "exported": false,
            "title": "Settings",
            "tags": [
              "class",
              "settings"
            ]
         },
So?
Control separately:




Resource list:




Code:
#3.2: Facts
Every host, automatically
#3.3: Reports
Every
Change
Node
   Fact
 Resource
Dependency
  Change
Hack #4: Static Compiler
Checksum vs. URL
Before:




After:
Normal data flows
Static compiler, run 1
Static compiler, run 2
Hack #5: config_version
Default:




After:
Extensions
Hack #6: Report




       http://puppetlabs.com/blog/when-puppet-reports-part-1/
https://github.com/jamtur01/puppet-growl/blob/master/lib/puppet/reports/growl.rb
Hack #6: Report




       http://puppetlabs.com/blog/when-puppet-reports-part-1/
https://github.com/jamtur01/puppet-growl/blob/master/lib/puppet/reports/growl.rb
Hack #7: Function




https://github.com/puppetlabs/puppetlabs-stdlib/blob/master/lib/puppet/parser/
                              functions/flatten.rb
Hack #7: Function




https://github.com/puppetlabs/puppetlabs-stdlib/blob/master/lib/puppet/parser/
                              functions/flatten.rb
Hack #8: Fact




https://github.com/puppetlabs/puppetlabs-stdlib/blob/master/lib/facter/
                            root_home.rb
Hack #8: Fact




https://github.com/puppetlabs/puppetlabs-stdlib/blob/master/lib/facter/
                            root_home.rb
#9 and #10:
    Types and Providers

Examples from http://www.kartar.net/2010/02/puppet-types-and-
providers-are-easy/
Exec in Puppet
Native resource
Native resources are
Exec:




Native:
Resource Type
Resource Type
Resource Type
Resource Type
Resource Provider
Resource Provider
Resource Provider
Resource Provider
Hack #11: Face




 https://github.com/puppetlabs/puppet/blob/2.7rc/lib/puppet/face/config.rb
Setup




https://github.com/puppetlabs/puppet/blob/2.7rc/lib/puppet/face/config.rb
actualwork.com




 https://github.com/puppetlabs/puppet/blob/2.7rc/lib/puppet/face/config.rb
Summary
Configurable
Controllable
                                              Node




                    1   Facts
                        The node sends
                        normalized data
                        about itself to the
                        Puppet Master.
                                                SSL secure               2    Catalog
                                                                              Puppet uses the Facts to
                                                encryption                    compile a Catalog that
                                                on all data                   specifies how the node
                                                transport                     should be configured.
Report    3
The node
reports back
to Puppet
indicating the
configuration is
complete, which
is visible in the                             Puppet
Puppet Dashboard.                             Master             4                    Report Collector
                                                                                      (Puppet or 3rd party tool)
                                                              Report
                                                              can also send data
                                                              to third party tools.
Node
   Fact
 Resource
Dependency
  Change
Hackable
Questions?

More Related Content

What's hot

Nuxeo on the Cloud - Nuxeo World 2011
Nuxeo on the Cloud - Nuxeo World 2011Nuxeo on the Cloud - Nuxeo World 2011
Nuxeo on the Cloud - Nuxeo World 2011Stefane Fermigier
 
Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...
Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...
Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...GigaScience, BGI Hong Kong
 
Cooking Perl with Chef
Cooking Perl with ChefCooking Perl with Chef
Cooking Perl with ChefDavid Golden
 
PuppetCamp SEA 1 - Puppet Deployment at OnApp
PuppetCamp SEA 1 - Puppet Deployment  at OnAppPuppetCamp SEA 1 - Puppet Deployment  at OnApp
PuppetCamp SEA 1 - Puppet Deployment at OnAppWalter Heck
 
Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly -Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly -Giulio Vian
 
zookeeperProgrammers
zookeeperProgrammerszookeeperProgrammers
zookeeperProgrammersHiroshi Ono
 
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allEclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allMarc Dutoo
 
Using puppet
Using puppetUsing puppet
Using puppetAlex Su
 
Baking docker using chef
Baking docker using chefBaking docker using chef
Baking docker using chefMukta Aphale
 
Play Framework + Docker + CircleCI + AWS + EC2 Container Service
Play Framework + Docker + CircleCI + AWS + EC2 Container ServicePlay Framework + Docker + CircleCI + AWS + EC2 Container Service
Play Framework + Docker + CircleCI + AWS + EC2 Container ServiceJosh Padnick
 
Cloudstack talk
Cloudstack talkCloudstack talk
Cloudstack talkbodepd
 
Maven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable ResultsMaven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable ResultsSteve Keener
 
Installaling Puppet Master and Agent
Installaling Puppet Master and AgentInstallaling Puppet Master and Agent
Installaling Puppet Master and AgentRanjit Avasarala
 
Testing Distributed Micro Services. Agile Testing Days 2017
Testing Distributed Micro Services. Agile Testing Days 2017Testing Distributed Micro Services. Agile Testing Days 2017
Testing Distributed Micro Services. Agile Testing Days 2017Carlos Sanchez
 
Automated Java Deployments With Rpm
Automated Java Deployments With RpmAutomated Java Deployments With Rpm
Automated Java Deployments With RpmMartin Jackson
 

What's hot (20)

Nuxeo on the Cloud - Nuxeo World 2011
Nuxeo on the Cloud - Nuxeo World 2011Nuxeo on the Cloud - Nuxeo World 2011
Nuxeo on the Cloud - Nuxeo World 2011
 
Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...
Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...
Mohamed Abouelhoda: Next Generation Workflow Systems on the Cloud: The Tavaxy...
 
Cooking Perl with Chef
Cooking Perl with ChefCooking Perl with Chef
Cooking Perl with Chef
 
PuppetCamp SEA 1 - Puppet Deployment at OnApp
PuppetCamp SEA 1 - Puppet Deployment  at OnAppPuppetCamp SEA 1 - Puppet Deployment  at OnApp
PuppetCamp SEA 1 - Puppet Deployment at OnApp
 
Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly -Terraform for azure: the good, the bad and the ugly -
Terraform for azure: the good, the bad and the ugly -
 
SCALE 10x Build a Cloud Day
SCALE 10x Build a Cloud DaySCALE 10x Build a Cloud Day
SCALE 10x Build a Cloud Day
 
Splunk for JMX
Splunk for JMXSplunk for JMX
Splunk for JMX
 
zookeeperProgrammers
zookeeperProgrammerszookeeperProgrammers
zookeeperProgrammers
 
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them allEclipseCon 2016 - OCCIware : one Cloud API to rule them all
EclipseCon 2016 - OCCIware : one Cloud API to rule them all
 
Splunk Java Agent
Splunk Java AgentSplunk Java Agent
Splunk Java Agent
 
Using puppet
Using puppetUsing puppet
Using puppet
 
Baking docker using chef
Baking docker using chefBaking docker using chef
Baking docker using chef
 
Play Framework + Docker + CircleCI + AWS + EC2 Container Service
Play Framework + Docker + CircleCI + AWS + EC2 Container ServicePlay Framework + Docker + CircleCI + AWS + EC2 Container Service
Play Framework + Docker + CircleCI + AWS + EC2 Container Service
 
Cloudstack talk
Cloudstack talkCloudstack talk
Cloudstack talk
 
Overview of Docker
Overview of DockerOverview of Docker
Overview of Docker
 
Maven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable ResultsMaven: Managing Software Projects for Repeatable Results
Maven: Managing Software Projects for Repeatable Results
 
Installaling Puppet Master and Agent
Installaling Puppet Master and AgentInstallaling Puppet Master and Agent
Installaling Puppet Master and Agent
 
Git 101
Git 101Git 101
Git 101
 
Testing Distributed Micro Services. Agile Testing Days 2017
Testing Distributed Micro Services. Agile Testing Days 2017Testing Distributed Micro Services. Agile Testing Days 2017
Testing Distributed Micro Services. Agile Testing Days 2017
 
Automated Java Deployments With Rpm
Automated Java Deployments With RpmAutomated Java Deployments With Rpm
Automated Java Deployments With Rpm
 

Viewers also liked

Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013
Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013
Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013Puppet
 
Masterless puppet
Masterless puppetMasterless puppet
Masterless puppetJesus Nunez
 
Build your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollectiveBuild your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollectiveJonathan Weiss
 
Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon
Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon
Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon Puppet
 
Puppet Camp DC 2014: Managing Puppet with MCollective
Puppet Camp DC 2014: Managing Puppet with MCollectivePuppet Camp DC 2014: Managing Puppet with MCollective
Puppet Camp DC 2014: Managing Puppet with MCollectivePuppet
 
Creating a Mature Puppet System
Creating a Mature Puppet SystemCreating a Mature Puppet System
Creating a Mature Puppet SystemPuppet
 
Getting Started with Puppet - PuppetConf 2013
Getting Started with Puppet - PuppetConf 2013Getting Started with Puppet - PuppetConf 2013
Getting Started with Puppet - PuppetConf 2013Puppet
 
Introduction to orchestration using Mcollective
Introduction to orchestration using McollectiveIntroduction to orchestration using Mcollective
Introduction to orchestration using McollectivePuppet
 
Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageRan Levy
 
Puppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the ForgePuppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the ForgePuppet
 
Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...
Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...
Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...Puppet
 
Discover Georgia- Why To Visit Georgia Country Presented By Forty Travels
Discover Georgia- Why To Visit Georgia Country Presented By Forty TravelsDiscover Georgia- Why To Visit Georgia Country Presented By Forty Travels
Discover Georgia- Why To Visit Georgia Country Presented By Forty TravelsForty Travels & Tours
 
PuppetConf track overview: Modern Infrastructure
PuppetConf track overview: Modern InfrastructurePuppetConf track overview: Modern Infrastructure
PuppetConf track overview: Modern InfrastructurePuppet
 
Automation with Packer and TerraForm
Automation with Packer and TerraFormAutomation with Packer and TerraForm
Automation with Packer and TerraFormWesley Charles Blake
 
London Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to AuthorshipLondon Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to AuthorshipChef
 

Viewers also liked (20)

Georgia1
Georgia1Georgia1
Georgia1
 
Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013
Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013
Puppet at Scale – Case Study of PayPal's Learnings - PuppetConf 2013
 
Masterless puppet
Masterless puppetMasterless puppet
Masterless puppet
 
Write php deploy everywhere
Write php deploy everywhereWrite php deploy everywhere
Write php deploy everywhere
 
Build your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollectiveBuild your own clouds with Chef and MCollective
Build your own clouds with Chef and MCollective
 
Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon
Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon
Puppet Camp Tokyo 2014: Why we stopped using Puppet Agent Daemon
 
Demystifying puppet
Demystifying puppetDemystifying puppet
Demystifying puppet
 
Puppet Camp DC 2014: Managing Puppet with MCollective
Puppet Camp DC 2014: Managing Puppet with MCollectivePuppet Camp DC 2014: Managing Puppet with MCollective
Puppet Camp DC 2014: Managing Puppet with MCollective
 
Creating a Mature Puppet System
Creating a Mature Puppet SystemCreating a Mature Puppet System
Creating a Mature Puppet System
 
Getting Started with Puppet - PuppetConf 2013
Getting Started with Puppet - PuppetConf 2013Getting Started with Puppet - PuppetConf 2013
Getting Started with Puppet - PuppetConf 2013
 
Introduction to orchestration using Mcollective
Introduction to orchestration using McollectiveIntroduction to orchestration using Mcollective
Introduction to orchestration using Mcollective
 
Continuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritageContinuous Deployment Applied at MyHeritage
Continuous Deployment Applied at MyHeritage
 
Puppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the ForgePuppet Module Reusability - What I Learned from Shipping to the Forge
Puppet Module Reusability - What I Learned from Shipping to the Forge
 
Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...
Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...
Puppet Camp DC 2015: Stop Writing Puppet Modules: A Guide to Best Practices i...
 
Discover Georgia- Why To Visit Georgia Country Presented By Forty Travels
Discover Georgia- Why To Visit Georgia Country Presented By Forty TravelsDiscover Georgia- Why To Visit Georgia Country Presented By Forty Travels
Discover Georgia- Why To Visit Georgia Country Presented By Forty Travels
 
PuppetConf track overview: Modern Infrastructure
PuppetConf track overview: Modern InfrastructurePuppetConf track overview: Modern Infrastructure
PuppetConf track overview: Modern Infrastructure
 
Automation with Packer and TerraForm
Automation with Packer and TerraFormAutomation with Packer and TerraForm
Automation with Packer and TerraForm
 
How to become a hacker
How to become a hackerHow to become a hacker
How to become a hacker
 
vBACD - Introduction to Puppet, Configuration Management and IT Automation So...
vBACD - Introduction to Puppet, Configuration Management and IT Automation So...vBACD - Introduction to Puppet, Configuration Management and IT Automation So...
vBACD - Introduction to Puppet, Configuration Management and IT Automation So...
 
London Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to AuthorshipLondon Community Summit - From Contribution to Authorship
London Community Summit - From Contribution to Authorship
 

Similar to 11 Ways to Hack Puppet for Fun and Productivity - Luke Kanies - Velocity 2012

20120331 - Expanded Intro to Puppet for LOAD
20120331 - Expanded Intro to Puppet for LOAD20120331 - Expanded Intro to Puppet for LOAD
20120331 - Expanded Intro to Puppet for LOADgarrett honeycutt
 
State of Puppet London
State of Puppet LondonState of Puppet London
State of Puppet LondonPuppet
 
State of Puppet - London
State of Puppet - LondonState of Puppet - London
State of Puppet - LondonPuppet
 
GENI - Seminário - Inatel
GENI - Seminário - InatelGENI - Seminário - Inatel
GENI - Seminário - InatelLúcio Henrique
 
Kubernetes From Scratch .pdf
Kubernetes From Scratch .pdfKubernetes From Scratch .pdf
Kubernetes From Scratch .pdfssuser9b44c7
 
prodops.io k8s presentation
prodops.io k8s presentationprodops.io k8s presentation
prodops.io k8s presentationProdops.io
 
Integration of real time software modules for reconfigurable sens
Integration of real time software modules for reconfigurable sensIntegration of real time software modules for reconfigurable sens
Integration of real time software modules for reconfigurable sensPham Ngoc Long
 
Puppet for Developers
Puppet for DevelopersPuppet for Developers
Puppet for Developerssagarhere4u
 
State of Puppet Amsterdam
State of Puppet AmsterdamState of Puppet Amsterdam
State of Puppet AmsterdamPuppet
 
Iteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey MillerIteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey MillerPuppet
 
Puppet - Simple Configuration Management
Puppet - Simple Configuration ManagementPuppet - Simple Configuration Management
Puppet - Simple Configuration ManagementMike Rogers
 
Adopting Kubernetes with Puppet
Adopting Kubernetes with PuppetAdopting Kubernetes with Puppet
Adopting Kubernetes with PuppetPuppet
 
Sock Puppets: Growing Your Puppet Codebase
Sock Puppets: Growing Your Puppet CodebaseSock Puppets: Growing Your Puppet Codebase
Sock Puppets: Growing Your Puppet CodebasePuppet
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to KubernetesPaul Czarkowski
 
Puppet talk at OSCON 2010.
Puppet talk at OSCON 2010.Puppet talk at OSCON 2010.
Puppet talk at OSCON 2010.teyotyree
 

Similar to 11 Ways to Hack Puppet for Fun and Productivity - Luke Kanies - Velocity 2012 (20)

20120331 - Expanded Intro to Puppet for LOAD
20120331 - Expanded Intro to Puppet for LOAD20120331 - Expanded Intro to Puppet for LOAD
20120331 - Expanded Intro to Puppet for LOAD
 
State of Puppet London
State of Puppet LondonState of Puppet London
State of Puppet London
 
State of Puppet - London
State of Puppet - LondonState of Puppet - London
State of Puppet - London
 
Puppet for Junos
Puppet for JunosPuppet for Junos
Puppet for Junos
 
Puppet
PuppetPuppet
Puppet
 
Intro to Kubernetes
Intro to KubernetesIntro to Kubernetes
Intro to Kubernetes
 
GENI - Seminário - Inatel
GENI - Seminário - InatelGENI - Seminário - Inatel
GENI - Seminário - Inatel
 
Kubernetes From Scratch .pdf
Kubernetes From Scratch .pdfKubernetes From Scratch .pdf
Kubernetes From Scratch .pdf
 
prodops.io k8s presentation
prodops.io k8s presentationprodops.io k8s presentation
prodops.io k8s presentation
 
Integration of real time software modules for reconfigurable sens
Integration of real time software modules for reconfigurable sensIntegration of real time software modules for reconfigurable sens
Integration of real time software modules for reconfigurable sens
 
Puppet for Developers
Puppet for DevelopersPuppet for Developers
Puppet for Developers
 
State of Puppet Amsterdam
State of Puppet AmsterdamState of Puppet Amsterdam
State of Puppet Amsterdam
 
Iteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey MillerIteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
Iteratively introducing Puppet technologies in the brownfield; Jeffrey Miller
 
Puppet - Simple Configuration Management
Puppet - Simple Configuration ManagementPuppet - Simple Configuration Management
Puppet - Simple Configuration Management
 
Adopting Kubernetes with Puppet
Adopting Kubernetes with PuppetAdopting Kubernetes with Puppet
Adopting Kubernetes with Puppet
 
93 99
93 9993 99
93 99
 
Sock Puppets: Growing Your Puppet Codebase
Sock Puppets: Growing Your Puppet CodebaseSock Puppets: Growing Your Puppet Codebase
Sock Puppets: Growing Your Puppet Codebase
 
Sock puppets
Sock puppetsSock puppets
Sock puppets
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to Kubernetes
 
Puppet talk at OSCON 2010.
Puppet talk at OSCON 2010.Puppet talk at OSCON 2010.
Puppet talk at OSCON 2010.
 

More from Puppet

Puppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepoPuppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepoPuppet
 
Puppetcamp r10kyaml
Puppetcamp r10kyamlPuppetcamp r10kyaml
Puppetcamp r10kyamlPuppet
 
2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)Puppet
 
Puppet camp vscode
Puppet camp vscodePuppet camp vscode
Puppet camp vscodePuppet
 
Modules of the twenties
Modules of the twentiesModules of the twenties
Modules of the twentiesPuppet
 
Applying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance codeApplying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance codePuppet
 
KGI compliance as-code approach
KGI compliance as-code approachKGI compliance as-code approach
KGI compliance as-code approachPuppet
 
Enforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationEnforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationPuppet
 
Keynote: Puppet camp compliance
Keynote: Puppet camp complianceKeynote: Puppet camp compliance
Keynote: Puppet camp compliancePuppet
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowPuppet
 
Puppet: The best way to harden Windows
Puppet: The best way to harden WindowsPuppet: The best way to harden Windows
Puppet: The best way to harden WindowsPuppet
 
Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020Puppet
 
Accelerating azure adoption with puppet
Accelerating azure adoption with puppetAccelerating azure adoption with puppet
Accelerating azure adoption with puppetPuppet
 
Puppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet
 
ServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkPuppet
 
Take control of your dev ops dumping ground
Take control of your  dev ops dumping groundTake control of your  dev ops dumping ground
Take control of your dev ops dumping groundPuppet
 
100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy SoftwarePuppet
 
Puppet User Group
Puppet User GroupPuppet User Group
Puppet User GroupPuppet
 
Continuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsContinuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsPuppet
 
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick MaludyThe Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick MaludyPuppet
 

More from Puppet (20)

Puppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepoPuppet camp2021 testing modules and controlrepo
Puppet camp2021 testing modules and controlrepo
 
Puppetcamp r10kyaml
Puppetcamp r10kyamlPuppetcamp r10kyaml
Puppetcamp r10kyaml
 
2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)2021 04-15 operational verification (with notes)
2021 04-15 operational verification (with notes)
 
Puppet camp vscode
Puppet camp vscodePuppet camp vscode
Puppet camp vscode
 
Modules of the twenties
Modules of the twentiesModules of the twenties
Modules of the twenties
 
Applying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance codeApplying Roles and Profiles method to compliance code
Applying Roles and Profiles method to compliance code
 
KGI compliance as-code approach
KGI compliance as-code approachKGI compliance as-code approach
KGI compliance as-code approach
 
Enforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automationEnforce compliance policy with model-driven automation
Enforce compliance policy with model-driven automation
 
Keynote: Puppet camp compliance
Keynote: Puppet camp complianceKeynote: Puppet camp compliance
Keynote: Puppet camp compliance
 
Automating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNowAutomating it management with Puppet + ServiceNow
Automating it management with Puppet + ServiceNow
 
Puppet: The best way to harden Windows
Puppet: The best way to harden WindowsPuppet: The best way to harden Windows
Puppet: The best way to harden Windows
 
Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020Simplified Patch Management with Puppet - Oct. 2020
Simplified Patch Management with Puppet - Oct. 2020
 
Accelerating azure adoption with puppet
Accelerating azure adoption with puppetAccelerating azure adoption with puppet
Accelerating azure adoption with puppet
 
Puppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael PinsonPuppet catalog Diff; Raphael Pinson
Puppet catalog Diff; Raphael Pinson
 
ServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin ReeuwijkServiceNow and Puppet- better together, Kevin Reeuwijk
ServiceNow and Puppet- better together, Kevin Reeuwijk
 
Take control of your dev ops dumping ground
Take control of your  dev ops dumping groundTake control of your  dev ops dumping ground
Take control of your dev ops dumping ground
 
100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software100% Puppet Cloud Deployment of Legacy Software
100% Puppet Cloud Deployment of Legacy Software
 
Puppet User Group
Puppet User GroupPuppet User Group
Puppet User Group
 
Continuous Compliance and DevSecOps
Continuous Compliance and DevSecOpsContinuous Compliance and DevSecOps
Continuous Compliance and DevSecOps
 
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick MaludyThe Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
The Dynamic Duo of Puppet and Vault tame SSL Certificates, Nick Maludy
 

Recently uploaded

Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Valere | Digital Solutions & AI Transformation Portfolio | 2024
Valere | Digital Solutions & AI Transformation Portfolio | 2024Valere | Digital Solutions & AI Transformation Portfolio | 2024
Valere | Digital Solutions & AI Transformation Portfolio | 2024Alexander Turgeon
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimization100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimizationarrow10202532yuvraj
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-pyJamie (Taka) Wang
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdfPaige Cruz
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 

Recently uploaded (20)

Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Valere | Digital Solutions & AI Transformation Portfolio | 2024
Valere | Digital Solutions & AI Transformation Portfolio | 2024Valere | Digital Solutions & AI Transformation Portfolio | 2024
Valere | Digital Solutions & AI Transformation Portfolio | 2024
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimization100+ ChatGPT Prompts for SEO Optimization
100+ ChatGPT Prompts for SEO Optimization
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
20230202 - Introduction to tis-py
20230202 - Introduction to tis-py20230202 - Introduction to tis-py
20230202 - Introduction to tis-py
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf99.99% of Your Traces  Are (Probably) Trash (SRECon NA 2024).pdf
99.99% of Your Traces Are (Probably) Trash (SRECon NA 2024).pdf
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 

11 Ways to Hack Puppet for Fun and Productivity - Luke Kanies - Velocity 2012

Editor's Notes

  1. \n
  2. \n
  3. Commercial tools built for the execs\nOSS built for the toolbuilders, or maybe advanced users\nWe needed a tool that everyone could use\n
  4. We make decisions for you\n1000 knobs\nBrain, complexity blah blah blah\nComplexity through building blocks, rather than big things\n
  5. Fundamental technology that everyone could build on\nThis presentation is largely about the platform aspects\n
  6. Fear that the world would still look the same in 10 years\n- after all, it hadn’t changed much in the previous 10\n- rsh to ssh, but...\nEmbarrassment at how bad the state of IT was\nHatred of thinking SSH was a management tool\n
  7. \n
  8. We don’t want no-ops, we want pervasive ops, accessible ops\n
  9. \n
  10. \n
  11. Remember when 1000 machines was a lot?\n1000 machines by Friday\n1000 machines every Friday\n
  12. Remember maintenance windows?\n96% of outages are caused by human error\n
  13. Air gap\nLeast privilege\nUntrusted clients\n
  14. \n
  15. Platonic ideal of a machine\n
  16. \n
  17. Full ruby DSL\n
  18. Do you really care how RPM works?\nFull simulation mode\nDiscovery, diff, and change\nEasily extensible\nLots of custom types\n
  19. \n
  20. \n
  21. Every half an hour\nHow change progresses through your infrastructure\nExplain:\nFacts\nCatalog\nReport\n
  22. \n
  23. Agent on all of your nodes\nOptional master for compilation, reporting, etc.\n- with no central master, no reporting\n- compilation can be distributed for load reasons\nDashboard is reporting\nForge for code sharing\nLots and lots of data\nAll modes share the same code paths\n
  24. \n
  25. \n
  26. What we’re talking about today\n
  27. \n
  28. \n
  29. \n
  30. Focused on content, not form\nWant to be clear I haven’t sold out\n
  31. \n
  32. \n
  33. These slides and examples prove I haven’t sold out\n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. 750 GB of data per day\n
  40. Every half an hour\nHow change progresses through your infrastructure\nExplain:\nFacts\nCatalog\nReport\n
  41. Graph\nResources and dependencies`\n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. Unfortunately seems to be broken in 2.7.17\nWill be default in 3.0, hopefully\n
  50. Remote files can change w/o affecting configuration\nEasily compare contents\nMuch less network traffic\n
  51. Note the lots of files, throughout the conversation\n
  52. Note that all conversation is up front, rather than on demand\n
  53. Few file content changes, thus much more efficient\nHack because it’s complex\nBut will be default soon - seamless upgrade\nAll about performance and change control\n
  54. \n
  55. \n
  56. 29 lines of code\n8 line method does all the work\n
  57. 29 lines of code\n8 line method does all the work\n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. Simple, but...\nNote very reusable\nLots of content built into the shell script\n
  64. Existing vcsrepo type that you should use for this\n
  65. Better logs\nCreate and delete\nAuditing\n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. Every half an hour\nHow change progresses through your infrastructure\nExplain:\nFacts\nCatalog\nReport\n
  80. \n
  81. \n
  82. \n