getting started with puppet on windows puppetconf 2014

38
2014 Presented by Getting Started with Puppet on Windows Josh Cooper Principal Engineer | Puppet Labs @coopjn Thursday, September 25, 14

Upload: josh-cooper

Post on 07-Jun-2015

571 views

Category:

Technology


0 download

DESCRIPTION

Learn how to use Puppet on Windows

TRANSCRIPT

Page 1: Getting Started with Puppet on Windows PuppetConf 2014

2014

Presented by

Getting Started with Puppet on Windows Josh CooperPrincipal Engineer | Puppet Labs@coopjn

Thursday, September 25, 14

Page 2: Getting Started with Puppet on Windows PuppetConf 2014

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

Page 3: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Thursday, September 25, 14

Page 4: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Overview What is Puppet?

Getting started

Effectively managing Windows with Puppet

Thursday, September 25, 14

Page 5: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

What is Puppet?

Thursday, September 25, 14

Page 6: Getting Started with Puppet on Windows PuppetConf 2014

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

Page 7: Getting Started with Puppet on Windows PuppetConf 2014

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

Page 8: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

service { 'w32time': ensure => running, enable => true,}

Thursday, September 25, 14

Page 9: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Relationshipsregistry_value { 'HKLM\System\...\W32Time\Parameters\NtpServer': ... notify => Service['w32time'],}service { 'w32time': ...}

Thursday, September 25, 14

Page 10: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Getting Started• Supported Platforms

• Installation

• Applications

• Resources

Thursday, September 25, 14

Page 11: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

to

Thursday, September 25, 14

Page 12: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Thursday, September 25, 14

Page 13: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Thursday, September 25, 14

Page 14: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Thursday, September 25, 14

Page 15: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Applications• resource

• apply

• agent

Thursday, September 25, 14

Page 16: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

puppet resource

Thursday, September 25, 14

Page 17: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

packages

Thursday, September 25, 14

Page 18: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

puppet apply

Thursday, September 25, 14

Page 19: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

puppet agent

Thursday, September 25, 14

Page 20: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Resources• Core

• Supported Modules

• Community Modules

• Tooling

Thursday, September 25, 14

Page 21: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Core Resourcesexec

file

host

user

group

package

service

scheduled_task

Thursday, September 25, 14

Page 22: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Supported Modulesacl

powershell

reboot

registry

concat

stdlib

inifile

java_ks

Thursday, September 25, 14

Page 23: Getting Started with Puppet on Windows PuppetConf 2014

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

Page 24: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

puppet modulemaybe we skip this?

Thursday, September 25, 14

Page 25: Getting Started with Puppet on Windows PuppetConf 2014

Presented by https://docs.puppetlabs.com/geppetto/latest/

Thursday, September 25, 14

Page 26: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

http://bit.ly/1o9E2EH

Thursday, September 25, 14

Page 27: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

https://portal.azure.com

Thursday, September 25, 14

Page 28: Getting Started with Puppet on Windows PuppetConf 2014

Presented by http://lego-technique.blogspot.com/

Thursday, September 25, 14

Page 29: Getting Started with Puppet on Windows PuppetConf 2014

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

Page 30: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Windows Accountsgroup { 'Administrators': ensure => present, members => ['Administrator', 'S-1-5-19', 'NT AUTHORITY\Network Service'],}

Thursday, September 25, 14

Page 31: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Case Sensitivitypackage { 'javaruntime': ensure => installed, provider => chocolatey, before => Service['jenkinsslave'],}service { 'jenkinsslave': ensure => running, enable => true,}

Thursday, September 25, 14

Page 32: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Why oh Whyfile { 'C:\Windows\system32': ensure => directory}file { 'C:\Windows\sysnative': ensure => directory}

Thursday, September 25, 14

Page 33: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

UAC is sort of like sudoish...

Thursday, September 25, 14

Page 34: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

Where’s my data?

Thursday, September 25, 14

Page 35: Getting Started with Puppet on Windows PuppetConf 2014

Presented by

platform { 'windows': ensure => firstclass}

Thursday, September 25, 14

Page 36: Getting Started with Puppet on Windows PuppetConf 2014

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

Page 37: Getting Started with Puppet on Windows PuppetConf 2014

Do You Speak ?

http://puppetlabs.com/jobs

Thursday, September 25, 14

Page 38: Getting Started with Puppet on Windows PuppetConf 2014

Thank You!

Josh [email protected]

@coopjn

Thursday, September 25, 14