SlideShare ist ein Scribd-Unternehmen logo
1 von 66
Downloaden Sie, um offline zu lesen
Systems Building Systems
A Puppet Story
What is Puppet?
Language Parser
Client/Server
Resource Abstraction
A few other things...
Luke
Kanies
Recovering Sysadmin
One Goal:
Revolutionize
System
Administration
What is a sysadmin?
Not Exactly Modern
Do tools have
to suck?
Say What?!??
Everything the Same
Everything Distinct
“Best Practices”
Don’t look at me...
I wasn’t the last one to touch it...
SSH   Cfengine   ?
Bad product,
hungry Luke
SSH   Cfengine   ?
SSH   Cfengine   ?
You can either easily manage
 complex systems at scale...
You can either easily manage
 complex systems at scale...

       Or you can’t...
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....”
Competitive Advantage
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
Enter Puppet...
                  Configuration Is
                  Declarative Code
                  Semantics Matter
                  Reproducible
                  Shareable
                  Maintainable
                  Extensible
Developer   Sysadmin
Three
   people




Developer   Sysadmin
An Analogy

                         Programming   SysAdmin


 Low-level,                            commands
                          Assembly
non-portable                            and files

  Abstract,
                             C*        Resources
  portable

 * For small values of
       abstract
Portable Resources
This:
Portable Resources
This:



Becomes:
Portable Resources
This:



Becomes:
Portable Resources
This:



Becomes:
Portable Resources
This:



Becomes:
Portable Resources
This:



Becomes:
Portable
           23 package types
           Users in NetInfo,
           useradd, pw
           Support for Debian,
           Ubuntu, Red Hat,
           Solaris, OS X,
           Gentoo, SuSE,
           FreeBSD, and more
Debian
Debian



Red Hat
Debian



Red Hat
Package
Configuration should
Package    get modified after
          package installation


             Configuration
Configuration should
Package    get modified after
          package installation
                             Service should restart
             Configuration             when
                             configuration changes


                                   Service
Idempotence...
Idempotence...
Idempotence...

 Describes the property of operations in mathematics
and computer science which yield the same result after
        the operation is applied multiple times.
Network Effects
Code




          Puppetmasterd




puppetd                   puppetd
 OS X                      in the
            puppetd
                           cloud
             Linux
Every Client:
Every Client:
     Retrieve resource catalog from central
     server
Every Client:
     Retrieve resource catalog from central
     server
     Determine resource order
Every Client:
     Retrieve resource catalog from central
     server
     Determine resource order
     Check each resource in turn, fixing if
     necessary
Every Client:
     Retrieve resource catalog from central
     server
     Determine resource order
     Check each resource in turn, fixing if
     necessary
     Rinse and repeat, every 30 minutes
Every Resource:
Every Resource:
    Retrieve current state (e.g., by querying dpkg
    db or doing a stat)
Every Resource:
    Retrieve current state (e.g., by querying dpkg
    db or doing a stat)
    Compare to desired state
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)
Image from http://flickr.com/photos/pingnews/132543603/
Questions?
andrew@reductivelabs
twitter.com/littleidea

Weitere ähnliche Inhalte

Andere mochten auch

Zechariah 3: Cleansed, Called and Challenged
Zechariah 3: Cleansed, Called and ChallengedZechariah 3: Cleansed, Called and Challenged
Zechariah 3: Cleansed, Called and Challenged
Jonathan Swales
 
假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务
假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务
假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务
zcopdane
 
Empresa Educa
Empresa EducaEmpresa Educa
Empresa Educa
montsedf
 
London Mapping Marathon Lightening Talk at SOTM2008
London Mapping Marathon Lightening Talk at SOTM2008London Mapping Marathon Lightening Talk at SOTM2008
London Mapping Marathon Lightening Talk at SOTM2008
Shaun McDonald
 
Electricity Power Point
Electricity Power PointElectricity Power Point
Electricity Power Point
room112008
 
Heb Research Proposal 260108
Heb Research Proposal 260108Heb Research Proposal 260108
Heb Research Proposal 260108
watchthefly
 
女人一路走好
女人一路走好女人一路走好
女人一路走好
wcjmaomao
 

Andere mochten auch (20)

Intimus Presentatie Voorstelling
Intimus Presentatie VoorstellingIntimus Presentatie Voorstelling
Intimus Presentatie Voorstelling
 
Slideshow Elster
Slideshow ElsterSlideshow Elster
Slideshow Elster
 
Sahya Part 9
Sahya Part 9Sahya Part 9
Sahya Part 9
 
Frame- interazione tra persone ed oggetti in rete
Frame- interazione tra persone ed oggetti in reteFrame- interazione tra persone ed oggetti in rete
Frame- interazione tra persone ed oggetti in rete
 
Datorn Och Mobilen
Datorn Och MobilenDatorn Och Mobilen
Datorn Och Mobilen
 
Zechariah 3: Cleansed, Called and Challenged
Zechariah 3: Cleansed, Called and ChallengedZechariah 3: Cleansed, Called and Challenged
Zechariah 3: Cleansed, Called and Challenged
 
假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务
假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务
假人攻击器|蚂蚁帝国假人|DDOS攻击业务|DDos业务
 
Atropelloscontralafauna
AtropelloscontralafaunaAtropelloscontralafauna
Atropelloscontralafauna
 
Affitta Un Nonno_Lab Design Concept
Affitta Un Nonno_Lab Design ConceptAffitta Un Nonno_Lab Design Concept
Affitta Un Nonno_Lab Design Concept
 
Empresa Educa
Empresa EducaEmpresa Educa
Empresa Educa
 
London Mapping Marathon Lightening Talk at SOTM2008
London Mapping Marathon Lightening Talk at SOTM2008London Mapping Marathon Lightening Talk at SOTM2008
London Mapping Marathon Lightening Talk at SOTM2008
 
C H A P T E R 1 N O T E S
C H A P T E R 1  N O T E SC H A P T E R 1  N O T E S
C H A P T E R 1 N O T E S
 
Electricity Power Point
Electricity Power PointElectricity Power Point
Electricity Power Point
 
Malediven
MaledivenMalediven
Malediven
 
Tutorial
TutorialTutorial
Tutorial
 
Heb Research Proposal 260108
Heb Research Proposal 260108Heb Research Proposal 260108
Heb Research Proposal 260108
 
Dr. William Allan Kritsonis, Educational Philosophy
Dr. William Allan Kritsonis, Educational PhilosophyDr. William Allan Kritsonis, Educational Philosophy
Dr. William Allan Kritsonis, Educational Philosophy
 
gopala
gopalagopala
gopala
 
Picture my World - Promotional slideshow
Picture my World - Promotional slideshowPicture my World - Promotional slideshow
Picture my World - Promotional slideshow
 
女人一路走好
女人一路走好女人一路走好
女人一路走好
 

Ähnlich wie Systems building Systems: A Puppet Story

Systems building-systems-a-puppet-story-19133
Systems building-systems-a-puppet-story-19133Systems building-systems-a-puppet-story-19133
Systems building-systems-a-puppet-story-19133
guestd90cb0
 
Drupalcamp es 2013 drupal with lxc docker and vagrant
Drupalcamp es 2013  drupal with lxc docker and vagrant Drupalcamp es 2013  drupal with lxc docker and vagrant
Drupalcamp es 2013 drupal with lxc docker and vagrant
Ricardo Amaro
 
Automate drupal deployments with linux containers, docker and vagrant
Automate drupal deployments with linux containers, docker and vagrant Automate drupal deployments with linux containers, docker and vagrant
Automate drupal deployments with linux containers, docker and vagrant
Ricardo Amaro
 
4 implementation
4 implementation4 implementation
4 implementation
hanmya
 

Ähnlich wie Systems building Systems: A Puppet Story (20)

Systems building-systems-a-puppet-story-19133
Systems building-systems-a-puppet-story-19133Systems building-systems-a-puppet-story-19133
Systems building-systems-a-puppet-story-19133
 
Containers for Science and High-Performance Computing
Containers for Science and High-Performance ComputingContainers for Science and High-Performance Computing
Containers for Science and High-Performance Computing
 
Kubernetes: My BFF
Kubernetes: My BFFKubernetes: My BFF
Kubernetes: My BFF
 
Workflow story: Theory versus Practice in large enterprises by Marcin Piebiak
Workflow story: Theory versus Practice in large enterprises by Marcin PiebiakWorkflow story: Theory versus Practice in large enterprises by Marcin Piebiak
Workflow story: Theory versus Practice in large enterprises by Marcin Piebiak
 
Workflow story: Theory versus practice in Large Enterprises
Workflow story: Theory versus practice in Large EnterprisesWorkflow story: Theory versus practice in Large Enterprises
Workflow story: Theory versus practice in Large Enterprises
 
ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...
ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...
ContainerDays Boston 2015: "CoreOS: Building the Layers of the Scalable Clust...
 
Building SuperComputers @ Home
Building SuperComputers @ HomeBuilding SuperComputers @ Home
Building SuperComputers @ Home
 
Drupalcamp es 2013 drupal with lxc docker and vagrant
Drupalcamp es 2013  drupal with lxc docker and vagrant Drupalcamp es 2013  drupal with lxc docker and vagrant
Drupalcamp es 2013 drupal with lxc docker and vagrant
 
DevOps(4) : Ansible(2) - (MOSG)
DevOps(4) : Ansible(2) - (MOSG)DevOps(4) : Ansible(2) - (MOSG)
DevOps(4) : Ansible(2) - (MOSG)
 
Automate drupal deployments with linux containers, docker and vagrant
Automate drupal deployments with linux containers, docker and vagrant Automate drupal deployments with linux containers, docker and vagrant
Automate drupal deployments with linux containers, docker and vagrant
 
Containerization is more than the new Virtualization: enabling separation of ...
Containerization is more than the new Virtualization: enabling separation of ...Containerization is more than the new Virtualization: enabling separation of ...
Containerization is more than the new Virtualization: enabling separation of ...
 
.ppt
.ppt.ppt
.ppt
 
Pilot Tech Talk #10 — Practical automation by Kamil Cholewiński
Pilot Tech Talk #10 — Practical automation by Kamil CholewińskiPilot Tech Talk #10 — Practical automation by Kamil Cholewiński
Pilot Tech Talk #10 — Practical automation by Kamil Cholewiński
 
Managing Postgres with Ansible
Managing Postgres with AnsibleManaging Postgres with Ansible
Managing Postgres with Ansible
 
Tuning systemd for embedded
Tuning systemd for embeddedTuning systemd for embedded
Tuning systemd for embedded
 
Systemd: the modern Linux init system you will learn to love
Systemd: the modern Linux init system you will learn to loveSystemd: the modern Linux init system you will learn to love
Systemd: the modern Linux init system you will learn to love
 
Introducing Ansible
Introducing AnsibleIntroducing Ansible
Introducing Ansible
 
4 implementation
4 implementation4 implementation
4 implementation
 
Puppet for SysAdmins
Puppet for SysAdminsPuppet for SysAdmins
Puppet for SysAdmins
 
Skynet vs. Planet of The Apes: Duel!
Skynet vs. Planet of The Apes: Duel!Skynet vs. Planet of The Apes: Duel!
Skynet vs. Planet of The Apes: Duel!
 

Mehr von Andrew Shafer

I build the future - Agile 2014
I build the future - Agile 2014I build the future - Agile 2014
I build the future - Agile 2014
Andrew Shafer
 
cloud foundry summit - no talent shortage
cloud foundry summit - no talent shortagecloud foundry summit - no talent shortage
cloud foundry summit - no talent shortage
Andrew Shafer
 

Mehr von Andrew Shafer (20)

We Must Always Take Sides
We Must Always Take SidesWe Must Always Take Sides
We Must Always Take Sides
 
Always Take Sides
Always Take SidesAlways Take Sides
Always Take Sides
 
DevSecOps: The End of the Beginning - Austin
DevSecOps: The End of the Beginning - AustinDevSecOps: The End of the Beginning - Austin
DevSecOps: The End of the Beginning - Austin
 
deep devops - learning to learn dotScale 2017
deep devops - learning to learn dotScale 2017deep devops - learning to learn dotScale 2017
deep devops - learning to learn dotScale 2017
 
do you see what I see?
do you see what I see?do you see what I see?
do you see what I see?
 
the end of the beginning - devopsdays Denver 2017
the end of the beginning - devopsdays Denver 2017the end of the beginning - devopsdays Denver 2017
the end of the beginning - devopsdays Denver 2017
 
Chop Wood, Carry Water
Chop Wood, Carry WaterChop Wood, Carry Water
Chop Wood, Carry Water
 
transforming how the world operates software
transforming how the world operates softwaretransforming how the world operates software
transforming how the world operates software
 
Architecture, what does it even mean?
Architecture, what does it even mean?Architecture, what does it even mean?
Architecture, what does it even mean?
 
devops, platforms and devops platforms
devops, platforms and devops platformsdevops, platforms and devops platforms
devops, platforms and devops platforms
 
Patterns of Cloud Native Architecture
Patterns of Cloud Native ArchitecturePatterns of Cloud Native Architecture
Patterns of Cloud Native Architecture
 
container crash course
container crash coursecontainer crash course
container crash course
 
devops, microservices, and platforms, oh my!
devops, microservices, and platforms, oh my!devops, microservices, and platforms, oh my!
devops, microservices, and platforms, oh my!
 
Bosh - Configuring Services
Bosh - Configuring ServicesBosh - Configuring Services
Bosh - Configuring Services
 
I build the future - Agile 2014
I build the future - Agile 2014I build the future - Agile 2014
I build the future - Agile 2014
 
Unicorns, Dragons, Open Source Business Models and Other Mythical Creatures
Unicorns, Dragons, Open Source Business Models and Other Mythical CreaturesUnicorns, Dragons, Open Source Business Models and Other Mythical Creatures
Unicorns, Dragons, Open Source Business Models and Other Mythical Creatures
 
Open is as Open does
Open is as Open doesOpen is as Open does
Open is as Open does
 
How did your organizational learning game come up? - Velocity 2014
How did your organizational learning game come up? - Velocity 2014How did your organizational learning game come up? - Velocity 2014
How did your organizational learning game come up? - Velocity 2014
 
cloud foundry summit - no talent shortage
cloud foundry summit - no talent shortagecloud foundry summit - no talent shortage
cloud foundry summit - no talent shortage
 
OpenStack - an authentic critique
OpenStack - an authentic critiqueOpenStack - an authentic critique
OpenStack - an authentic critique
 

Kürzlich hochgeladen

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Kürzlich hochgeladen (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Systems building Systems: A Puppet Story