rake puppetexpert:create - puppet camp silicon valley 2014

Post on 10-May-2015

546 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Slides for the 'rake puppetexpert:create' presentation at Puppet Camp SiliconValley 2014

TRANSCRIPT

rake puppetexpert:create

Nathan Valent ine

Professional Services Engineer - Puppet Labs

nathan@puppet labs.com

@nrvale0

Why am I here?

Managing Windows with Puppet?

Spooky action at a distance withMCollective!

Awesome sauce with Puppet + Docker?

Argh! Let me go to my corner and playwith my toys!

Let's play a game...

Easy"What is Puppet?" with basic examples

clever things others have done with Puppet

How to DevOps-ify your organization with Puppet as a core tool

More DifficultBeyond the basics, how do I become a Puppet expert?

Tons of resources! What's the progression?

Meta-learning

Meta-learningDeconstruction: "...minimum learnable units, the LEGO blocks..."

Selection: "Which 20% of the blocks?"

Sequencing: "In what order?"

** shamelessly stolen from Wikipedia and T4HC

Selection and Sequencing are important!

Let's focus onReview of available resources

Selection & Sequencing

BTW, this presentation linked from Twitter later today:

@nrvale0

Getting Started

The Usual Suspectspuppet-users mailing list:

http://goo.gl/dgvApa"Whoa, Nelly! That's a lot of email!"

#puppet on irc.freenode.net

Puppet Labs Learning Management Systemhttp://puppetlabs.com/learn

Puppet Enterprise Learning VMhttp://info.puppetlabs.com/download-learning-puppet-VM.html

Puppet Enterprise Traininghttp://puppetlabs.com/services/training

Pro Puppet, Second Editionhttp://goo.gl/SEjW6N

http://ask.puppetlabs.com

http://puppetlabs.com/blog

Twitter: @PuppetLabs

Oh, also...real people in The Real World!PuppetConf 2014 in San Francisco, CA!

PuppetCamps ( You must have figured this one out on your own. ;) )

Meetups

Puppet DSL Style

Validate Your Code$ ( cd mymodule && puppet parser validate `find ./ -name '*.pp'` )

very basic sanity check ( brackets, commas, etc)

doesn't check for valid attributes for the type

Style Guide Check$ sudo gem install puppet-lint && puppet-lint --with-filename ./mymodule

http://puppet-lint.com

very basic sanity check ( brackets, commas, quotes, etc )

doesn't check for valid attributes for the type

Puppet Style ProTipImplement logic which rejects submission of Puppet code code to your centralgit/SVN/etc repositories unless the code passes both 'puppet parser' and puppet-lint runs.

Online Puppet Lintpuppet-lint As A Service?

http://www.puppetlinter.com

And did you know it has a GitHub Post-Receive Hook?

http://www.puppetlinter.com/github

Roles and Profileshigher and higher levels of abstraction for Puppet code

first publicly proposed by Craig Dunn in:http://www.craigdunn.org/2012/05/239/

now taught as part of Puppet Labs training

roles composed of profiles

profiles composed of component modules (puppetlabs/apache)

Let's see some code...

Hierasource Puppet top-scopes and class parameters from multiple backends

YAML backend is most popular. Also JSON.

other backends allow non-coders to fiddle with data fed to pre-writtenmodules

CouchDB, MySQL, LDAP, etc - lots of Hiera backends in the community

Tooling (and retooling)

GitFor better or worse (Hg lovers), Git dominates in the Puppet community.

GitHub : enough said

BitBucket : http://bitbucket.orgfree private repos

'The Git Book' : http://git-scm.com/book

'Learn Git Branching' : http://pcottle.github.io/learnGitBranching/

New title: "First, learn Vagrant."

http://vagrantup.com

VagrantDisposable repeatable VMs with:

VirtualBox

VMWare

LXC

Docker

etc

Let's see some Vagrant magic!

Google these when you get home!librarian-puppet (cool) : https://github.com/rodjek/librarian-puppet

r10k (way cool) : https://github.com/adrienthebo/r10k

Google these too!vagrant-pe_build : https://github.com/adrienthebo/vagrant-pe_build

vagrant-oscar : https://github.com/adrienthebo/oscar

Thanks for listening! Feed back tonathan@puppetlabs.com

top related