Lindsey Smith
@turbodog
l.smith@puppetlabs.com
A Quick Poll
We live in
Interesting
Times
More. Faster.
Old practices are
constraints ...
...and old
constraints are
gone
Major IT
movements
No future....
Driving down the cost
of technological change
Started 8.5 years
ago
Datacenter and
Cloud
Automation
Growing Rapidly
Customers Everywhere
What is Puppet?
Language: Easy to Get Started
class ssh {
!
package { 'openssh-server':
ensure => present,
}
!
file { 'sshd_config':
path => '/etc/ssh/sshd_config',
source => ‘puppet:///modules/ssh/sshd_config',
require => Package['openssh-server'],
notify => Service['sshd'],
}
!
service { 'sshd':
ensure => running,
enable => true,
require => File['sshd_config'],
}
!
}
New Approach: Software
Defined Infrastructure
1. DEFINE 2. SIMULATE
4. REPORT
Re-usable infrastructure-as-code Before deploying changes
Automatically and reliably
Insight into changes
DESIRED
STATE
CURRENT
STATE
3. ENFORCE
}
Facts
The node sends
normalized data
about itself to the
Puppet Master.
1
Catalog
Puppet uses the Facts to
compile a Catalog that
specifies how the node
should be configured.
2
Report
Puppetʼs open API
can also send data
to third party tools.
4
Report
The node
reports back
to Puppet
indicating the
configuration is
complete, which
is visible in the
Puppet Dashboard.
3
Report Collector
(Puppet or 3rd party tool)
Node
Puppet
Master
SSL secure
encryption
on all data
transport
Lifecycle of a Puppet Run
Puppet
Architecture
Web Server Database Server
Application Server
Reporting
GUI &
Workflows
Content
Admin &
Security
Virtual Machine Cloud
Hardware
PUPPET MASTER SERVER
PUPPET
AGENT
PUPPET FORGE CONTENT MARKETPLACE
PUPPET
AGENT
PUPPET
AGENT
PUPPET OPEN SOURCE PLATFORM
Puppet
Enterprise
Solid platform
Ecosystem
Support
Get there faster
Interactive Event Analysis
Live Management:
Remote Control of Puppet Agent
Live Management: Resource
Browsing and Centralized Inv.
Cloud Provisioner
VMware Support
Non-Root Puppet
Agent Support
Supported
Modules
Current Supported Modules
Puppet Open Source
Technical
Proving Ground
Highly Flexible
Core Components
Puppet
• Domain Specific Language (DSL) for
specifying infrastructure state
• Transactional system for enforcing it
• Resource Abstraction Layer (RAL)
• Validated version in Puppet
Enterprise
MCollective
• Powerful command and control tool
• Parallel,real-time execution across
your whole network
• Real-time discovery of all nodes and
their functions
• Drives the Orchestration Engine and
Live Management in Puppet
Enterprise
PuppetDB
• Stores all configurations,facts and
reports
• Knows everything there is to know
about your infrastructure
• Foundation for nearly all reporting
and analysis in Puppet Open Source
and Puppet Enterprise
Facter
• Facts: bits of data that you care about
• Core inputs for customizing Puppet
configurations per host
• Easily pluggable to collect new data
or store it in existing databases
• Now structured and trusted facts
• Foundation for Puppet Enterprise
Node Inventory
Hiera
• Separate site configuration data from
reusable code
• Iterate and promote code quickly
without having to manage dev/test
configuration differences
• Foundation for Puppet / Puppet
Enterprise Hierarchical Data
Razor
• Rules-based provisioning for bare
metal hardware and virtual servers
• Feeds directly into your Puppet
infrastructure
• Physical machines as easy to
provision as VMs
• Tech preview in Puppet Enterprise
What Else?
Puppet Forge
Join the Community
• Learn from others
• Ask/Answer questions
• http://ask.puppetlabs.com
• mailing lists
• IRC
• Help with bug triage
• Contribute code
• Contribute modules on the Forge
puppetlabs.com/community
People Love our
Worldwide Training!
I liked being with other sharp admins in an environment where
"cross-pollination" and experimentation were encouraged.
“
“A brilliant course to jump into using puppet fast and effectively.
“
Very useful information, a good start for our Puppet team, and
would highly recommend it.
Follow the Right Training Path
Take Online Training
puppetlabs.com/learn
Influence Products
We’re Hiring!
• Professional Services (everywhere)
• Engineering
• QA
• Modules
• Forge
• Windows
• Platform
• Solutions Engineering
• Support
• ...and lots more
puppetlabs.com/about/careers
Questions?
Questions?
Thank You!
!
Learn More:
http://puppetlabs.com
http://puppetlabs.com/community
http://puppetlabs.com/puppet/puppet-enterprise/

Puppet Camp New York Keynote