Puppet Camp Dallas 2014: How Puppet Ops Rolls
Upcoming SlideShare
Loading in...5

Puppet Camp Dallas 2014: How Puppet Ops Rolls



Puppet Camp Dallas 2014: "How Puppet Ops Rolls" by Joe Rodriguez, Puppet Labs

Puppet Camp Dallas 2014: "How Puppet Ops Rolls" by Joe Rodriguez, Puppet Labs



Total Views
Slideshare-icon Views on SlideShare
Embed Views



3 Embeds 38

http://puppetlabs.com 31
https://puppetlabs.com 5
http://www.slideee.com 2



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Puppet Camp Dallas 2014: How Puppet Ops Rolls Puppet Camp Dallas 2014: How Puppet Ops Rolls Presentation Transcript

    • PuppetLabs How Puppet Ops Rolls! 10 June 2014 Joe Rodriguez (JRod) Ops Wrangler - Puppet Labs, Inc.
    • $(whoami)
    • So what are we talking about?
    • Q: How does Puppet Ops do Puppet?
    • Answer: Good Question! Believe it or Not, our challenges are not any different than yours.
    • How are we not different? Internal PaaS Infrastructure: Puppet Engineering & Delivery Cloud Infrastructure: Various Web Properties *Rackspace *Linode *GCE *AWS Networking infrastructure *Remoteofficeinfrastructure. *ColocationRedundancy.
    • Today's Goals: Is To: *Giveyouahigh-levelperspectiveofthingsPuppetOpsdoesinourPuppetCode. *Getyouthinkingaboutpuppetthingsnotnotnecessarilycoveredininthedocs. Not To: Show you how to use Puppet.
    • The High Points: Engineer great modules or use known good modules! Engineer your Puppet code with Roles/Profiles. Data: What's in your Hiera? R10k and Dynamic Environments. Puppet SCM work-flows Pro Tips: Around Facts and Functions. Extras: Puppet Tools in the wild that are quite useful.
    • Modules
    • Module Design
    • Understand how a module looks, feels, and is used in your environment.
    • A few points on Modules: The life-blood of a great puppet infrastructure are modules. Strive not to reinvent the wheel - Forge.puppetlabs.com and Github Be aware, not all modules are created equal. A good rule of thumb: If your module code is a few yards beyond a simple PFS pattern then it time to BGTM. Example: PGPool - https://github.com/jrodriguezjr/puppet-pgpool2
    • Roles and Profiles
    • Roles/Profiles In General: Allows separation of Tech and Business logic in Puppet Code - Craig Dunn, Hunter Haugen Are meant to consume Modules in a logical way. Allows for Code organization. Architecture paradigm: For you Devs, its comparative to MVC programming patterns.
    • Role:
    • Profiles:
    • Hiera
    • Hiera: Let Data Drive Everything. Allows you to drive puppet with data. Allows you to group data according to groups or environments.
    • Our Hiera Structure:
    • R10K, Dynamic Environments, & Puppet Work-flows Adrien Thebo: Author of R10k If you have more than one dev, look at R10k and Dynamic Environments. IMHO: It IS the secret to staying agile and developing Puppetcode fast with a Puppet Workflow.
    • A look at the Puppetfile:
    • Extras: Useful Puppet Tools in the wild we've used: Puppet Query - Eric D., Spotify Puppet Dashboard - FOSS
    • Bonus Tip(s): Things you should use in case you are not already ;) : Linting and Code Checking: puppet-lint puppetparservalidate<puppetcode.pp> Smoke testing: puppetapply--noop
    • Bonus Tips (cont.) Unit-testing rspec-puppet bundleexecrakespec Acceptance testing beaker-rspec
    • On Puppet Infrastructure - Hardware (Avoid Puppet drag!) Anyone running a decent sized puppet infrastructure knows that at times it can be slow. Run Puppet on a decently sized box! Preferably one with SSDs, a good amount of procs, and memory.
    • Summary: Keep your Puppet Operation Expenditure Low. (Sysadmin/Dev Time) == $$$ Recap: -StriveEngineerGreatModules-understandyourLegos!(JoeK.) -RockoutwithRoles/Profiles -LetHieraDriveyourdata. -FallinlovewithR10K&DynamicEnvironments.Getyourwork-flowon! -Learntoloveyourfactsandfunctions.
    • That's all she wrote! Q & A
    • References: Building Great Modules. http://docs.puppetlabs.com/guides/module_guides/bgtm.html Roles and Profiles: https://github.com/hunner/roles_and_profiles http://www.craigdunn.org/2012/05/239/ R10K and Dynamic Environments: http://hunnur.com/blog/2010/10/dynamic-git-branch-puppet-environments/ http://puppetlabs.com/blog/git-workflow-and-puppet-environments/ Great AIO (All-In-One) Series: http://garylarizza.com/ Other tools: https://github.com/sodabrew/puppet-dashboard
    • Thank you Joe Rodriguez (JRod) Ops Wrangler - Puppet Labs, Inc. jrod@puppetlabs.com(mailto:jrod@puppetlabs.com) @r0dr1gu3zjr(http://twitter.com/r0dr1gu3zjr)