Nigel Kersten
@nigelkersten
nigel@puppetlabs.com
Polls
Being a sysadmin is hard enough
More critical than ever
Must be faster, more focused
All kinds of cloud
Immutable Infrastructure
More Reliable
2x the change success rate
12x faster MTTR
More Agile
30x more frequent deployments
8,000x faster lead times than peers
IT Performance Matters
Automate IT
Make rapid, repeatable changes and enforce the consistency
of systems and devices.
Users · Groups · Firewall
DNS · NTP · SSH
Kernel Settings · Files
Packages · Services
Repositories · Mounts
Jobs · Scheduling
Virtual & Cloud
Network & Storage
Applications
Operating Systems
Define Test Enforce Report
service { 'ssh':
ensure => running,
enable => true,
}
Define the desired state using a
powerful, declarative language.
The Puppet Approach
Test changes before you deploy them
Define Test Enforce Report
The Puppet Approach
Enforce changes and
remediate configuration drift
The Puppet Approach
Define Test Enforce Report
Gain insight into your
infrastructure
The Puppet Approach
Define Test Enforce Report
Define desired state
How it Works
Puppet Fundamentals
Simple Code
Basic Primitives Included
First Class Windows
Node Cycle
PuppetDB for Central Data
Define desired state
How it Works
Advanced Capabilities
Next generation architecture to enable greater scalability, more
resiliency, greater insight and simpler integration
Next Gen Puppet Server
Razor for Provisioning
MCollective for Execution
Hiera for Code/Data
r10k for Deployment
Open Source Puppet 4.0 Now Available!
All-in-One Agent
Language Enhancements
Open Source Puppet
Open Source Puppet 4.0
All-in-One
Agent
File System
Layout
Language
Enhancements
Simple, streamlined experience deploying
Puppet software
Everything is in the same location across
products
Consistent, smarter and with more
compact, readable code
Language Enhancements
Delivers more power, expressiveness
and greater reliability
Rewritten parser & evaluator
Consistent, smarter language
Puppet Catalog Preview
Optional Types
Gareth Rushgrove
Iteration
Node
Management
Purpose-built applications focused on solving IT automation challenges in
new, innovative ways
Configuration
Management
Application
Management
Operational
Management
Code
Management
Open Source Components - Puppet Enterprise Core - Agent Technology
And over 3,000 more integrations, extensions, and other content
Puppet Enterprise
Puppet Apps
Rule-based classifier for managing a large volume of
frequently-changing systems
Puppet Enterprise
Node Manager
Puppet Enterprise
Automated Provisioning
Accelerate provisioning across containers, cloud & bare metal
Install and manage Docker quickly and easily, just by including the
Puppet Docker module
Describe security groups and ELB load balancers, and help audit
changes to your network within AWS
Define AWS Autoscaling Groups as well as CloudWatch alarms to
trigger scaling up and down
Describe your Route53 DNS all in the Puppet DSL
» be rake spec
AWS arbiter
should compile into a catalogue without dependency cycles
should contain exactly 9 Ec2_instance resources
web servers
should contain EC2-instance[web1] with region => "us-west-1" and type => "t2.micro"
should contain EC2-instance[web2] with region => "us-west-1" and type => "t2.micro"
should contain EC2-instance[web3] with region => "us-west-1" and type => "t2.micro"
application servers
should contain EC2-instance[app1] with region => "us-west-1" and type => "c4.large"
should contain EC2-instance[app2] with region => "us-west-1" and type => "c4.large"
should contain EC2-instance[app3] with region => "us-west-1" and type => "c4.large"
should contain EC2-instance[app4] with region => "us-west-1" and type => "c4.large"
database servers
should contain EC2-instance[db1] with region => "us-west-1" and type => "r3.large"
should contain EC2-instance[db2] with region => "us-west-1" and type => "r3.large"
Finished in 0.26288 seconds
11 examples, 0 failures
Unit test your AWS infrastructure code and

enforce policy across your organisation
Puppet Enterprise
Code Manager
Development
Testing
Production
Manage infrastructure as code more efficiently
across environments
Granular role-based access control for delegation of management
capabilities across teams & individuals
Segment nodes so that tasks can be safely delegated
Ease the administration of users
Integrates directly with AD & OpenLDAP
Puppet Enterprise
Role-Based Access Control
A profiler & metrics service tracks key metrics associated
with Puppet Server health & performance
Puppet Enterprise
Puppet Server Reporting
Understand the impact of change in your environment
Puppet Enterprise
Event Inspection
Support for critical and common infrastructure, focused on
heterogeneity
F5 support includes both SOAP and
REST modules
Microsoft modules include Windows
ACL, Windows Powershelgl and MS
SQL modules
More available on the Puppet Forge
Puppet Enterprise
Puppet Supported Modules
Puppet Enterprise
Upgrade Faster
Take Advantage of Puppet Enterprise Innovation
Define desired state
So What?
Deploy code 30x more frequently
With 50% fewer failures
Contribute to 50 % higher market
cap growth over three years
Source: 2014 State of DevOps Report
Impact of High Performing IT
“Puppet Enterprise allows us to make wide
sweeping infrastructure changes.”
“The constant discussion between software and infrastructure
teams really helps us proactively find issues before
deploying to production.”
“With Puppet, you can turn things up in minutes
where it used to be months.”
Change Agents of IT Ops
Next Steps
puppetlabs.com/learn
Learn Online
forge.puppetlabs.com
The Puppet Forge
Fundamentals
3-day course
Practitioners
3-day, advanced level course
Architect
3-day, advanced course
Learn the right way to manage an
infrastructure
Learn why you should manage your
Puppet infrastructure the right way
Learn how to design your own infrastructure and
define your own right way to implement Puppet
Training & Certification
docs.puppetlabs.com
Check out the Docs
Make Puppet Better
Learn from others
Ask/Answer questions
•ask.puppetlabs.com
•mailing lists
•IRC
Help fix bugs
Contribute code
Contribute modules
puppetlabs.com/community
Plug in and get Involved
We’re Hiring
puppetlabs.com/about/careers
Questions?
Thank You!
http://puppetlabs.com
http://puppetlabs.com/community
https://puppetlabs.com/puppet/puppet-enterprise

Puppet Camp Berlin 2015: Nigel Kersten | Puppet Keynote