Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

PuppetConf 2017: Inviting Windows to the Puppet Party- Chris Kittell & Derek Robinson, Walmart Stores


Published on

Adding Windows servers to a Puppet instance can feel like a daunting task, even more so when you already have a large number of Linux servers in Puppet already. Learn how Walmart integrated their Windows servers into Puppet Enterprise. We’ll discuss not only why we chose Puppet over other tools, but why and how we still use tools like DSC, SCCM and GPOs. We’ll also go over the successes and pitfalls we had along the way in using Puppet on Windows, onboarding other teams, and evangelizing our team’s vision to others.

Published in: Technology
  • Login to see the comments

  • Be the first to like this

PuppetConf 2017: Inviting Windows to the Puppet Party- Chris Kittell & Derek Robinson, Walmart Stores

  1. 1. Inviting Windows to the Puppet Party Chris Kittell and Derek Robinson +
  2. 2. Any reference in this presentation to any specific commercial product, process, or service, or the use of any trade, firm or corporation name is for the information purposes only and does not constitute an endorsement or recommendation by Wal-Mart Stores, Inc.
  3. 3. Challenges 40,000 Windows servers Outdated toolchain and processes No version control Point and click culture
  4. 4. Goals Reporting Scalability and speed to implement Tackling greenfield first
  5. 5. Walmart DSC Configuration Management Tool Configurator APIs (no web UI) Facts (not supported yet) Parameters (not supported yet) DSC Resources Microsoft Community Walmart DSC Engine
  6. 6. Worked great!
  7. 7. … until it didn’t 13 major bugs in first 6 months Only 4 people knew how it worked Very limited documentation Powershell v5 would require rewriting scripts We had to constantly tweak WMI settings after 1000 nodes
  8. 8. Then the world changed
  9. 9. Then the world changed 47,000 Linux servers were already managed by Puppet Linux teammates were planning the upgrade to Puppet Enterprise Puppet 3.7 introduced 64-bit support for Windows PowerShell v5 introduced better 3rd party integration Puppet Labs DSC module was announced
  10. 10. Integrating Tools SCCM Image management Software delivery Patch management Active Directory User policy settings Server-side security policy settings Puppet Native resource types DSC Additional plugins and providers Choosing the best tool for the job
  11. 11. How Windows got invited to the party Start small and build on success • Started with new OS version (no “legacy” to worry about) • All new builds are now done using Puppet • > 5,000 servers have been built using Puppet > 7,000 including cloud servers • > 30,000 managed Windows nodes
  12. 12. Big wins Shared learnings Compliance Increased visibility Speed Scale Partnering for solutions
  13. 13. Gotchas Workarounds for Windows Plugin sync issues Standard DSC resources had more stuff than we needed External facts and PowerShell TBD We removed DSC resources we don't use Setting up test environments is important Issue Workaround
  14. 14. Four pillars of success Documentation Automation Collaboration Measurement
  15. 15. What’s next? Onboarding more servers Custom DSC resources PQL Automating infrastructure apps
  16. 16. Key takeaways Buy-in from other teams Visibility and tracking Greater agility
  17. 17. Questions?
  18. 18. Thank you!