SlideShare a Scribd company logo
The Puppet Debugging Kit 
Building Blocks for Exploration and Problem Solving 
Charlie Sharpsteen 
Open Source Support Engineer, Puppet Labs
Puppet Debugging Kit 
Oscar 
Vagrant
What is Oscar? 
Oscar 
Logic-Less Vagrant Config 
PE Installer 
Psuedo-DNS 
Psuedo-DHCP
What is Oscar? 
Oscar 
vagrant-config_builder 
vagrant-pe_build 
vagrant-hosts 
vagrant-auto_network
What is Oscar? 
Oscar 
vagrant-config_builder 
vagrant-pe_build 
vagrant-hosts 
vagrant-auto_network
Vagrant.configure('2') do |config|! 
config.vm.define 'pe-332-master' do |node|! 
node.vm.box = 'puppetlabs/centos-6.5-64-puppet'! 
node.vm.hostname =! 
'pe-332-master.puppetdebug.vlan'! 
! 
node.vm.network 'hostonly', auto_network: true! 
! 
node.vm.provision 'hosts'! 
node.vm.provision 'pe_bootstrap' do |p|! 
p.role = 'master'! 
p.version = '3.3.2'! 
end! 
end! 
end 
---! 
vms:! 
- name: pe-332-master! 
box: puppetlabs/centos-6.5-64-puppet! 
hostname:! 
pe-332-master.puppetdebug.vlan! 
private_networks:! 
- {auto_network: true}! 
provisioners:! 
- type: hosts! 
- type: pe_bootstrap! 
role: master! 
version: 3.3.2
---! 
vms:! 
- name: pe-332-master! 
box: puppetlabs/centos-6.5-64-puppet! 
hostname:! 
pe-332-master.puppetdebug.vlan! 
provisioners:! 
- type: pe_bootstrap! 
role: master! 
version: 3.3.2! 
roles:! 
- base
! 
! 
- name: pe-332-agent! 
box: puppetlabs/centos-6.5-64-puppet! 
hostname:! 
pe-332-master.puppetdebug.vlan! 
provisioners:! 
- type: pe_bootstrap! 
role: agent! 
version: 3.3.2! 
master:! 
pe-332-master.puppetdebug.vlan! 
roles:! 
- base 
---! 
vms:! 
- name: pe-332-master! 
box: puppetlabs/centos-6.5-64-puppet! 
hostname:! 
pe-332-master.puppetdebug.vlan! 
private_networks:! 
- {auto_network: true}! 
provisioners:! 
- type: hosts! 
- type: pe_bootstrap! 
role: master! 
version: 3.3.2 
---! 
roles:! 
base:! 
private_networks:! 
- {auto_network: true}! 
provisioners:! 
- type: hosts
---! 
vms:! 
- name: pe-332-master! 
box: puppetlabs/centos-6.5-64-puppet! 
hostname:! 
pe-332-master.puppetdebug.vlan! 
provisioners:! 
- type: pe_bootstrap! 
role: master! 
version: 3.3.2! 
roles:! 
- three! 
- two! 
- one! 
- base! 
Quirk: 
The roles array is applied in 
reverse order! 
Visually: 
From bottom to top.
What is the Debugging Kit? 
• A set of roles for configuring Oscar environments to run Puppet 
• A custom filter for quickly configuring Puppet Enterprise Installations 
• Wrapped in a nice workspace designed to be a “git clone and go” 
toolkit
Version: 
3.3.2 
pe-332-master-ignored_stuff 
Type: 
Puppet Enterprise 
Role: 
Master
---! 
vms:! 
- name: pe-332-master! 
box: puppetlabs/centos-6.5-64-puppet! 
hostname:! 
pe-332-master.puppetdebug.vlan! 
provisioners:! 
- type: pe_bootstrap! 
role: master! 
version: 3.3.2! 
roles:! 
- base! 
! 
- name: pe-332-agent! 
box: puppetlabs/centos-6.5-64-puppet! 
hostname:! 
pe-332-master.puppetdebug.vlan! 
provisioners:! 
- type: pe_bootstrap! 
role: agent! 
version: 3.3.2! 
master:! 
pe-332-master.puppetdebug.vlan! 
roles:! 
- base 
---! 
vms:! 
- name: pe-332-master! 
box: puppetlabs/centos-6.5-64-puppet! 
debug-kit: true! 
roles:! 
- base! 
! 
- name: pe-332-agent! 
box: puppetlabs/centos-6.5-64-puppet! 
debug-kit: true! 
roles:! 
- base
Demo
Resources 
• http://www.vagrantup.com/ 
• https://github.com/adrienthebo/oscar 
• https://github.com/Sharpie/puppet-debugging-kit 
• https://vagrantcloud.com/puppetlabs

More Related Content

PPTX
Troubleshooting Puppet
PDF
V2 and beyond
PDF
Ansible for beginners ...?
PDF
Puppet Camp Phoenix 2015: Managing Files via Puppet: Let Me Count The Ways (B...
PDF
Hacking ansible
PDF
Puppet at janrain
PPTX
2012 coscup - Build your PHP application on Heroku
PDF
Medicine show2 Drupal Bristol Camp 2015
Troubleshooting Puppet
V2 and beyond
Ansible for beginners ...?
Puppet Camp Phoenix 2015: Managing Files via Puppet: Let Me Count The Ways (B...
Hacking ansible
Puppet at janrain
2012 coscup - Build your PHP application on Heroku
Medicine show2 Drupal Bristol Camp 2015

What's hot (20)

PDF
AnsibleFest 2014 - Role Tips and Tricks
PDF
Puppet @ Seat
PDF
Ansible : what's ansible & use case by REX
PDF
Docker, c'est bonheur !
PDF
Ansible tips & tricks
PDF
Ansible - Swiss Army Knife Orchestration
PDF
Memory Manglement in Raku
PDF
BASH Variables Part 1: Basic Interpolation
PDF
Automated infrastructure is on the menu
PDF
Puppet modules for Fun and Profit
PDF
Unit Testing Lots of Perl
PDF
Test-Driven Puppet Development - PuppetConf 2014
PDF
Introduction to ansible
PPT
Adventures in infrastructure as code
PDF
Oliver hookins puppetcamp2011
ODP
Automated reproducible images on openstack using vagrant and packer
PDF
Writing & Sharing Great Modules on the Puppet Forge
ODP
Writing webapps with Perl Dancer
PDF
Building and Testing Puppet with Docker
PDF
Puppet: What _not_ to do
AnsibleFest 2014 - Role Tips and Tricks
Puppet @ Seat
Ansible : what's ansible & use case by REX
Docker, c'est bonheur !
Ansible tips & tricks
Ansible - Swiss Army Knife Orchestration
Memory Manglement in Raku
BASH Variables Part 1: Basic Interpolation
Automated infrastructure is on the menu
Puppet modules for Fun and Profit
Unit Testing Lots of Perl
Test-Driven Puppet Development - PuppetConf 2014
Introduction to ansible
Adventures in infrastructure as code
Oliver hookins puppetcamp2011
Automated reproducible images on openstack using vagrant and packer
Writing & Sharing Great Modules on the Puppet Forge
Writing webapps with Perl Dancer
Building and Testing Puppet with Docker
Puppet: What _not_ to do
Ad

Similar to The Puppet Debugging Kit: Building Blocks for Exploration and Problem Solving - PuppetConf 2014 (20)

PDF
Taking the Friction Out of Ticket Investigation (Standardized Debugging Envir...
PDF
Create your very own Development Environment with Vagrant and Packer
PDF
Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014
ODP
Puppet and the HashiCorp Suite
PDF
Toplog candy elves - HOCM Talk
PDF
Continuous Delivery: The Next Frontier
PPTX
Environments line-up! Vagrant & Puppet 101
PDF
Apache Hadoop Shell Rewrite
PDF
Capistrano
PDF
Start using vagrant now!
PDF
Андрей Поданенко - Start using Vagrant now!
PDF
How I hack on puppet modules
PDF
Getting Started with PoolParty and EC2
PDF
Fixing Growing Pains With Puppet Data Patterns
PPTX
Puppet - Instant Data Center
KEY
20100425 Configuration Management With Puppet Lfnw
PDF
infra-as-code
PDF
Dev ninja -> vagrant + virtualbox + chef-solo + git + ec2
PDF
Puppet and the HashiStack
PDF
ChefConf 2012 Spiceweasel
Taking the Friction Out of Ticket Investigation (Standardized Debugging Envir...
Create your very own Development Environment with Vagrant and Packer
Beaker: Automated, Cloud-Based Acceptance Testing - PuppetConf 2014
Puppet and the HashiCorp Suite
Toplog candy elves - HOCM Talk
Continuous Delivery: The Next Frontier
Environments line-up! Vagrant & Puppet 101
Apache Hadoop Shell Rewrite
Capistrano
Start using vagrant now!
Андрей Поданенко - Start using Vagrant now!
How I hack on puppet modules
Getting Started with PoolParty and EC2
Fixing Growing Pains With Puppet Data Patterns
Puppet - Instant Data Center
20100425 Configuration Management With Puppet Lfnw
infra-as-code
Dev ninja -> vagrant + virtualbox + chef-solo + git + ec2
Puppet and the HashiStack
ChefConf 2012 Spiceweasel
Ad

More from Puppet (20)

PPTX
Puppet Community Day: Planning the Future Together
PPTX
The Evolution of Puppet: Key Changes and Modernization Tips
PPTX
Can You Help Me Upgrade to Puppet 8? Tips, Tools & Best Practices for Your Up...
PPTX
Bolt Dynamic Inventory: Making Puppet Easier
PPTX
Customizing Reporting with the Puppet Report Processor
PPTX
Puppet at ConfigMgmtCamp 2025 Sponsor Deck
PPTX
The State of Puppet in 2025: A Presentation from Developer Relations Lead Dav...
PPTX
Let Red be Red and Green be Green: The Automated Workflow Restarter in GitHub...
PDF
Puppet camp2021 testing modules and controlrepo
PPTX
Puppetcamp r10kyaml
PDF
2021 04-15 operational verification (with notes)
PPTX
Puppet camp vscode
PDF
Modules of the twenties
PDF
Applying Roles and Profiles method to compliance code
PPTX
KGI compliance as-code approach
PDF
Enforce compliance policy with model-driven automation
PDF
Keynote: Puppet camp compliance
PPTX
Automating it management with Puppet + ServiceNow
PPTX
Puppet: The best way to harden Windows
PPTX
Simplified Patch Management with Puppet - Oct. 2020
Puppet Community Day: Planning the Future Together
The Evolution of Puppet: Key Changes and Modernization Tips
Can You Help Me Upgrade to Puppet 8? Tips, Tools & Best Practices for Your Up...
Bolt Dynamic Inventory: Making Puppet Easier
Customizing Reporting with the Puppet Report Processor
Puppet at ConfigMgmtCamp 2025 Sponsor Deck
The State of Puppet in 2025: A Presentation from Developer Relations Lead Dav...
Let Red be Red and Green be Green: The Automated Workflow Restarter in GitHub...
Puppet camp2021 testing modules and controlrepo
Puppetcamp r10kyaml
2021 04-15 operational verification (with notes)
Puppet camp vscode
Modules of the twenties
Applying Roles and Profiles method to compliance code
KGI compliance as-code approach
Enforce compliance policy with model-driven automation
Keynote: Puppet camp compliance
Automating it management with Puppet + ServiceNow
Puppet: The best way to harden Windows
Simplified Patch Management with Puppet - Oct. 2020

Recently uploaded (20)

PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Cloud computing and distributed systems.
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Modernizing your data center with Dell and AMD
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Review of recent advances in non-invasive hemoglobin estimation
The AUB Centre for AI in Media Proposal.docx
MYSQL Presentation for SQL database connectivity
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Unlocking AI with Model Context Protocol (MCP)
Mobile App Security Testing_ A Comprehensive Guide.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Encapsulation_ Review paper, used for researhc scholars
Advanced methodologies resolving dimensionality complications for autism neur...
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Machine learning based COVID-19 study performance prediction
Big Data Technologies - Introduction.pptx
Cloud computing and distributed systems.
“AI and Expert System Decision Support & Business Intelligence Systems”
Per capita expenditure prediction using model stacking based on satellite ima...
Modernizing your data center with Dell and AMD
CIFDAQ's Market Insight: SEC Turns Pro Crypto
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx

The Puppet Debugging Kit: Building Blocks for Exploration and Problem Solving - PuppetConf 2014

  • 1. The Puppet Debugging Kit Building Blocks for Exploration and Problem Solving Charlie Sharpsteen Open Source Support Engineer, Puppet Labs
  • 2. Puppet Debugging Kit Oscar Vagrant
  • 3. What is Oscar? Oscar Logic-Less Vagrant Config PE Installer Psuedo-DNS Psuedo-DHCP
  • 4. What is Oscar? Oscar vagrant-config_builder vagrant-pe_build vagrant-hosts vagrant-auto_network
  • 5. What is Oscar? Oscar vagrant-config_builder vagrant-pe_build vagrant-hosts vagrant-auto_network
  • 6. Vagrant.configure('2') do |config|! config.vm.define 'pe-332-master' do |node|! node.vm.box = 'puppetlabs/centos-6.5-64-puppet'! node.vm.hostname =! 'pe-332-master.puppetdebug.vlan'! ! node.vm.network 'hostonly', auto_network: true! ! node.vm.provision 'hosts'! node.vm.provision 'pe_bootstrap' do |p|! p.role = 'master'! p.version = '3.3.2'! end! end! end ---! vms:! - name: pe-332-master! box: puppetlabs/centos-6.5-64-puppet! hostname:! pe-332-master.puppetdebug.vlan! private_networks:! - {auto_network: true}! provisioners:! - type: hosts! - type: pe_bootstrap! role: master! version: 3.3.2
  • 7. ---! vms:! - name: pe-332-master! box: puppetlabs/centos-6.5-64-puppet! hostname:! pe-332-master.puppetdebug.vlan! provisioners:! - type: pe_bootstrap! role: master! version: 3.3.2! roles:! - base ! ! - name: pe-332-agent! box: puppetlabs/centos-6.5-64-puppet! hostname:! pe-332-master.puppetdebug.vlan! provisioners:! - type: pe_bootstrap! role: agent! version: 3.3.2! master:! pe-332-master.puppetdebug.vlan! roles:! - base ---! vms:! - name: pe-332-master! box: puppetlabs/centos-6.5-64-puppet! hostname:! pe-332-master.puppetdebug.vlan! private_networks:! - {auto_network: true}! provisioners:! - type: hosts! - type: pe_bootstrap! role: master! version: 3.3.2 ---! roles:! base:! private_networks:! - {auto_network: true}! provisioners:! - type: hosts
  • 8. ---! vms:! - name: pe-332-master! box: puppetlabs/centos-6.5-64-puppet! hostname:! pe-332-master.puppetdebug.vlan! provisioners:! - type: pe_bootstrap! role: master! version: 3.3.2! roles:! - three! - two! - one! - base! Quirk: The roles array is applied in reverse order! Visually: From bottom to top.
  • 9. What is the Debugging Kit? • A set of roles for configuring Oscar environments to run Puppet • A custom filter for quickly configuring Puppet Enterprise Installations • Wrapped in a nice workspace designed to be a “git clone and go” toolkit
  • 10. Version: 3.3.2 pe-332-master-ignored_stuff Type: Puppet Enterprise Role: Master
  • 11. ---! vms:! - name: pe-332-master! box: puppetlabs/centos-6.5-64-puppet! hostname:! pe-332-master.puppetdebug.vlan! provisioners:! - type: pe_bootstrap! role: master! version: 3.3.2! roles:! - base! ! - name: pe-332-agent! box: puppetlabs/centos-6.5-64-puppet! hostname:! pe-332-master.puppetdebug.vlan! provisioners:! - type: pe_bootstrap! role: agent! version: 3.3.2! master:! pe-332-master.puppetdebug.vlan! roles:! - base ---! vms:! - name: pe-332-master! box: puppetlabs/centos-6.5-64-puppet! debug-kit: true! roles:! - base! ! - name: pe-332-agent! box: puppetlabs/centos-6.5-64-puppet! debug-kit: true! roles:! - base
  • 12. Demo
  • 13. Resources • http://www.vagrantup.com/ • https://github.com/adrienthebo/oscar • https://github.com/Sharpie/puppet-debugging-kit • https://vagrantcloud.com/puppetlabs