SlideShare a Scribd company logo
1 of 103
Puppet @
    Stanford
    University

       Digant C Kasundra
Information Technology Services
      digant@stanford.edu
A Little History...
A Little History...
• Consistency of configuration
A Little History...
• Consistency of configuration
• Consistency of practice
A Little History...
• Consistency of configuration
• Consistency of practice
• Started on August 24th 2006, 2:10pm
A Little History...
• Consistency of configuration
• Consistency of practice
• Started on August 24th 2006, 2:10pm
• 73, 167 lines of puppet manifests
A Little History...
• Consistency of configuration
• Consistency of practice
• Started on August 24th 2006, 2:10pm
• 73, 167 lines of puppet manifests
• 1, 784 classes
A Little History...
• Consistency of configuration
• Consistency of practice
• Started on August 24th 2006, 2:10pm
• 73, 167 lines of puppet manifests
• 1, 784 classes
• 20 sys admins
A Little History...
• Consistency of configuration
• Consistency of practice
• Started on August 24th 2006, 2:10pm
• 73, 167 lines of puppet manifests
• 1, 784 classes
• 20 sys admins
• 4 puppet masters servers, 2 puppet queue servers
Agenda
Agenda
• Coding Practices
Agenda
• Coding Practices
• Packages vs. Puppet
Agenda
• Coding Practices
• Packages vs. Puppet
• Team Practices
Agenda
• Coding Practices
• Packages vs. Puppet
• Team Practices
• Server Practices
Agenda
• Coding Practices
• Packages vs. Puppet
• Team Practices
• Server Practices
• ITIL and other crap as management interfaces
Coding Practices
Coding Practices
• Style Guide
• Reusable Code and Modules
• Well-named
Style Guide
Style Guide
• Legible, easy to parse
Style Guide
• Legible, easy to parse
   • bigger the group, uglier the code
Style Guide
• Legible, easy to parse
   • bigger the group, uglier the code
   • bigger the manifest, the harder to parse
Unclean
tango { “alpha”:
       mode => 600,
       ref => “adam”,
       prelink => “yankee”,
       ensure => present,
}
tango { “delta”:
       mode => 644,
       prelink => “foxtrot”,
       ref => “dave”,
       ensure => present,
}
Pretty
tango {
    “alpha”:
        ensure    =>   present,
        mode      =>   600,
        ref       =>   “adam”,
        prelink   =>   “yankee”;
    “delta”:
        ensure    =>   present,
        mode      =>   644,
        ref       =>   “dave”,
        prelink   =>   “foxtrot”;
}
Unclean
package {
    'gconf2': ensure => present;
}

package {
    'gedit-common': ensure => present;
}

package {
    'gedit-plugins':
        ensure => present;
}
package {
    'gettext': ensure => present;
}

package {'unixodbc':
  ensure => present;
}
package {
    'gedit-plugins':
        ensure => present;
}
package {              Unclean
    'gettext': ensure => present;
}

package {'unixodbc':
  ensure => present;
}

package {
    'usbmount': ensure => present;
}
package {
    'uswsusp': ensure => present;
}
package { 'vbetool':
    ensure => present;
}

package {'vnc4server':
       ensure => present;
}
Pretty
package {
    'gconf2':          ensure   =>   present;
    'gedit-common':    ensure   =>   present;
    'gedit-plugins':   ensure   =>   present;
    'gettext':         ensure   =>   present;
    'unixodbc':        ensure   =>   present;
    'usbmount':        ensure   =>   present;
    'uswsusp':         ensure   =>   present;
    'vbetool':         ensure   =>   present;
    'vnc4server':      ensure   =>   present;
}
Style Guide
• Legible, easy to parse
Style Guide
• Legible, easy to parse
• Sensible chunks of code
Style Guide
• Legible, easy to parse
• Sensible chunks of code
• Develop an ordering scheme
Style Guide
• Legible, easy to parse
• Sensible chunks of code
• Develop an ordering scheme
   • packages on top? files at the end?
Reusable Code
Reusable Code
• logically divide into modules
Reusable Code
• logically divide into modules
    • e.g. ssh, users, apache
Reusable Code
• logically divide into modules
    • e.g. ssh, users, apache
    • break large modules into classes and subclasses
Reusable Code
• logically divide into modules
    • e.g. ssh, users, apache
    • break large modules into classes and subclasses
• use defined types
Reusable Code
• logically divide into modules
    • e.g. ssh, users, apache
    • break large modules into classes and subclasses
• use defined types
    • something reusable with variables
Reusable Code
• logically divide into modules
    • e.g. ssh, users, apache
    • break large modules into classes and subclasses
• use defined types
    • something reusable with variables
• use templates when possible
Reusable Code
• logically divide into modules
    • e.g. ssh, users, apache
    • break large modules into classes and subclasses
• use defined types
    • something reusable with variables
• use templates when possible
• use subclasses
Reusable Code
• logically divide into modules
    • e.g. ssh, users, apache
    • break large modules into classes and subclasses
• use defined types
    • something reusable with variables
• use templates when possible
• use subclasses
    • subclasses do overrides
Well-Named
Well-Named
• name classes and defined types well
Well-Named
• name classes and defined types well
• useful when browsing a catalogue
Well-Named
• name classes and defined types well
• useful when browsing a catalogue
• tell from name alone the expected behavior
Well-Named
• name classes and defined types well
• useful when browsing a catalogue
• tell from name alone the expected behavior
   • ldap
Well-Named
• name classes and defined types well
• useful when browsing a catalogue
• tell from name alone the expected behavior
   • ldap
   • ldap::master
Well-Named
• name classes and defined types well
• useful when browsing a catalogue
• tell from name alone the expected behavior
   • ldap
   • ldap::master
   • ldap::replica
Packages vs. Puppet
Packages vs. Puppet
• Puppet for configurations
Packages vs. Puppet
• Puppet for configurations
• Package anything compiled
Packages vs. Puppet
• Puppet for configurations
• Package anything compiled
• Packages to stage changes
Packages vs. Puppet
• Puppet for configurations
• Package anything compiled
• Packages to stage changes
   • e.g. version, beta, release candidates
Packages vs. Puppet
• Puppet for configurations
• Package anything compiled
• Packages to stage changes
   • e.g. version, beta, release candidates
• Packages handle dependencies much better
Packages vs. Puppet
• Puppet for configurations
• Package anything compiled
• Packages to stage changes
   • e.g. version, beta, release candidates
• Packages handle dependencies much better
   • consider meta packages
Team Practices
Team Practices
• Never make local changes
Team Practices
• Never make local changes
   • prevent reboot mysteries and rebuild
     inconsistencies
Team Practices
• Never make local changes
   • prevent reboot mysteries and rebuild
     inconsistencies
   • “I’ll go put it in Puppet later” -- later never
     comes
Team Practices
• Never make local changes
   • prevent reboot mysteries and rebuild
     inconsistencies
   • “I’ll go put it in Puppet later” -- later never
     comes
   • let Puppet revert changes made locally
Team Practices
• Lock puppet infrequently
Team Practices
• Lock puppet infrequently
   • lock mechanism should track who and why
Team Practices
• Lock puppet infrequently
   • lock mechanism should track who and why
   • enforce a max time for leaving puppet locked
     or disabled
Team Practices
• Lock puppet infrequently
   • lock mechanism should track who and why
   • enforce a max time for leaving puppet locked
     or disabled
   • watch for locked puppet clients
Server Practices
Server Practices
• Apache Passenger
Server Practices
• Apache Passenger
   • solves memory leak issue
Server Practices
• Apache Passenger
   • solves memory leak issue
   • scale easily
Server Practices
• Apache Passenger
   • solves memory leak issue
   • scale easily
• Use version control
Server Practices
• Apache Passenger
   • solves memory leak issue
   • scale easily
• Use version control
   • precommit syntax checks
Server Practices
• Apache Passenger
   • solves memory leak issue
   • scale easily
• Use version control
   • precommit syntax checks
   • use Git (it is truly better)
Server Practices
Server Practices
• Pick a security model
Server Practices
• Pick a security model
    • who can run Puppet?
Server Practices
• Pick a security model
    • who can run Puppet?
    • who can commit?
Server Practices
• Pick a security model
    • who can run Puppet?
    • who can commit?
• certificate
Server Practices
• Pick a security model
    • who can run Puppet?
    • who can commit?
• certificate
    • auto sign?
Server Practices
• Pick a security model
    • who can run Puppet?
    • who can commit?
• certificate
    • auto sign?
    • how do you revoke?
Server Practices
• Pick a security model
    • who can run Puppet?
    • who can commit?
• certificate
    • auto sign?
    • how do you revoke?
• puppet.domain.com?
Server Practices
• Custom Reports
Server Practices
• Custom Reports
   • last check report
Server Practices
• Custom Reports
   • last check report
   • tangled report
ITIL
ITIL
• Why ITIL?
ITIL
• Why ITIL?
   • Because your boss has heard of it
ITIL
• Why ITIL?
   • Because your boss has heard of it
   • It can be a good thing
ITIL
• Environments
ITIL
• Environments
   • Change Management
ITIL
• Environments
   • Change Management
   • (little divergence between stable and dev)
ITIL
• CMDB
ITIL
• CMDB
  • Stored Configs
ITIL
• CMDB
  • Stored Configs
   • use asynchronous stored-configs
ITIL
• CMDB
  • Stored Configs
   • use asynchronous stored-configs
  • CMDBf
ITIL
• CMDB
  • Stored Configs
    • use asynchronous stored-configs
  • CMDBf
  • Custom data types using defined types
Management
Management
• Give management visibility
Management
• Give management visibility
   • Send them the reports
Management
• Give management visibility
   • Send them the reports
   • Puppet Dashboard
Management
• Give management visibility
   • Send them the reports
   • Puppet Dashboard
     • Malkovich
Work Together
Work Together
• Think “Puppet”
Work Together
• Think “Puppet”
• Adopt a style guide
Work Together
• Think “Puppet”
• Adopt a style guide
• Keep it in Puppet
Work Together
• Think “Puppet”
• Adopt a style guide
• Keep it in Puppet
• Watch your logs and reports
?
digant@stanford.edu

More Related Content

What's hot

Frontera распределенный робот для обхода веба в больших объемах / Александр С...
Frontera распределенный робот для обхода веба в больших объемах / Александр С...Frontera распределенный робот для обхода веба в больших объемах / Александр С...
Frontera распределенный робот для обхода веба в больших объемах / Александр С...
Ontico
 
London devops logging
London devops loggingLondon devops logging
London devops logging
Tomas Doran
 

What's hot (20)

RabbitMQ Data Ingestion at Craft Conf
RabbitMQ Data Ingestion at Craft ConfRabbitMQ Data Ingestion at Craft Conf
RabbitMQ Data Ingestion at Craft Conf
 
Building Storage on the Cheap
Building Storage on the CheapBuilding Storage on the Cheap
Building Storage on the Cheap
 
An introduction and future of Ruby coverage library
An introduction and future of Ruby coverage libraryAn introduction and future of Ruby coverage library
An introduction and future of Ruby coverage library
 
A web app in pure Clojure
A web app in pure ClojureA web app in pure Clojure
A web app in pure Clojure
 
Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014Big Data! Great! Now What? #SymfonyCon 2014
Big Data! Great! Now What? #SymfonyCon 2014
 
SCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud Infrastructure
SCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud InfrastructureSCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud Infrastructure
SCALE12X Build a Cloud Day: Chef: The Swiss Army Knife of Cloud Infrastructure
 
Preppingthekitchen 1.0.3
Preppingthekitchen 1.0.3Preppingthekitchen 1.0.3
Preppingthekitchen 1.0.3
 
Integrated Cache on Netscaler
Integrated Cache on NetscalerIntegrated Cache on Netscaler
Integrated Cache on Netscaler
 
Top ten-list
Top ten-listTop ten-list
Top ten-list
 
Blazing Data With Redis (and LEGOS!)
Blazing Data With Redis (and LEGOS!)Blazing Data With Redis (and LEGOS!)
Blazing Data With Redis (and LEGOS!)
 
Boston/NYC Chef for OpenStack Hack Days
Boston/NYC Chef for OpenStack Hack DaysBoston/NYC Chef for OpenStack Hack Days
Boston/NYC Chef for OpenStack Hack Days
 
Profiling php applications
Profiling php applicationsProfiling php applications
Profiling php applications
 
Frontera распределенный робот для обхода веба в больших объемах / Александр С...
Frontera распределенный робот для обхода веба в больших объемах / Александр С...Frontera распределенный робот для обхода веба в больших объемах / Александр С...
Frontera распределенный робот для обхода веба в больших объемах / Александр С...
 
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony AppsSymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
SymfonyCon Madrid 2014 - Rock Solid Deployment of Symfony Apps
 
Australian OpenStack User Group August 2012: Chef for OpenStack
Australian OpenStack User Group August 2012: Chef for OpenStackAustralian OpenStack User Group August 2012: Chef for OpenStack
Australian OpenStack User Group August 2012: Chef for OpenStack
 
London devops logging
London devops loggingLondon devops logging
London devops logging
 
Modern software architectures - PHP UK Conference 2015
Modern software architectures - PHP UK Conference 2015Modern software architectures - PHP UK Conference 2015
Modern software architectures - PHP UK Conference 2015
 
From SaltStack to Puppet and beyond...
From SaltStack to Puppet and beyond...From SaltStack to Puppet and beyond...
From SaltStack to Puppet and beyond...
 
Shall we play a game?
Shall we play a game?Shall we play a game?
Shall we play a game?
 
OpenStack Austin Meetup January 2014: Chef + OpenStack
OpenStack Austin Meetup January 2014: Chef + OpenStackOpenStack Austin Meetup January 2014: Chef + OpenStack
OpenStack Austin Meetup January 2014: Chef + OpenStack
 

Viewers also liked

Opsinthecloud - david nalley
Opsinthecloud - david nalleyOpsinthecloud - david nalley
Opsinthecloud - david nalley
Puppet
 
An Introduction to DevOps with Chef
An Introduction to DevOps with ChefAn Introduction to DevOps with Chef
An Introduction to DevOps with Chef
Julian Dunn
 
Introduction to puppet
Introduction to puppetIntroduction to puppet
Introduction to puppet
Habeeb Rahman
 

Viewers also liked (16)

Webinar - Scaling your Puppet infrastructure
Webinar - Scaling your Puppet infrastructureWebinar - Scaling your Puppet infrastructure
Webinar - Scaling your Puppet infrastructure
 
Opsinthecloud - david nalley
Opsinthecloud - david nalleyOpsinthecloud - david nalley
Opsinthecloud - david nalley
 
Introduction to Puppet Enterprisewebinar
Introduction to Puppet EnterprisewebinarIntroduction to Puppet Enterprisewebinar
Introduction to Puppet Enterprisewebinar
 
Puppet Camp Keynote Q1 2012
Puppet Camp Keynote Q1 2012Puppet Camp Keynote Q1 2012
Puppet Camp Keynote Q1 2012
 
Splunk user group - automating Splunk with Ansible
Splunk user group - automating Splunk with AnsibleSplunk user group - automating Splunk with Ansible
Splunk user group - automating Splunk with Ansible
 
An Introduction to DevOps with Chef
An Introduction to DevOps with ChefAn Introduction to DevOps with Chef
An Introduction to DevOps with Chef
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
 
DevOps Cardiff - Puppet vs Chef vs Ansible
DevOps Cardiff - Puppet vs Chef vs AnsibleDevOps Cardiff - Puppet vs Chef vs Ansible
DevOps Cardiff - Puppet vs Chef vs Ansible
 
Devops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with PuppetDevops : Automate Your Infrastructure with Puppet
Devops : Automate Your Infrastructure with Puppet
 
Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1Overview of Chef - Fundamentals Webinar Series Part 1
Overview of Chef - Fundamentals Webinar Series Part 1
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
 
Puppet overview
Puppet overviewPuppet overview
Puppet overview
 
Introduction to puppet
Introduction to puppetIntroduction to puppet
Introduction to puppet
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an Introduction
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with Chef
 
Adopting Kubernetes with Puppet
Adopting Kubernetes with PuppetAdopting Kubernetes with Puppet
Adopting Kubernetes with Puppet
 

Similar to Puppet101

Project Tools in Web Development
Project Tools in Web DevelopmentProject Tools in Web Development
Project Tools in Web Development
kmloomis
 
20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial
garrett honeycutt
 
modern module development - Ken Barber 2012 Edinburgh Puppet Camp
modern module development - Ken Barber 2012 Edinburgh Puppet Campmodern module development - Ken Barber 2012 Edinburgh Puppet Camp
modern module development - Ken Barber 2012 Edinburgh Puppet Camp
Puppet
 

Similar to Puppet101 (20)

Netflix Nebula - Gradle Summit 2014
Netflix Nebula - Gradle Summit 2014Netflix Nebula - Gradle Summit 2014
Netflix Nebula - Gradle Summit 2014
 
Anti-patterns
Anti-patternsAnti-patterns
Anti-patterns
 
Automated Deployment and Configuration Engines. Ansible
Automated Deployment and Configuration Engines. AnsibleAutomated Deployment and Configuration Engines. Ansible
Automated Deployment and Configuration Engines. Ansible
 
Toplog candy elves - HOCM Talk
Toplog candy elves - HOCM TalkToplog candy elves - HOCM Talk
Toplog candy elves - HOCM Talk
 
4 maven junit
4 maven junit4 maven junit
4 maven junit
 
Building reusable components with generics and protocols
Building reusable components with generics and protocolsBuilding reusable components with generics and protocols
Building reusable components with generics and protocols
 
Variables in Pharo
Variables in PharoVariables in Pharo
Variables in Pharo
 
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQAlvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
Alvaro Videla, Building a Distributed Data Ingestion System with RabbitMQ
 
Puppet Camp Denver 2015: Nagios Management With Puppet
Puppet Camp Denver 2015: Nagios Management With PuppetPuppet Camp Denver 2015: Nagios Management With Puppet
Puppet Camp Denver 2015: Nagios Management With Puppet
 
33rd degree
33rd degree33rd degree
33rd degree
 
Project Tools in Web Development
Project Tools in Web DevelopmentProject Tools in Web Development
Project Tools in Web Development
 
Package manages and Puppet - PuppetConf 2015
Package manages and Puppet - PuppetConf 2015Package manages and Puppet - PuppetConf 2015
Package manages and Puppet - PuppetConf 2015
 
20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial20140406 loa days-tdd-with_puppet_tutorial
20140406 loa days-tdd-with_puppet_tutorial
 
Chef Conf 2015: Package Management & Chef
Chef Conf 2015: Package Management & ChefChef Conf 2015: Package Management & Chef
Chef Conf 2015: Package Management & Chef
 
Love / Hate Puppet (Puppet Gotchas)
Love / Hate Puppet (Puppet Gotchas)Love / Hate Puppet (Puppet Gotchas)
Love / Hate Puppet (Puppet Gotchas)
 
Performance and Abstractions
Performance and AbstractionsPerformance and Abstractions
Performance and Abstractions
 
modern module development - Ken Barber 2012 Edinburgh Puppet Camp
modern module development - Ken Barber 2012 Edinburgh Puppet Campmodern module development - Ken Barber 2012 Edinburgh Puppet Camp
modern module development - Ken Barber 2012 Edinburgh Puppet Camp
 
Concurrency in Python
Concurrency in PythonConcurrency in Python
Concurrency in Python
 
Drupal commerce performance profiling and tunning using loadstorm experiments...
Drupal commerce performance profiling and tunning using loadstorm experiments...Drupal commerce performance profiling and tunning using loadstorm experiments...
Drupal commerce performance profiling and tunning using loadstorm experiments...
 
Puppet Camp Portland: Nagios Management With Puppet (Beginner)
Puppet Camp Portland: Nagios Management With Puppet (Beginner)Puppet Camp Portland: Nagios Management With Puppet (Beginner)
Puppet Camp Portland: Nagios Management With Puppet (Beginner)
 

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 controlrepo
Puppet
 
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
 
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
Puppet
 

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

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Cyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptx
Cyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptxCyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptx
Cyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptx
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Event-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream ProcessingEvent-Driven Architecture Masterclass: Challenges in Stream Processing
Event-Driven Architecture Masterclass: Challenges in Stream Processing
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development Companies
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 

Puppet101

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \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. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n