2014
Presented by
Getting Started with Puppet on Windows Josh CooperPrincipal Engineer | Puppet Labs@coopjn
Thursday, September 25, 14
Presented by
What not to do1 @echo off2 net stop w32time3 w32tm /config /syncfromflags:manual \ /manualpeerlist:"0.pool.ntp.org,1.pool.ntp.org"4 net start w32time
Thursday, September 25, 14
Presented by
Thursday, September 25, 14
Presented by
Overview What is Puppet?
Getting started
Effectively managing Windows with Puppet
Thursday, September 25, 14
Presented by
What is Puppet?
Thursday, September 25, 14
Presented by
#puppetize registry_value { 'HKLM\System\...\W32Time\Parameters\NtpServer': ensure => present, type => array, data => ['0.pool.ntp.org','1.pool.ntp.org'], notify => Service['w32time'],}service { 'w32time': ensure => running, enable => true,}
Thursday, September 25, 14
Presented by
registry_value { 'HKLM\System\...\W32Time\Parameters\NtpServer': ensure => present, type => array, data => ['0.pool.ntp.org','1.pool.ntp.org'], notify => Service['w32time'],}
Thursday, September 25, 14
Presented by
service { 'w32time': ensure => running, enable => true,}
Thursday, September 25, 14
Presented by
Relationshipsregistry_value { 'HKLM\System\...\W32Time\Parameters\NtpServer': ... notify => Service['w32time'],}service { 'w32time': ...}
Thursday, September 25, 14
Presented by
Getting Started• Supported Platforms
• Installation
• Applications
• Resources
Thursday, September 25, 14
Presented by
to
Thursday, September 25, 14
Presented by
Thursday, September 25, 14
Presented by
Thursday, September 25, 14
Presented by
Thursday, September 25, 14
Presented by
Applications• resource
• apply
• agent
Thursday, September 25, 14
Presented by
puppet resource
Thursday, September 25, 14
Presented by
packages
Thursday, September 25, 14
Presented by
puppet apply
Thursday, September 25, 14
Presented by
puppet agent
Thursday, September 25, 14
Presented by
Resources• Core
• Supported Modules
• Community Modules
• Tooling
Thursday, September 25, 14
Presented by
Core Resourcesexec
file
host
user
group
package
service
scheduled_task
Thursday, September 25, 14
Presented by
Supported Modulesacl
powershell
reboot
registry
concat
stdlib
inifile
java_ks
Thursday, September 25, 14
Presented by
Community Moduleshttps://forge.puppetlabs.com/modules?sort=downloads&q=windows
Paul Stack & Liam Bennett (OpenTable)
Rich Siegel
Marc Sutter
Thursday, September 25, 14
Presented by
puppet modulemaybe we skip this?
Thursday, September 25, 14
Presented by https://docs.puppetlabs.com/geppetto/latest/
Thursday, September 25, 14
Presented by
http://bit.ly/1o9E2EH
Thursday, September 25, 14
Presented by
https://portal.azure.com
Thursday, September 25, 14
Presented by http://lego-technique.blogspot.com/
Thursday, September 25, 14
Presented by
Quotes & Interpolation$taskmgr = 'HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe' registry_value { "${taskmgr}\\Debugger": ensure => present, type => string, data => 'c:\sysinternals\procexp.exe', require => Package['sysinternals'],}
Thursday, September 25, 14
Presented by
Windows Accountsgroup { 'Administrators': ensure => present, members => ['Administrator', 'S-1-5-19', 'NT AUTHORITY\Network Service'],}
Thursday, September 25, 14
Presented by
Case Sensitivitypackage { 'javaruntime': ensure => installed, provider => chocolatey, before => Service['jenkinsslave'],}service { 'jenkinsslave': ensure => running, enable => true,}
Thursday, September 25, 14
Presented by
Why oh Whyfile { 'C:\Windows\system32': ensure => directory}file { 'C:\Windows\sysnative': ensure => directory}
Thursday, September 25, 14
Presented by
UAC is sort of like sudoish...
Thursday, September 25, 14
Presented by
Where’s my data?
Thursday, September 25, 14
Presented by
platform { 'windows': ensure => firstclass}
Thursday, September 25, 14
Presented by
Next StepsDocumentation: http://docs.puppetlabs.com/windows
Training: Puppet Essentials for Windows
Google Groups: puppet-users & puppet-dev
https://ask.puppetlabs.com
https://tickets.puppetlabs.com
Thursday, September 25, 14
Do You Speak ?
http://puppetlabs.com/jobs
Thursday, September 25, 14