SlideShare ist ein Scribd-Unternehmen logo
1 von 42
Downloaden Sie, um offline zu lesen
Puppet
            for Sysadmins
           PuppetCamp 2013 – Melbourne

Download from – http://www.icesystems.com.au/puppet
Och Aye The Noo!
               (oh yes, right now!)

Stephen Wallace
20 years experience
Predom *nix / sysadmin background
Senior management - teams up to 20
Large heavily integrated systems
Health, Online Gaming, Recruitment
ICE Systems 18 mths....one of the Puppet go to
  guys
stephen.wallace@icesystems.com.au
Linkedin:
  http://au.linkedin.com/in/stephenwallace
Who am I talking to?

    Sysadmin

    Operations management

    Nae sayers?

    ...and the Puppet newbs


       …and why should you listen?
Spot the challenge!
An extract from my Linkedin profile
(au.linkedin.com/in/stephenwallace)

 Harvey Nash, Database Administrator, London
 Hays Personnel Services, IT Manager ANZ, Sydney
 Saffron Consulting, Unix/Linux Consultant, Sydney
 Corporate Express, Business Systems Manager, Sydney
 NHS, Unix Services Manager, Glasgow
 Casino.com, Technical Operations Manager, Gibraltar
 Healthecare Aust, IT Operations Manager, Sydney
 ICE Systems, Solution Architect, Sydney
Puppet
      ...for
Non-proggies : 101
 PuppetCamp 2013 - Sydney
Begin with the end in mind
“Would you tell me, please, which way I ought to go from here?”

“That depends a good deal on where you want to get to“, said the
cat.

“I don’t much care where”, said Alice.

“Then it doesn’t matter which way you go”, said the cat.

(Alice's Adventures in Wonderland, chapter 6)

            ...the importance of goals
Goals!
        Talkers                    Doers
   (AKA Management)        (You know who you are)

       Availability


       Scalability


     Supportability


      Predictability


         Agility


KeepTheCostsDownAbility!


   …and Cloudability
Goals for doers?

    Reusable wins.....everybody listening?

    Fix stuff once

    Reduce support workload, so can finally get to that more
    interesting project stuff!

    Monitoring....that someone else maintains :)

    Documentation...ditto

    Weekends / sleep

    Pub by 5   (past 4 preferably)
Goals for everybody?
Recent Engagements
 Research-centric academic institution
 Publishing / media company
 Insurance brokerage
 Ecommerce / magazine

 Commonalities
 Small teams

 No opex budget

 # Users / power users up

 Provisioning demands up

 Diversity up
           Ratio of dev lead : ops lead initiatives.......

                               3:1
What I did NOT need




!     ...a neckbeard,   ..or, an Apple Macbook
What I DID need

• A paradigm shift



                       ALSO…




Willingness to learn     Willingness to collaborate
Times are a Changin'
               Installing a new web server...

Then (with a cast of 1000s)    Now...via templates
Rack n stack                   Launch hypervisor or AWS
                               Management Console
Install and lock down o/s      Choose your template
Pass to application / web      Click a button
team
Pass to database team
Configure some monitoring
Draw some diagrams n
document.
Test, and transition thru
change
management...fingers
crossed.
...and with Puppet, it can get a bit easier!
Initial reaction to the word...

“Devops”...




The objection is rarely the
 objection!
“We are not proggies, we're sys admins”
Keep Calm, ...and Carry On
“Proggie syntax is WAY
             too hard...”
Ops boys and girls love scripting...right?
Puppet can write Puppet code!
 puppet resource user...handy!
 puppet resource - types (lots of fun for all the family)
 ...and there's lots of “inspirational” stuff from the Forge
  ( http://forge.puppetlabs.com )!
        puppet module search mysql (gem install puppet-module)
Building a module, the easy way
A simple manifest
`puppet resource service ssh` - outputs valid
syntax
A module
`puppet module generate x-blah` - Rename module
dir and make sure this is reflected in the class name in
manifests/init.pp and tests/init.pp
A class
already in the `tests` directory.
Puppet apply -v ./init.pp --noop
Native tools for syntax checking
puppet parser validate blah.pp
Syntax Highlighting Tools
Put a bit of colour in your life...
vim-puppet




syntastic - similar
There will still be a few
       sceptics
Geppetto
 Have a look! Self contained IDE
 Syntax examples with mouseover
 Autocorrects stuff!
 Integrates with source control
 Integrates into CI
 Integrates with the Forge!
A question of style?
Finding this all a bit testing?
Rspec-puppet - why test your modules,
using yet another language?




Check it out...http://rspec-puppet.com/
Hiera!

 How can it benefit the ops crowd?
   A simple pluggable, hierarchical
    database
   Included with Puppet Enterprise, gem
    install for opensource
   Allows data to be separated from code
   Cleaner, more supportable manifests
How does Hiera work?
HTTP VS APACHE2?
hiera.conf…you know conf files...right?!
:hierarchy:
  - nodes/%{fqdn}

  - %{operatingsystem}
  - common
:backends: - yaml
:yaml:
  :datadir: '/etc/puppetlabs/hieradata'

root@hpmini:~# facter operatingsystem
Ubuntu
root@hpmini:/etc/puppetlabs/hieradata/Ubuntu# cat common.yaml
webserver: apache2
Hiera syntax
 You either do this...
centos, redhat, oel, oraclelinux, linux: {

  $supported = true
                                                            Or this…
  $webserver = [ "apache2" ]
                                                $webserver = hiera('webserver','httpd')
  $svc_name = "apache2"
                                                 if $webserver != 'nil' {
  $config    = "/etc/apache2/httpd.conf"
                                                  package { $webserver:
  if $::operatingsystemrelease =~ /^5/ {
                                                      ensure => present
  $config_tpl = 'httpd.conf.el.erb'
                                                  }
  } elsif $::operatingsystemrelease =~ /^6/ {

   $config_tpl = 'httpd.conf.el6.erb'

  } else {

    fail("the webserver module doesn't know
   what template to use for your $
   {::operatingsystemrelease}")
Augeus!
         Love those conf files...

  $defaultrunlevel = hiera('defaultrunlevel','3')
     augeas { "runlevel":
         context => "/files/etc/inittab",
      changes => [
          "set id/runlevels $
     {defaultrunlevel}",                     ],
     }


root@hpmini:/etc/puppetlabs/hieradata/production#
  grep defaultrunlevel common.yaml
defaultrunlevel: 3
Ruby – Not that scary
 Deep breath...
   yum install blah.rpm (familiar?)
   apt-get install stuff
   ...gem install puppet-lint (!)
Provisioning

     - libvirt, EC2, RHEV


     - Oracle Virtualbox


Puppet’s
 • Razor. Growing popularity
 • AWS & VMWare!
MCollective
Benefits?
• How many of my machines are running
  RHEL 6.1?
• How many are running a particular release
  of a software package?
• Monitor all of my servers for a resource
  level?

Mcollective can help manage, monitor,
 control Puppet, collect performance and
 inventory data...so...so...check it out!
The Holy Trinity
IT Ops Management Challenges
                              Responding to
Productivity and Efficiency
                              Business Needs




   Configuration Drift        Lack of Visibility
What it's like in the trenches



                 Application        Application       Systems           Application        Database
Service Desk      Support           Developer       Administrator       Developer        Administrator


Log call. The        Java           Stop working       Stop what           Manual        DBA analyzes
console says      monitoring       on new code to   they’re doing to    investigation      audit logs
everything is     tools don’t       troubleshoot.     identify and     establishes not   which points
   green.       show anything            Need            gather          application
                                                                                         to bad query.
                either. Call the      production    production logs       problem.
                  developer.             logs!       for developer.
                                                                                           Now
Escalate.         Escalate.         Escalate.         Respond           Escalate.         what?
                                                         .
Monitoring detects the
service outage - Nagios
Root Cause Analysis - Splunk
• IT Operations review monitoring info, and feed relevant details
  into Splunk for event correlation over all enterprise devices




A config file has been manually updated….badly, causing the outage
Fix It Once!

• Write a manifest to manage the files and fix
  the issue

• Maybe use Puppet to write the Nagios cfg
  “Exported resources” / templates

• Monitoring = green lights
But we're an enterprise shop
...Puppet's not quite there yet,
  Shirley?
Client side
• Ruby brush n scrub up. Load reduced.
• Good install support
Server side
•
    PuppetDB
•
    Phusion Passenger
•
    ActiveMQ
•
    REST API
Reinvent yourself
    every 2 years
 New tools?!…but we’re
making too much progress!




                            Devops person?
Training helps

Puppet Fundamentals
Productive in a day, or two




          Certification program
          Puppet Professional + Puppet
          Developer
             -> Puppet Master
Any other useful stuff?
• What about DR? (Dont forget your certs!)
• Automated doco?
   • /etc/puppet/modules/ssh/manifests# puppet
     doc ./init.pp
• Dependency diagrams
   • dot -Tpng /var/opt/lib/pe-
     puppet/state/graphs/resources.dot -o
     /tmp/configuration.png


Still sounds risky? --noop!
Even the CAB will like you!
Puppet Enterprise, why do
       people choose it?
Many of the tools are pre-compiled
Low stress, upgradable solution
Ceiling install...peace of mind
Dashboard
Mcollective
Cloud Provisioner - AWS & VMWare
Supportable :)


So what your next step?
Start small, and KISS!
 “A journey of a 1000 miles...”             A.N. Other Smart Person

 Just start!
 Download the training VM
 Do the tutorials
 Use the Forge for inspiration!
 Use Google Groups – puppet-users@googlegroups.com
  to start
 ...then puppet-dev@ when confidence starts to grow
 Use the supporting toolsets
 Use –noop! Derisk n smile
 Padding on the right shoulder might also be useful...
“We're not proggies...
       we're sys admins!”
Plenty of options available to the
sysadmins who does not retool...




                    or
References
Learn Puppet in small chunks...
http://info.puppetlabs.com/download-pdfs.html
http://forge.puppetlabs.com/
http://docs.puppetlabs.com/guides/tools.html
puppet-rspec - Easy intro http://puppetlabs.com/blog/the-
next-generation-of-puppet-module-testing/
http://theforeman.org/, http://www.vagrantup.com/
http://cloudsmith.github.com/geppetto/


            Puppet for sysadmins...

Weitere ähnliche Inhalte

Was ist angesagt?

Puppet: From 0 to 100 in 30 minutes
Puppet: From 0 to 100 in 30 minutesPuppet: From 0 to 100 in 30 minutes
Puppet: From 0 to 100 in 30 minutesAlessandro Franceschi
 
Puppi. Puppet strings to the shell
Puppi. Puppet strings to the shellPuppi. Puppet strings to the shell
Puppi. Puppet strings to the shellAlessandro Franceschi
 
Puppet at GitHub / ChatOps
Puppet at GitHub / ChatOpsPuppet at GitHub / ChatOps
Puppet at GitHub / ChatOpsPuppet
 
Puppet for dummies - ZendCon 2011 Edition
Puppet for dummies - ZendCon 2011 EditionPuppet for dummies - ZendCon 2011 Edition
Puppet for dummies - ZendCon 2011 EditionJoshua Thijssen
 
Puppet modules for Fun and Profit
Puppet modules for Fun and ProfitPuppet modules for Fun and Profit
Puppet modules for Fun and ProfitAlessandro Franceschi
 
Puppet modules: An Holistic Approach
Puppet modules: An Holistic ApproachPuppet modules: An Holistic Approach
Puppet modules: An Holistic ApproachAlessandro Franceschi
 
Learning puppet chapter 3
Learning puppet chapter 3Learning puppet chapter 3
Learning puppet chapter 3Vishal Biyani
 
Learn Puppet : Quest Guide for the Learning VM
Learn Puppet : Quest Guide for the Learning VMLearn Puppet : Quest Guide for the Learning VM
Learn Puppet : Quest Guide for the Learning VMKumaran Balachandran
 
Puppet modules: A Holistic Approach - Geneva
Puppet modules: A Holistic Approach - GenevaPuppet modules: A Holistic Approach - Geneva
Puppet modules: A Holistic Approach - GenevaAlessandro Franceschi
 
Puppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in ModulesPuppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in ModulesMartin Alfke
 
Puppet_training
Puppet_trainingPuppet_training
Puppet_trainingAfroz Hussain
 
Essential applications management with Tiny Puppet
Essential applications management with Tiny PuppetEssential applications management with Tiny Puppet
Essential applications management with Tiny PuppetAlessandro Franceschi
 
Introduction to Puppet Scripting
Introduction to Puppet ScriptingIntroduction to Puppet Scripting
Introduction to Puppet ScriptingAchieve Internet
 
Puppet Camp Portland 2015: Introduction to Hiera (Beginner)
Puppet Camp Portland 2015: Introduction to Hiera (Beginner)Puppet Camp Portland 2015: Introduction to Hiera (Beginner)
Puppet Camp Portland 2015: Introduction to Hiera (Beginner)Puppet
 
Oliver hookins puppetcamp2011
Oliver hookins puppetcamp2011Oliver hookins puppetcamp2011
Oliver hookins puppetcamp2011Puppet
 
Doing It Wrong with Puppet -
Doing It Wrong with Puppet - Doing It Wrong with Puppet -
Doing It Wrong with Puppet - Puppet
 
Replacing "exec" with a type and provider: Return manifests to a declarative ...
Replacing "exec" with a type and provider: Return manifests to a declarative ...Replacing "exec" with a type and provider: Return manifests to a declarative ...
Replacing "exec" with a type and provider: Return manifests to a declarative ...Puppet
 
Puppet camp chicago-automated_testing2
Puppet camp chicago-automated_testing2Puppet camp chicago-automated_testing2
Puppet camp chicago-automated_testing2nottings
 
Pro Puppet
Pro PuppetPro Puppet
Pro Puppetdsadas
 

Was ist angesagt? (20)

Puppet: From 0 to 100 in 30 minutes
Puppet: From 0 to 100 in 30 minutesPuppet: From 0 to 100 in 30 minutes
Puppet: From 0 to 100 in 30 minutes
 
Puppi. Puppet strings to the shell
Puppi. Puppet strings to the shellPuppi. Puppet strings to the shell
Puppi. Puppet strings to the shell
 
Puppet at GitHub / ChatOps
Puppet at GitHub / ChatOpsPuppet at GitHub / ChatOps
Puppet at GitHub / ChatOps
 
Puppet for dummies - ZendCon 2011 Edition
Puppet for dummies - ZendCon 2011 EditionPuppet for dummies - ZendCon 2011 Edition
Puppet for dummies - ZendCon 2011 Edition
 
Puppet modules for Fun and Profit
Puppet modules for Fun and ProfitPuppet modules for Fun and Profit
Puppet modules for Fun and Profit
 
Anatomy of a reusable module
Anatomy of a reusable moduleAnatomy of a reusable module
Anatomy of a reusable module
 
Puppet modules: An Holistic Approach
Puppet modules: An Holistic ApproachPuppet modules: An Holistic Approach
Puppet modules: An Holistic Approach
 
Learning puppet chapter 3
Learning puppet chapter 3Learning puppet chapter 3
Learning puppet chapter 3
 
Learn Puppet : Quest Guide for the Learning VM
Learn Puppet : Quest Guide for the Learning VMLearn Puppet : Quest Guide for the Learning VM
Learn Puppet : Quest Guide for the Learning VM
 
Puppet modules: A Holistic Approach - Geneva
Puppet modules: A Holistic Approach - GenevaPuppet modules: A Holistic Approach - Geneva
Puppet modules: A Holistic Approach - Geneva
 
Puppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in ModulesPuppet Camp Paris 2016 Data in Modules
Puppet Camp Paris 2016 Data in Modules
 
Puppet_training
Puppet_trainingPuppet_training
Puppet_training
 
Essential applications management with Tiny Puppet
Essential applications management with Tiny PuppetEssential applications management with Tiny Puppet
Essential applications management with Tiny Puppet
 
Introduction to Puppet Scripting
Introduction to Puppet ScriptingIntroduction to Puppet Scripting
Introduction to Puppet Scripting
 
Puppet Camp Portland 2015: Introduction to Hiera (Beginner)
Puppet Camp Portland 2015: Introduction to Hiera (Beginner)Puppet Camp Portland 2015: Introduction to Hiera (Beginner)
Puppet Camp Portland 2015: Introduction to Hiera (Beginner)
 
Oliver hookins puppetcamp2011
Oliver hookins puppetcamp2011Oliver hookins puppetcamp2011
Oliver hookins puppetcamp2011
 
Doing It Wrong with Puppet -
Doing It Wrong with Puppet - Doing It Wrong with Puppet -
Doing It Wrong with Puppet -
 
Replacing "exec" with a type and provider: Return manifests to a declarative ...
Replacing "exec" with a type and provider: Return manifests to a declarative ...Replacing "exec" with a type and provider: Return manifests to a declarative ...
Replacing "exec" with a type and provider: Return manifests to a declarative ...
 
Puppet camp chicago-automated_testing2
Puppet camp chicago-automated_testing2Puppet camp chicago-automated_testing2
Puppet camp chicago-automated_testing2
 
Pro Puppet
Pro PuppetPro Puppet
Pro Puppet
 

Ähnlich wie Puppet for Sysadmins Guide at PuppetCamp 2013

Using Puppet - Real World Configuration Management
Using Puppet - Real World Configuration ManagementUsing Puppet - Real World Configuration Management
Using Puppet - Real World Configuration ManagementJames Turnbull
 
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsContinuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsMike Brittain
 
Puppet for dummies - PHPBenelux UG edition
Puppet for dummies - PHPBenelux UG editionPuppet for dummies - PHPBenelux UG edition
Puppet for dummies - PHPBenelux UG editionJoshua Thijssen
 
Cloudops fundamentals management, tdd, test driven design, continuous integra...
Cloudops fundamentals management, tdd, test driven design, continuous integra...Cloudops fundamentals management, tdd, test driven design, continuous integra...
Cloudops fundamentals management, tdd, test driven design, continuous integra...Bret Piatt
 
4Developers 2015: Continuous Security in DevOps - Maciej Lasyk
4Developers 2015: Continuous Security in DevOps - Maciej Lasyk4Developers 2015: Continuous Security in DevOps - Maciej Lasyk
4Developers 2015: Continuous Security in DevOps - Maciej LasykPROIDEA
 
Continuous Security in DevOps
Continuous Security in DevOpsContinuous Security in DevOps
Continuous Security in DevOpsMaciej Lasyk
 
Developing IT infrastructures with Puppet
Developing IT infrastructures with PuppetDeveloping IT infrastructures with Puppet
Developing IT infrastructures with PuppetAlessandro Franceschi
 
Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1Max De Marzi
 
From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011Carlos Sanchez
 
30 days or less: New Features to Production
30 days or less: New Features to Production30 days or less: New Features to Production
30 days or less: New Features to ProductionKarthik Gaekwad
 
Get your organization’s feet wet with Semantic Web Technologies
Get your organization’s feet wet with Semantic Web TechnologiesGet your organization’s feet wet with Semantic Web Technologies
Get your organization’s feet wet with Semantic Web TechnologiesAndré Torkveen
 
Open Source Software For Education
Open Source Software For EducationOpen Source Software For Education
Open Source Software For EducationVideoguy
 
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ńskiPilot
 
Puppet: Eclipsecon ALM 2013
Puppet: Eclipsecon ALM 2013Puppet: Eclipsecon ALM 2013
Puppet: Eclipsecon ALM 2013grim_radical
 
Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...
Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...
Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...DevOpsDays Tel Aviv
 
Clustered PHP - DC PHP 2009
Clustered PHP - DC PHP 2009Clustered PHP - DC PHP 2009
Clustered PHP - DC PHP 2009marcelesser
 
Product! - The road to production deployment
Product! - The road to production deploymentProduct! - The road to production deployment
Product! - The road to production deploymentFilippo Zanella
 

Ähnlich wie Puppet for Sysadmins Guide at PuppetCamp 2013 (20)

Using Puppet - Real World Configuration Management
Using Puppet - Real World Configuration ManagementUsing Puppet - Real World Configuration Management
Using Puppet - Real World Configuration Management
 
Continuous Delivery: The Dirty Details
Continuous Delivery: The Dirty DetailsContinuous Delivery: The Dirty Details
Continuous Delivery: The Dirty Details
 
Puppet for dummies - PHPBenelux UG edition
Puppet for dummies - PHPBenelux UG editionPuppet for dummies - PHPBenelux UG edition
Puppet for dummies - PHPBenelux UG edition
 
Cloudops fundamentals management, tdd, test driven design, continuous integra...
Cloudops fundamentals management, tdd, test driven design, continuous integra...Cloudops fundamentals management, tdd, test driven design, continuous integra...
Cloudops fundamentals management, tdd, test driven design, continuous integra...
 
Dev ops
Dev opsDev ops
Dev ops
 
Agility for Data
Agility for DataAgility for Data
Agility for Data
 
4Developers 2015: Continuous Security in DevOps - Maciej Lasyk
4Developers 2015: Continuous Security in DevOps - Maciej Lasyk4Developers 2015: Continuous Security in DevOps - Maciej Lasyk
4Developers 2015: Continuous Security in DevOps - Maciej Lasyk
 
Continuous Security in DevOps
Continuous Security in DevOpsContinuous Security in DevOps
Continuous Security in DevOps
 
Developing IT infrastructures with Puppet
Developing IT infrastructures with PuppetDeveloping IT infrastructures with Puppet
Developing IT infrastructures with Puppet
 
Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1
 
Infrastructure Automation
Infrastructure Automation Infrastructure Automation
Infrastructure Automation
 
From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011From Dev to DevOps - Apache Barcamp Spain 2011
From Dev to DevOps - Apache Barcamp Spain 2011
 
30 days or less: New Features to Production
30 days or less: New Features to Production30 days or less: New Features to Production
30 days or less: New Features to Production
 
Get your organization’s feet wet with Semantic Web Technologies
Get your organization’s feet wet with Semantic Web TechnologiesGet your organization’s feet wet with Semantic Web Technologies
Get your organization’s feet wet with Semantic Web Technologies
 
Open Source Software For Education
Open Source Software For EducationOpen Source Software For Education
Open Source Software For Education
 
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
 
Puppet: Eclipsecon ALM 2013
Puppet: Eclipsecon ALM 2013Puppet: Eclipsecon ALM 2013
Puppet: Eclipsecon ALM 2013
 
Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...
Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...
Deploy and Destroy: Testing Environments - Michael Arenzon - DevOpsDays Tel A...
 
Clustered PHP - DC PHP 2009
Clustered PHP - DC PHP 2009Clustered PHP - DC PHP 2009
Clustered PHP - DC PHP 2009
 
Product! - The road to production deployment
Product! - The road to production deploymentProduct! - The road to production deployment
Product! - The road to production deployment
 

Mehr von 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
 

Mehr von 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
 

KĂźrzlich hochgeladen

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
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 MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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 MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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 WorkerThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
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 MenDelhi Call girls
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
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 Servicegiselly40
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

KĂźrzlich hochgeladen (20)

[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
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
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
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
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

Puppet for Sysadmins Guide at PuppetCamp 2013

  • 1. Puppet for Sysadmins PuppetCamp 2013 – Melbourne Download from – http://www.icesystems.com.au/puppet
  • 2. Och Aye The Noo! (oh yes, right now!) Stephen Wallace 20 years experience Predom *nix / sysadmin background Senior management - teams up to 20 Large heavily integrated systems Health, Online Gaming, Recruitment ICE Systems 18 mths....one of the Puppet go to guys stephen.wallace@icesystems.com.au Linkedin: http://au.linkedin.com/in/stephenwallace
  • 3. Who am I talking to?  Sysadmin  Operations management  Nae sayers?  ...and the Puppet newbs …and why should you listen?
  • 4. Spot the challenge! An extract from my Linkedin profile (au.linkedin.com/in/stephenwallace)  Harvey Nash, Database Administrator, London  Hays Personnel Services, IT Manager ANZ, Sydney  Saffron Consulting, Unix/Linux Consultant, Sydney  Corporate Express, Business Systems Manager, Sydney  NHS, Unix Services Manager, Glasgow  Casino.com, Technical Operations Manager, Gibraltar  Healthecare Aust, IT Operations Manager, Sydney  ICE Systems, Solution Architect, Sydney
  • 5. Puppet ...for Non-proggies : 101 PuppetCamp 2013 - Sydney
  • 6. Begin with the end in mind “Would you tell me, please, which way I ought to go from here?” “That depends a good deal on where you want to get to“, said the cat. “I don’t much care where”, said Alice. “Then it doesn’t matter which way you go”, said the cat. (Alice's Adventures in Wonderland, chapter 6) ...the importance of goals
  • 7. Goals! Talkers Doers (AKA Management) (You know who you are) Availability Scalability Supportability Predictability Agility KeepTheCostsDownAbility! …and Cloudability
  • 8. Goals for doers?  Reusable wins.....everybody listening?  Fix stuff once  Reduce support workload, so can finally get to that more interesting project stuff!  Monitoring....that someone else maintains :)  Documentation...ditto  Weekends / sleep  Pub by 5 (past 4 preferably)
  • 10. Recent Engagements  Research-centric academic institution  Publishing / media company  Insurance brokerage  Ecommerce / magazine Commonalities Small teams No opex budget # Users / power users up Provisioning demands up Diversity up Ratio of dev lead : ops lead initiatives....... 3:1
  • 11. What I did NOT need ! ...a neckbeard, ..or, an Apple Macbook
  • 12. What I DID need • A paradigm shift ALSO… Willingness to learn Willingness to collaborate
  • 13. Times are a Changin' Installing a new web server... Then (with a cast of 1000s) Now...via templates Rack n stack Launch hypervisor or AWS Management Console Install and lock down o/s Choose your template Pass to application / web Click a button team Pass to database team Configure some monitoring Draw some diagrams n document. Test, and transition thru change management...fingers crossed. ...and with Puppet, it can get a bit easier!
  • 14. Initial reaction to the word... “Devops”... The objection is rarely the objection! “We are not proggies, we're sys admins” Keep Calm, ...and Carry On
  • 15. “Proggie syntax is WAY too hard...” Ops boys and girls love scripting...right? Puppet can write Puppet code!  puppet resource user...handy!  puppet resource - types (lots of fun for all the family)  ...and there's lots of “inspirational” stuff from the Forge ( http://forge.puppetlabs.com )!  puppet module search mysql (gem install puppet-module)
  • 16. Building a module, the easy way A simple manifest `puppet resource service ssh` - outputs valid syntax A module `puppet module generate x-blah` - Rename module dir and make sure this is reflected in the class name in manifests/init.pp and tests/init.pp A class already in the `tests` directory. Puppet apply -v ./init.pp --noop
  • 17. Native tools for syntax checking puppet parser validate blah.pp
  • 18. Syntax Highlighting Tools Put a bit of colour in your life... vim-puppet syntastic - similar
  • 19. There will still be a few sceptics
  • 20. Geppetto  Have a look! Self contained IDE  Syntax examples with mouseover  Autocorrects stuff!  Integrates with source control  Integrates into CI  Integrates with the Forge!
  • 21. A question of style?
  • 22. Finding this all a bit testing? Rspec-puppet - why test your modules, using yet another language? Check it out...http://rspec-puppet.com/
  • 23. Hiera!  How can it benefit the ops crowd?  A simple pluggable, hierarchical database  Included with Puppet Enterprise, gem install for opensource  Allows data to be separated from code  Cleaner, more supportable manifests
  • 24. How does Hiera work? HTTP VS APACHE2? hiera.conf…you know conf files...right?! :hierarchy: - nodes/%{fqdn} - %{operatingsystem} - common :backends: - yaml :yaml: :datadir: '/etc/puppetlabs/hieradata' root@hpmini:~# facter operatingsystem Ubuntu root@hpmini:/etc/puppetlabs/hieradata/Ubuntu# cat common.yaml webserver: apache2
  • 25. Hiera syntax You either do this... centos, redhat, oel, oraclelinux, linux: { $supported = true Or this… $webserver = [ "apache2" ] $webserver = hiera('webserver','httpd') $svc_name = "apache2" if $webserver != 'nil' { $config = "/etc/apache2/httpd.conf" package { $webserver: if $::operatingsystemrelease =~ /^5/ { ensure => present $config_tpl = 'httpd.conf.el.erb' } } elsif $::operatingsystemrelease =~ /^6/ { $config_tpl = 'httpd.conf.el6.erb' } else { fail("the webserver module doesn't know what template to use for your $ {::operatingsystemrelease}")
  • 26. Augeus! Love those conf files... $defaultrunlevel = hiera('defaultrunlevel','3') augeas { "runlevel": context => "/files/etc/inittab", changes => [ "set id/runlevels $ {defaultrunlevel}", ], } root@hpmini:/etc/puppetlabs/hieradata/production# grep defaultrunlevel common.yaml defaultrunlevel: 3
  • 27. Ruby – Not that scary  Deep breath...  yum install blah.rpm (familiar?)  apt-get install stuff  ...gem install puppet-lint (!)
  • 28. Provisioning - libvirt, EC2, RHEV - Oracle Virtualbox Puppet’s • Razor. Growing popularity • AWS & VMWare!
  • 29. MCollective Benefits? • How many of my machines are running RHEL 6.1? • How many are running a particular release of a software package? • Monitor all of my servers for a resource level? Mcollective can help manage, monitor, control Puppet, collect performance and inventory data...so...so...check it out!
  • 30. The Holy Trinity IT Ops Management Challenges Responding to Productivity and Efficiency Business Needs Configuration Drift Lack of Visibility
  • 31. What it's like in the trenches Application Application Systems Application Database Service Desk Support Developer Administrator Developer Administrator Log call. The Java Stop working Stop what Manual DBA analyzes console says monitoring on new code to they’re doing to investigation audit logs everything is tools don’t troubleshoot. identify and establishes not which points green. show anything Need gather application to bad query. either. Call the production production logs problem. developer. logs! for developer. Now Escalate. Escalate. Escalate. Respond Escalate. what? .
  • 33. Root Cause Analysis - Splunk • IT Operations review monitoring info, and feed relevant details into Splunk for event correlation over all enterprise devices A config file has been manually updated….badly, causing the outage
  • 34. Fix It Once! • Write a manifest to manage the files and fix the issue • Maybe use Puppet to write the Nagios cfg “Exported resources” / templates • Monitoring = green lights
  • 35. But we're an enterprise shop ...Puppet's not quite there yet, Shirley? Client side • Ruby brush n scrub up. Load reduced. • Good install support Server side • PuppetDB • Phusion Passenger • ActiveMQ • REST API
  • 36. Reinvent yourself every 2 years New tools?!…but we’re making too much progress! Devops person?
  • 37. Training helps Puppet Fundamentals Productive in a day, or two Certification program Puppet Professional + Puppet Developer -> Puppet Master
  • 38. Any other useful stuff? • What about DR? (Dont forget your certs!) • Automated doco? • /etc/puppet/modules/ssh/manifests# puppet doc ./init.pp • Dependency diagrams • dot -Tpng /var/opt/lib/pe- puppet/state/graphs/resources.dot -o /tmp/configuration.png Still sounds risky? --noop! Even the CAB will like you!
  • 39. Puppet Enterprise, why do people choose it? Many of the tools are pre-compiled Low stress, upgradable solution Ceiling install...peace of mind Dashboard Mcollective Cloud Provisioner - AWS & VMWare Supportable :) So what your next step?
  • 40. Start small, and KISS!  “A journey of a 1000 miles...” A.N. Other Smart Person  Just start!  Download the training VM  Do the tutorials  Use the Forge for inspiration!  Use Google Groups – puppet-users@googlegroups.com to start  ...then puppet-dev@ when confidence starts to grow  Use the supporting toolsets  Use –noop! Derisk n smile  Padding on the right shoulder might also be useful...
  • 41. “We're not proggies... we're sys admins!” Plenty of options available to the sysadmins who does not retool... or
  • 42. References Learn Puppet in small chunks... http://info.puppetlabs.com/download-pdfs.html http://forge.puppetlabs.com/ http://docs.puppetlabs.com/guides/tools.html puppet-rspec - Easy intro http://puppetlabs.com/blog/the- next-generation-of-puppet-module-testing/ http://theforeman.org/, http://www.vagrantup.com/ http://cloudsmith.github.com/geppetto/ Puppet for sysadmins...