Windows Configuration Management
Managing Packages, Services & PowerShell
Ethan Brown
Senior Software Engineer
Grace Andrews
Technical Solutions Engineer
Agenda
• How Puppet Enterprise works
• Installing Packages (Chocolatey)
• Managing Services (WSUS)
• Using PowerShell with Puppet
• Puppet for Windows
• Q&A
Our software
automates the provisioning,
configuration &
ongoing management
of your machines & the applications,
services & software running on them.
PUPPET DEPLOYMENT
Ubuntu Server
PUPPET MASTER
Windows Server Cisco Switch
HOW PUPPET ENTERPRISE WORKS
1. Define
3.
Enforce
PUPPET
ENTERPRI
SE
2. Simulate4. Report
1. Define the desired state
2. Simulate configuration changes
3. Enforce desired state automatically
4. Report on differences & changes
made
INSTALLING PACKAGES
• Methods for installing packages
• Chocolatey
• Benefits
• Ensure that correct packages are installed
• Remediating drift
• Reporting (you can see what packages are
installed on each machine)
Chocolatey Workflow
Package Source
• Here is the Chocolatey workflow.
It’s worth noting that there is no
Puppet in this workflow (yet)
• 1: User or system requests an
installation of package X.
Package X isn’t on the system.
• Chocolatey goes to its source
repositories (by default it’s
chocolatey.org) and requests the
package.
• If Source has the package it says
here you go and hands package
URL over
• OS downloads package and
package install proceeds.
Windows Desktop
choco install x
do you have x
yes here is x
performs silent install of x
1
2
3
4
CODE
DEMO
MANAGING SERVICES
• Service Resources with Puppet
• Windows Server Update Services (WSUS)
Patch Set
Test
Patch Set
Development
Windows Server
Patch Set
Production
Dev Release Test Release
Promotion Process
Working with Puppet Enterprise
CODE
USING POWERSHELL
• Puppet Supported PowerShell Module:
https://forge.puppetlabs.com/puppetlabs/powershell
• Benefits of using PowerShell with Puppet
• Get started quickly
• Perform certain tasks that you can’t perform with
Puppet
• Create a template
PUPPET LABS WINDOWS SUPPORT
• 32- & 64-bit Support – Native MSI packages for x64 as of Puppet
Enterprise 3.7
• Broad Platform Support - Windows 2008, 2012, 7, 8
• Windows Provisioning - Provision Windows OSes with Razor
• Puppet Supported & Approved Modules for Windows - including the
Windows Module Pack, Supported SQL Sever & DSC modules
• 100s of Community Modules – Adding more each week
• Azure Integration – Windows Azure extension handler for bootstrapping
Puppet installs. Supported Azure module.
SUPPORTED & APPROVED MODULES
Puppet Supported Modules
• SQL Server – Installs & manages MS SQL Server 2012 & 2014 on Windows systems
• WSUS Client – Configure clients to point to update servers; schedule updates
• DSC – Manages PowerShell DSC resources
• Azure – Provision and manage Azure VMs
• ACL – manage permissions with Windows ACLs
• Registry – manage Registry keys and values
• PowerShell – execute PowerShell commands with Puppet
• Reboot – Automatically reboot after install
Puppet Approved Modules
• IIS – install and manage IIS
• Chocolatey – package manager
• windows_env – manage Windows environment variables
• Windows Java – Install and manage Oracle Java on Windows
• pget – PowerShell alternative to wget or curl
RESOURCES
PuppetConf 2015 Windows Track
• Chocolatey and Puppet - Rob Reynolds
• Azure for the Non-Microsoft Person - Rob Reynolds & Scott Hanselman, MSFT
• Better Together: Managing Windows with Puppet and DSC - Ethan Brown & Bruce
Payette, MSFT
• Beyond the Registry - Matthew Stone, T-Mobile
• The Wild World of Windows: Developing for Puppet on Windows - Travis Fields, Nike
• IT Leader Breakout Q&A - Angel Calvo, MSFT
Blog
• Chocolatey blog series
• PowerShell DSC blog series
Education
• Learning VM
• Puppet Essentials for Windows – Instructor-led
• Puppet Essentials for Windows - Virtual
• Puppet Fundamentals
WINDOWS WEBINAR SERIES
Register for upcoming webinars at:
http://info.puppetlabs.com/1885-Windows-Series-
Main_LP-Registration.html
• Deploying IIS and ASP.NET with Puppet
• Package Management on Windows with Chocolatey
• Managing PowerShell DSC with Puppet
• Patch Management on Windows with Puppet
• Setting up Windows for System and Application Monitoring
• Getting Up and Running with the Windows Module Pack
• Get Started on Azure with Puppet
Questions &
Answers

Windows Configuration Management: Managing Packages, Services, & Power Shell-02102016

  • 1.
    Windows Configuration Management ManagingPackages, Services & PowerShell Ethan Brown Senior Software Engineer Grace Andrews Technical Solutions Engineer
  • 2.
    Agenda • How PuppetEnterprise works • Installing Packages (Chocolatey) • Managing Services (WSUS) • Using PowerShell with Puppet • Puppet for Windows • Q&A
  • 3.
    Our software automates theprovisioning, configuration & ongoing management of your machines & the applications, services & software running on them.
  • 4.
    PUPPET DEPLOYMENT Ubuntu Server PUPPETMASTER Windows Server Cisco Switch
  • 5.
    HOW PUPPET ENTERPRISEWORKS 1. Define 3. Enforce PUPPET ENTERPRI SE 2. Simulate4. Report 1. Define the desired state 2. Simulate configuration changes 3. Enforce desired state automatically 4. Report on differences & changes made
  • 6.
    INSTALLING PACKAGES • Methodsfor installing packages • Chocolatey • Benefits • Ensure that correct packages are installed • Remediating drift • Reporting (you can see what packages are installed on each machine)
  • 7.
    Chocolatey Workflow Package Source •Here is the Chocolatey workflow. It’s worth noting that there is no Puppet in this workflow (yet) • 1: User or system requests an installation of package X. Package X isn’t on the system. • Chocolatey goes to its source repositories (by default it’s chocolatey.org) and requests the package. • If Source has the package it says here you go and hands package URL over • OS downloads package and package install proceeds. Windows Desktop choco install x do you have x yes here is x performs silent install of x 1 2 3 4
  • 8.
  • 9.
  • 10.
    MANAGING SERVICES • ServiceResources with Puppet • Windows Server Update Services (WSUS)
  • 11.
    Patch Set Test Patch Set Development WindowsServer Patch Set Production Dev Release Test Release Promotion Process Working with Puppet Enterprise
  • 12.
  • 13.
    USING POWERSHELL • PuppetSupported PowerShell Module: https://forge.puppetlabs.com/puppetlabs/powershell • Benefits of using PowerShell with Puppet • Get started quickly • Perform certain tasks that you can’t perform with Puppet • Create a template
  • 14.
    PUPPET LABS WINDOWSSUPPORT • 32- & 64-bit Support – Native MSI packages for x64 as of Puppet Enterprise 3.7 • Broad Platform Support - Windows 2008, 2012, 7, 8 • Windows Provisioning - Provision Windows OSes with Razor • Puppet Supported & Approved Modules for Windows - including the Windows Module Pack, Supported SQL Sever & DSC modules • 100s of Community Modules – Adding more each week • Azure Integration – Windows Azure extension handler for bootstrapping Puppet installs. Supported Azure module.
  • 15.
    SUPPORTED & APPROVEDMODULES Puppet Supported Modules • SQL Server – Installs & manages MS SQL Server 2012 & 2014 on Windows systems • WSUS Client – Configure clients to point to update servers; schedule updates • DSC – Manages PowerShell DSC resources • Azure – Provision and manage Azure VMs • ACL – manage permissions with Windows ACLs • Registry – manage Registry keys and values • PowerShell – execute PowerShell commands with Puppet • Reboot – Automatically reboot after install Puppet Approved Modules • IIS – install and manage IIS • Chocolatey – package manager • windows_env – manage Windows environment variables • Windows Java – Install and manage Oracle Java on Windows • pget – PowerShell alternative to wget or curl
  • 16.
    RESOURCES PuppetConf 2015 WindowsTrack • Chocolatey and Puppet - Rob Reynolds • Azure for the Non-Microsoft Person - Rob Reynolds & Scott Hanselman, MSFT • Better Together: Managing Windows with Puppet and DSC - Ethan Brown & Bruce Payette, MSFT • Beyond the Registry - Matthew Stone, T-Mobile • The Wild World of Windows: Developing for Puppet on Windows - Travis Fields, Nike • IT Leader Breakout Q&A - Angel Calvo, MSFT Blog • Chocolatey blog series • PowerShell DSC blog series Education • Learning VM • Puppet Essentials for Windows – Instructor-led • Puppet Essentials for Windows - Virtual • Puppet Fundamentals
  • 17.
    WINDOWS WEBINAR SERIES Registerfor upcoming webinars at: http://info.puppetlabs.com/1885-Windows-Series- Main_LP-Registration.html • Deploying IIS and ASP.NET with Puppet • Package Management on Windows with Chocolatey • Managing PowerShell DSC with Puppet • Patch Management on Windows with Puppet • Setting up Windows for System and Application Monitoring • Getting Up and Running with the Windows Module Pack • Get Started on Azure with Puppet
  • 18.