SlideShare a Scribd company logo
Puppet On Windows
Rob Reynolds
Rob Reynolds
• Developer at Puppet Labs
• Creator of Chocolatey
• Making your Windows world a better place
• Enjoys long walks on the beach…
• @ferventcoder
Agenda
• Puppet, Windows, and You
• Windows Module Pack
• Other Windows Modules
• Demo
• Questions
DevOps
Puppet, Windows, and You
• “How does Puppet compare to <insert other Config Mgmt tool here> on
Windows”?
• “How well does Puppet work on Windows?”
How Well Does Puppet Work On Windows?
Puppet – Windows Platforms
• Servers: Windows Server 2003+ (Puppet Agent 1.3.0/Puppet
4.3.0+ is Windows 2008+)
• Microsoft Extended Support for 2003 ended 7/14/2015.
• Desktops: Windows Vista+
• Puppet comes as x86 or x64
• Windows since 2011
Puppet – Windows Details
• x64 as of Puppet 3.7.0
• Case-sensitive
• File system / registry redirection when using
32-bit Puppet on 64-bit Windows.
• File paths
• Built-in Windows Package Provider
Puppet is Case-Sensitive / Windows is
Not
• C:Windows == c:windows in Windows
• C:Windows != c:windows in Puppet
• Puppet will see two resources with different case as different resources.
• What is the recommendation?
• Use lowercase as much as possible (except where you care about the case e.g.
creating folders)
• Always match case for resource relationships (e.g. subscribe/notify).
File System Redirection
• C:Windowssystem32 is translated to C:WindowsSysWOW64 where the 32 bit
binaries are when using 32-bit Puppet on 64-bit Windows systems.
• Thanks Microsoft!
• How do I avoid?
• Use 64-bit Puppet on 64-bit Windows systems
• SysNative (c:/sysnative) when you really want the 64 bit files.
• $system32 fact 3.7.3+.
File System Redirection Compensation
• http://docs.puppetlabs.com/puppet/latest/reference/
lang_windows_file_paths.html#compensating-for-redirection
Registry Redirection
• HKLMSOFTWARE is redirected to HKLMSOFTWAREWow6432Node
• How do I avoid?
• Use 64-bit Puppet on 64-bit Windows systems.
• Use the registry module, it disables redirection unless explicitly requested.
• Use “| 0x100” in custom facts.
File Paths
• ‘C:Windowssystem32’
• ‘C:/Windows/system32’
• “C:Windowssystem32”
• What is the recommendation?
• Always use forward slashes except when path is being given to a Windows
program for evaluation.
Built-in Windows Package Provider
• Source is where the installer file

is located
• Title must match exactly 

DisplayName
• Unicode characters may present 

an issue
• Not upgradeable
• Is there a better way?
• Use Chocolatey provider 

instead.
Chocolatey Package Provider
• Source is location for packages
• Title is the abitrary name of

the package
• Upgradeable / holdable
• Platform agnostic packaging
• Package resource default to provider
=> chocolatey for Windows.
• puppet/windowsfeature
• puppet/download_file
• puppet/iis
• chocolatey/chocolatey
• baderious/windows_env
Windows Module Pack
• puppetlabs/registry
• puppetlabs/powershell
• puppetlabs/reboot
• puppetlabs/acl
• puppetlabs/wsus_client
Other Notable Windows Modules
• puppetlabs/dsc - PowerShell
DSC Module
• cyberious/pget
• counsyl/windows
• 150+ Modules on the Forge
supporting Windows!
Core *Nix Resources
Windows Resources
• file
• user
• group
• scheduled_task
• package
• service
• exec
• host
• reboot
• acl
• windowsfeature
• windows_env
• iis:manage_site
• registry_key
• registry_value
• More w/modules
Demos
Questions / Reference
• https://puppetlabs.com
• https://docs.puppetlabs.com
• https://docs.puppetlabs.com/windows
• https://forge.puppetlabs.com/puppetlabs/windows
• @ferventcoder

More Related Content

What's hot (20)

PDF
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Rob Reynolds
 
PDF
Modern Software Management on Windows with Chocolatey - Automation Management...
Rob Reynolds
 
PDF
Software Management with PowerShell DSC and Chocolatey - PowerShell Summit 2017
Rob Reynolds
 
PPTX
Using nu get the way you should svcc
Maarten Balliauw
 
ODP
Selenium at Mozilla: An Essential Element to our Success
Stephen Donner
 
PDF
Lecture1
Anton Yatsenko
 
PDF
It Takes a Village to Make WordPress
DrewAPicture
 
PDF
Core Docs: Sentencing WordPress to 11-years-to-life
DrewAPicture
 
ODP
Discover eZ Publish: why you have to know this product
Bertrand Dunogier
 
PDF
Chocolatey - Software Automation for Windows (and sneak peak of Central Mana...
Rob Reynolds
 
PPTX
User Powershell for Task Automation
Aman Dhally
 
PDF
Nooku in a nutshell
Tim Plummer
 
PPTX
Tbilisi hackaton intro
Alexey Bokov
 
PPTX
Engage 2019 - De04. Java with Domino After XPages
Jesse Gallagher
 
PDF
WordPress - The Good, Bad, and Ugly
Noel Saw
 
PDF
WordPress Setup and Security - WordCamp, Charleston 2014
Michael Carnell
 
PPTX
Easy Installation and Setup of PostgreSQL on Linux, OSX, & Windows
haroonm
 
PDF
WinOps in a Secure Environment
Chocolatey Software
 
PDF
Meet The Family (Philippines Remix)
Beau Lebens
 
ODP
Building The Open Ntf Dev Playground
Factor-y S.r.l.
 
Plugging Chocolatey into your Puppet Infrastructure PuppetConf2014
Rob Reynolds
 
Modern Software Management on Windows with Chocolatey - Automation Management...
Rob Reynolds
 
Software Management with PowerShell DSC and Chocolatey - PowerShell Summit 2017
Rob Reynolds
 
Using nu get the way you should svcc
Maarten Balliauw
 
Selenium at Mozilla: An Essential Element to our Success
Stephen Donner
 
Lecture1
Anton Yatsenko
 
It Takes a Village to Make WordPress
DrewAPicture
 
Core Docs: Sentencing WordPress to 11-years-to-life
DrewAPicture
 
Discover eZ Publish: why you have to know this product
Bertrand Dunogier
 
Chocolatey - Software Automation for Windows (and sneak peak of Central Mana...
Rob Reynolds
 
User Powershell for Task Automation
Aman Dhally
 
Nooku in a nutshell
Tim Plummer
 
Tbilisi hackaton intro
Alexey Bokov
 
Engage 2019 - De04. Java with Domino After XPages
Jesse Gallagher
 
WordPress - The Good, Bad, and Ugly
Noel Saw
 
WordPress Setup and Security - WordCamp, Charleston 2014
Michael Carnell
 
Easy Installation and Setup of PostgreSQL on Linux, OSX, & Windows
haroonm
 
WinOps in a Secure Environment
Chocolatey Software
 
Meet The Family (Philippines Remix)
Beau Lebens
 
Building The Open Ntf Dev Playground
Factor-y S.r.l.
 

Similar to Puppet On Windows - Puppet Camp DC 2015 (20)

PDF
Managing Windows Systems with Puppet - PuppetConf 2013
Puppet
 
PPTX
Webinar - Windows Application Management with Puppet
OlinData
 
PDF
Getting Started with Puppet on Windows - PuppetConf 2014
Puppet
 
PPTX
Windows Configuration Management: Managing Packages, Services, & Power Shell-...
Puppet
 
PDF
Puppet Camp Duesseldorf 2014: Bas Grolleman - Using puppet on windows, do's a...
NETWAYS
 
PDF
Puppet Camp Düsseldorf 2014:Puppet and Windows: Do's and Don'ts
Puppet
 
PPTX
Puppet and windows do's and don'ts
Bas Grolleman
 
PDF
Getting Started with Puppet on Windows PuppetConf 2014
Josh Cooper
 
PDF
London Puppet Camp 2015: Hiscox
Puppet
 
PDF
Six Weird Facts about Puppet on Windows
Puppet
 
PPTX
Patch Management on Windows with Puppet
Puppet
 
PDF
Building windows infrastructure with puppet
Alexander Tsirel
 
PPTX
Puppet User Group: Windows Edition
Puppet
 
PPTX
Package Management on Windows with Chocolatey
Puppet
 
PDF
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Rob Reynolds
 
PDF
PuppetConf track overview: Windows
Puppet
 
PDF
Puppet camp Portland 2015: -windows (1)
Puppet
 
PPTX
Deploying IIS and ASP.NET with Puppet
Puppet
 
PDF
Managing windows with Puppet and Chocolatey
SethMcBean
 
PPT
TechMentor Fall, 2011 - WDS Tricks You Didn't Know
Concentrated Technology
 
Managing Windows Systems with Puppet - PuppetConf 2013
Puppet
 
Webinar - Windows Application Management with Puppet
OlinData
 
Getting Started with Puppet on Windows - PuppetConf 2014
Puppet
 
Windows Configuration Management: Managing Packages, Services, & Power Shell-...
Puppet
 
Puppet Camp Duesseldorf 2014: Bas Grolleman - Using puppet on windows, do's a...
NETWAYS
 
Puppet Camp Düsseldorf 2014:Puppet and Windows: Do's and Don'ts
Puppet
 
Puppet and windows do's and don'ts
Bas Grolleman
 
Getting Started with Puppet on Windows PuppetConf 2014
Josh Cooper
 
London Puppet Camp 2015: Hiscox
Puppet
 
Six Weird Facts about Puppet on Windows
Puppet
 
Patch Management on Windows with Puppet
Puppet
 
Building windows infrastructure with puppet
Alexander Tsirel
 
Puppet User Group: Windows Edition
Puppet
 
Package Management on Windows with Chocolatey
Puppet
 
Puppet on Windows: Now You're Getting Chocolatey PuppetConf2013
Rob Reynolds
 
PuppetConf track overview: Windows
Puppet
 
Puppet camp Portland 2015: -windows (1)
Puppet
 
Deploying IIS and ASP.NET with Puppet
Puppet
 
Managing windows with Puppet and Chocolatey
SethMcBean
 
TechMentor Fall, 2011 - WDS Tricks You Didn't Know
Concentrated Technology
 
Ad

More from Rob Reynolds (11)

PDF
Chocolatey for Organizations: Easily Manage Software - PowerShell Summit 2019
Rob Reynolds
 
PDF
Modern Software Management on Windows with Chocolatey and Puppet
Rob Reynolds
 
PDF
Chocolatey + DSC = Software Automation Sweeter - PowerShell Day UK
Rob Reynolds
 
PDF
Modern Software Management on Windows w/Chocolatey
Rob Reynolds
 
PDF
Chocolatey + Artifactory = A Sweet Solution for Managing Windows
Rob Reynolds
 
PDF
Modern Software Management on Windows w/Chocolatey - That Conference 2017
Rob Reynolds
 
PDF
DevOps: What is This Puppet You Speak Of?
Rob Reynolds
 
PDF
DevOps: Using Vagrant to Enhance Your Day to Day Development
Rob Reynolds
 
PPTX
Automated Testing but like for PowerShell (April 2012)
Rob Reynolds
 
PDF
DevOps: Getting Started with Puppet on Windows
Rob Reynolds
 
DOC
UppercuT - Getting Started
Rob Reynolds
 
Chocolatey for Organizations: Easily Manage Software - PowerShell Summit 2019
Rob Reynolds
 
Modern Software Management on Windows with Chocolatey and Puppet
Rob Reynolds
 
Chocolatey + DSC = Software Automation Sweeter - PowerShell Day UK
Rob Reynolds
 
Modern Software Management on Windows w/Chocolatey
Rob Reynolds
 
Chocolatey + Artifactory = A Sweet Solution for Managing Windows
Rob Reynolds
 
Modern Software Management on Windows w/Chocolatey - That Conference 2017
Rob Reynolds
 
DevOps: What is This Puppet You Speak Of?
Rob Reynolds
 
DevOps: Using Vagrant to Enhance Your Day to Day Development
Rob Reynolds
 
Automated Testing but like for PowerShell (April 2012)
Rob Reynolds
 
DevOps: Getting Started with Puppet on Windows
Rob Reynolds
 
UppercuT - Getting Started
Rob Reynolds
 
Ad

Recently uploaded (20)

PPTX
declaration of Variables and constants.pptx
meemee7378
 
PPTX
Iobit Driver Booster Pro 12 Crack Free Download
chaudhryakashoo065
 
PDF
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
PDF
capitulando la keynote de GrafanaCON 2025 - Madrid
Imma Valls Bernaus
 
PDF
Which Hiring Management Tools Offer the Best ROI?
HireME
 
PDF
Telemedicine App Development_ Key Factors to Consider for Your Healthcare Ven...
Mobilityinfotech
 
PDF
Writing Maintainable Playwright Tests with Ease
Shubham Joshi
 
PDF
Rewards and Recognition (2).pdf
ethan Talor
 
PDF
TEASMA: A Practical Methodology for Test Adequacy Assessment of Deep Neural N...
Lionel Briand
 
PDF
AWS Consulting Services: Empowering Digital Transformation with Nlineaxis
Nlineaxis IT Solutions Pvt Ltd
 
PDF
Best Software Development at Best Prices
softechies7
 
DOCX
Zoho Creator Solution for EI by Elsner Technologies.docx
Elsner Technologies Pvt. Ltd.
 
PPTX
ERP Systems in the UAE: Driving Business Transformation with Smart Solutions
dheeodoo
 
PDF
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
PPTX
IObit Driver Booster Pro Crack Download Latest Version
chaudhryakashoo065
 
PDF
Code Once; Run Everywhere - A Beginner’s Journey with React Native
Hasitha Walpola
 
PPTX
IDM Crack with Internet Download Manager 6.42 Build 41 [Latest 2025]
pcprocore
 
PPTX
For my supp to finally picking supp that work
necas19388
 
PDF
Why Edge Computing Matters in Mobile Application Tech.pdf
IMG Global Infotech
 
PDF
Alur Perkembangan Software dan Jaringan Komputer
ssuser754303
 
declaration of Variables and constants.pptx
meemee7378
 
Iobit Driver Booster Pro 12 Crack Free Download
chaudhryakashoo065
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
capitulando la keynote de GrafanaCON 2025 - Madrid
Imma Valls Bernaus
 
Which Hiring Management Tools Offer the Best ROI?
HireME
 
Telemedicine App Development_ Key Factors to Consider for Your Healthcare Ven...
Mobilityinfotech
 
Writing Maintainable Playwright Tests with Ease
Shubham Joshi
 
Rewards and Recognition (2).pdf
ethan Talor
 
TEASMA: A Practical Methodology for Test Adequacy Assessment of Deep Neural N...
Lionel Briand
 
AWS Consulting Services: Empowering Digital Transformation with Nlineaxis
Nlineaxis IT Solutions Pvt Ltd
 
Best Software Development at Best Prices
softechies7
 
Zoho Creator Solution for EI by Elsner Technologies.docx
Elsner Technologies Pvt. Ltd.
 
ERP Systems in the UAE: Driving Business Transformation with Smart Solutions
dheeodoo
 
CodeCleaner: Mitigating Data Contamination for LLM Benchmarking
arabelatso
 
IObit Driver Booster Pro Crack Download Latest Version
chaudhryakashoo065
 
Code Once; Run Everywhere - A Beginner’s Journey with React Native
Hasitha Walpola
 
IDM Crack with Internet Download Manager 6.42 Build 41 [Latest 2025]
pcprocore
 
For my supp to finally picking supp that work
necas19388
 
Why Edge Computing Matters in Mobile Application Tech.pdf
IMG Global Infotech
 
Alur Perkembangan Software dan Jaringan Komputer
ssuser754303
 

Puppet On Windows - Puppet Camp DC 2015

  • 2. Rob Reynolds • Developer at Puppet Labs • Creator of Chocolatey • Making your Windows world a better place • Enjoys long walks on the beach… • @ferventcoder
  • 3. Agenda • Puppet, Windows, and You • Windows Module Pack • Other Windows Modules • Demo • Questions
  • 5. Puppet, Windows, and You • “How does Puppet compare to <insert other Config Mgmt tool here> on Windows”? • “How well does Puppet work on Windows?”
  • 6. How Well Does Puppet Work On Windows?
  • 7. Puppet – Windows Platforms • Servers: Windows Server 2003+ (Puppet Agent 1.3.0/Puppet 4.3.0+ is Windows 2008+) • Microsoft Extended Support for 2003 ended 7/14/2015. • Desktops: Windows Vista+ • Puppet comes as x86 or x64 • Windows since 2011
  • 8. Puppet – Windows Details • x64 as of Puppet 3.7.0 • Case-sensitive • File system / registry redirection when using 32-bit Puppet on 64-bit Windows. • File paths • Built-in Windows Package Provider
  • 9. Puppet is Case-Sensitive / Windows is Not • C:Windows == c:windows in Windows • C:Windows != c:windows in Puppet • Puppet will see two resources with different case as different resources. • What is the recommendation? • Use lowercase as much as possible (except where you care about the case e.g. creating folders) • Always match case for resource relationships (e.g. subscribe/notify).
  • 10. File System Redirection • C:Windowssystem32 is translated to C:WindowsSysWOW64 where the 32 bit binaries are when using 32-bit Puppet on 64-bit Windows systems. • Thanks Microsoft! • How do I avoid? • Use 64-bit Puppet on 64-bit Windows systems • SysNative (c:/sysnative) when you really want the 64 bit files. • $system32 fact 3.7.3+.
  • 11. File System Redirection Compensation • http://docs.puppetlabs.com/puppet/latest/reference/ lang_windows_file_paths.html#compensating-for-redirection
  • 12. Registry Redirection • HKLMSOFTWARE is redirected to HKLMSOFTWAREWow6432Node • How do I avoid? • Use 64-bit Puppet on 64-bit Windows systems. • Use the registry module, it disables redirection unless explicitly requested. • Use “| 0x100” in custom facts.
  • 13. File Paths • ‘C:Windowssystem32’ • ‘C:/Windows/system32’ • “C:Windowssystem32” • What is the recommendation? • Always use forward slashes except when path is being given to a Windows program for evaluation.
  • 14. Built-in Windows Package Provider • Source is where the installer file
 is located • Title must match exactly 
 DisplayName • Unicode characters may present 
 an issue • Not upgradeable • Is there a better way? • Use Chocolatey provider 
 instead.
  • 15. Chocolatey Package Provider • Source is location for packages • Title is the abitrary name of
 the package • Upgradeable / holdable • Platform agnostic packaging • Package resource default to provider => chocolatey for Windows.
  • 16. • puppet/windowsfeature • puppet/download_file • puppet/iis • chocolatey/chocolatey • baderious/windows_env Windows Module Pack • puppetlabs/registry • puppetlabs/powershell • puppetlabs/reboot • puppetlabs/acl • puppetlabs/wsus_client
  • 17. Other Notable Windows Modules • puppetlabs/dsc - PowerShell DSC Module • cyberious/pget • counsyl/windows • 150+ Modules on the Forge supporting Windows!
  • 19. Windows Resources • file • user • group • scheduled_task • package • service • exec • host • reboot • acl • windowsfeature • windows_env • iis:manage_site • registry_key • registry_value • More w/modules
  • 20. Demos
  • 21. Questions / Reference • https://puppetlabs.com • https://docs.puppetlabs.com • https://docs.puppetlabs.com/windows • https://forge.puppetlabs.com/puppetlabs/windows • @ferventcoder