Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Puppet Client: Puppet 4 and Beyond
Search
Kylo Ginsberg
February 02, 2015
0
42
Puppet Client: Puppet 4 and Beyond
Puppet Client: Puppet 4 and Beyond, 2015-02-02
Kylo Ginsberg
February 02, 2015
Tweet
Share
More Decks by Kylo Ginsberg
See All by Kylo Ginsberg
Under the Hood - C++ at Puppet Labs
kylog
0
330
Automating Docker Containers with Puppet
kylog
0
51
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
93
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
121
20k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Making Projects Easy
brettharned
120
6.5k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.2k
A Modern Web Designer's Workflow
chriscoyier
698
190k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
390
The Pragmatic Product Professional
lauravandoore
37
7.1k
Site-Speed That Sticks
csswizardry
13
990
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Transcript
Puppet Client Kylo Ginsberg @kylog irc: kylo
[email protected]
Puppet 4
and Beyond
Puppet 4
All-in-one agent Path changes URL changes Puppet language
All-in-one agent
puppet-agent package • puppet • facter • native facter •
hiera • mcollective • ruby • … and dependencies
puppet-agent versioning • Not tied directly to puppet versions •
E.g. version 1.0.0 will include: • puppet 4.0.0 • facter 2.4.0 • ruby 2.1.5 • … • Component bumps major: puppet-agent bumps major
Why all-in-one? One package: easier on-ramp for new users Everyone
benefits from latest ruby Reduces the test matrix, reduces support questions Open source puppet and PE use the same package
Path changes
Top-level directory name changes /etc/puppetlabs ~/.puppetlabs
Separate code and config /etc/puppetlabs/agent/code manifests modules environments hieradata hiera.yaml
/etc/puppetlabs/agent/config puppet.conf device.conf …
URL changes
Versioned and Namespaced URLs Puppet 3: /production/catalog/my_node /production/certificate/my_node Puppet 4:
/puppet/v3/catalog/my_node?environment=production /puppet-ca/v1/certificate/my_node?environment=production
Compatibility Puppet 4 is not backwards compatible on the network
with Puppet 3. puppet-server 2.0.0 package depends on puppet-agent 1.0.0 package.
Puppet 4: the Puppet language
From reference implementation to language specification
puppetlabs/puppet-specifications
Optional types
None
Iteration and lambdas
None
None
Test in Puppet 3.7.4 Default in Puppet 4.0 puppet apply
—parser=future puppet apply
None
puppet-on-the-edge.blogspot.com
After Puppet 4
Going Native Facter 3 Tiered Providers
Going native
None
None
Does your programming language run on AIX?
Does your programming language run on hardware switches?
Performance Memory usage Installed footprint Dependencies
Native puppet agent …
Facter 3
None
None
None
Tiered Providers
The sad story of nagios
Extract “tier 2” types and providers as modules • Developed
and released independently • Packaged with puppet-agent for a “batteries included” experience
Get Involved!
Gareth Rushgrove puppetlabs.com/download-learning-vm
puppetlabs.com/community/participate
Test pilots logo Gareth Rushgrove
Questions? And thanks for listening