55

Click here to load reader

State of Puppet - Puppet Camp Austin

Embed Size (px)

DESCRIPTION

Andy Parker delivers the "State of Puppet" at Puppet Camp Austin 2013.

Citation preview

Page 1: State of Puppet  - Puppet Camp Austin

Andrew Parker@aparker42

IRC: [email protected]

Friday, May 3, 13

Page 2: State of Puppet  - Puppet Camp Austin

Friday, May 3, 13

Page 3: State of Puppet  - Puppet Camp Austin

A Quick Poll

Friday, May 3, 13

Page 4: State of Puppet  - Puppet Camp Austin

The State ofIT

Friday, May 3, 13

Page 5: State of Puppet  - Puppet Camp Austin

More. Faster.

Friday, May 3, 13

Page 6: State of Puppet  - Puppet Camp Austin

Old practices are constraints ...

Friday, May 3, 13

Page 7: State of Puppet  - Puppet Camp Austin

...and old constraints are

gone

Friday, May 3, 13

Page 8: State of Puppet  - Puppet Camp Austin

State of IT Automation

Friday, May 3, 13

Page 9: State of Puppet  - Puppet Camp Austin

How Can Organizations

Achieve High Performance?

HIGH PERFORMING ORGANIZATIONS SHARE TWO COMMON PRACTICES

use version control for infrastructure management

use automated code deployments

Get the 2013 State of DevOps Report at https://puppetlabs.com/solutions/devops/

Friday, May 3, 13

Page 10: State of Puppet  - Puppet Camp Austin

Enabling FrictionlessTechnological Change

Friday, May 3, 13

Page 11: State of Puppet  - Puppet Camp Austin

Customers Everywhere

Friday, May 3, 13

Page 12: State of Puppet  - Puppet Camp Austin

New Approach: SoftwareDefined Infrastructure

1. DEFINE 2. SIMULATE

4. REPORT

Re-usable infrastructure-as-code Before deploying changes

Automatically and reliably Insight into changes

DESIRED STATE

CURRENT STATE

3. ENFORCE

}

Friday, May 3, 13

Page 13: State of Puppet  - Puppet Camp Austin

Lifecycle of a Puppet Run1. Facts The node sends data about its state to the puppet master server. 2.#Catalog#Puppet&uses&the&facts&to&compile&a&Catalog&that&specifies&how&the&node&should&be&configured.& 3.#&Report#Configura9on&changes&are&reported&back&to&the&Puppet&Master. 4.#&Report#Puppet's&open&API&can&also&send&data&to&3rd&party&tools.&

1 Facts 2 Catalog#

Node#

3 Report#

4 Report#Report#Collector#

Friday, May 3, 13

Page 14: State of Puppet  - Puppet Camp Austin

PuppetArchitecture

Web Server Database Server Application Server

Reporting GUI & Workflows Content Admin &

Security

Virtual Machine Cloud Hardware

PUPPET MASTER SERVER

PUPPET AGENT

PUPPET FORGE CONTENT MARKETPLACE

PUPPET AGENT

PUPPET AGENT

PUPPET OPEN SOURCE PLATFORM

Friday, May 3, 13

Page 15: State of Puppet  - Puppet Camp Austin

Simple, Declarative

Friday, May 3, 13

Page 16: State of Puppet  - Puppet Camp Austin

Strong CommunityForum Members Jan 2012 March 2013

puppet-users list 3588 5531

puppet-dev list 724 994

ask.puppetlabs.com N/A 336

#puppet 600 999

Repository Jan 2012 March 2013

Puppet Forks 236 533

Puppet Watchers 526 1230

Friday, May 3, 13

Page 17: State of Puppet  - Puppet Camp Austin

Easy to Get Involved

• Help with Documentation

• Ask/Answer questions

• http://ask.puppetlabs.com

• mailing lists

• IRC

• Help with bug triage

• Contribute code

• Contribute modules on the Forge

• Visit https://puppetlabs.com/community to learn more

Friday, May 3, 13

Page 18: State of Puppet  - Puppet Camp Austin

AUGUST 22 - 23

http://puppetconf.comFriday, May 3, 13

Page 19: State of Puppet  - Puppet Camp Austin

Friday, May 3, 13

Page 20: State of Puppet  - Puppet Camp Austin

Puppet Enterprise

Friday, May 3, 13

Page 21: State of Puppet  - Puppet Camp Austin

Puppet Enterprise

GRAPHICAL USER INTERFACE LIVE MANAGEMENT

SERVICES & SUPPORT VMWARE CLOUD PROVISIONER

Friday, May 3, 13

Page 22: State of Puppet  - Puppet Camp Austin

GUI for Puppet

High-level status of nodes for instant visibility

Time%based*display*for*insight*into*rate*of*change*

Detail*of*node*status*to*pinpoint*specific*issues*

Friday, May 3, 13

Page 23: State of Puppet  - Puppet Camp Austin

PE Live Management

Friday, May 3, 13

Page 24: State of Puppet  - Puppet Camp Austin

VM/Cloud Provisioning

Friday, May 3, 13

Page 25: State of Puppet  - Puppet Camp Austin

Recent Features

• Certificate Signing from the GUI

• Authentication with LDAP and oAuth

Friday, May 3, 13

Page 26: State of Puppet  - Puppet Camp Austin

Puppetand

Related Projects

Friday, May 3, 13

Page 27: State of Puppet  - Puppet Camp Austin

Puppet 3.2.0

• Ruby 2.0 Support

• External Certificate Authority Support

• Experimental “Future” parser

• Slow Catalog Profiling

• OpenWRT OS Support

• DSL modulo operator - %

Friday, May 3, 13

Page 28: State of Puppet  - Puppet Camp Austin

Puppet 3.2.0 - Experimental Parser

• parser = future• Iteration and Enumerables

$a = [1,2,3] each($a) |$value| { notice $value }

• each, foreach, collect, select, reject, reduce, slice

collect([1,20,3]) |$value| { $value < 10 } # produces [1,3]

Friday, May 3, 13

Page 29: State of Puppet  - Puppet Camp Austin

Scope

# dynamic scoping is gone

class parent { $var = "from parent" include included}

class included { notify { $var: } ## NOT GONNA WORK notify { $parent::var: } ## YUP

Friday, May 3, 13

Page 30: State of Puppet  - Puppet Camp Austin

class ntp($server = hiera(ntp_server, ‘time.apple.com’)) { ...}

# can be changed toclass ntp($ntpserver = ‘time.apple.com’) { ...}

Data Binding

Friday, May 3, 13

Page 31: State of Puppet  - Puppet Camp Austin

PerformanceGains

Friday, May 3, 13

Page 32: State of Puppet  - Puppet Camp Austin

Puppet Armatures (ARM)

• Proposals to enhance / add features

• Process for collecting, reviewing, sorting, and recording the result of proposals for enhancements

• Used for work that is significant or large impact

• Community-focused process with improved openness and transparency

github.com/puppetlabs/armatures

Friday, May 3, 13

Page 33: State of Puppet  - Puppet Camp Austin

Puppet Forge: Module Repository

• By the community ... For the community

• Identify and use the best ones

• Contribute your own modules

Jan 2012 April 2013

Modules 260 1050+

Users 930 2325+

Total DownloadsSince Feb 2012 588,000+

Friday, May 3, 13

Page 34: State of Puppet  - Puppet Camp Austin

Puppet Forge: Critical Services

Friday, May 3, 13

Page 35: State of Puppet  - Puppet Camp Austin

Puppet Forge: Manage Solutions

Friday, May 3, 13

Page 36: State of Puppet  - Puppet Camp Austin

Puppet Forge: Utilities

Friday, May 3, 13

Page 37: State of Puppet  - Puppet Camp Austin

MCollective

• Framework to build server orchestration

• Parallel job execution

• Real-time discovery of resources

• Target only the systems you want

Friday, May 3, 13

Page 38: State of Puppet  - Puppet Camp Austin

MCollective 2.2.x

• Network discovery completely pluggable

• Sources of Truth:

• network, database, file, anything

• Result Summarization in the DDL

• Shell Completion support

• ships with zsh and bash examples

Friday, May 3, 13

Page 39: State of Puppet  - Puppet Camp Austin

MCollective 2.2.x - Puppet Agent

• http://srt.ly/mcpuppet

• Orchestrates deployments

• Manages Puppet agent runs, supports:

• noop, tags, splay, environments, server

• enable/disable, custom lock messages

• current status, most recent run status

• Manages resource usage on the Puppet Master

• Throttle # of simultaneous runs

Friday, May 3, 13

Page 40: State of Puppet  - Puppet Camp Austin

MCollective 2.2.x - Puppet Agent

Friday, May 3, 13

Page 41: State of Puppet  - Puppet Camp Austin

PuppetDB

• Central storage for catalogs and facts that are part of your puppet infrastructure

• Incredibly fast replacement for existing ActiveRecord storeconfigs

• Easily deployed via a puppet module from the Forge

Friday, May 3, 13

Page 42: State of Puppet  - Puppet Camp Austin

PuppetDB 1.2

• Automatic node purging

• Import/export of PuppetDB data

• Automatic dead-letter office compression

• Package availability changes

Friday, May 3, 13

Page 43: State of Puppet  - Puppet Camp Austin

Razor Provisioning

• Rules-based provisioning for bare metal hardware and virtual servers

• Developed in cooperation with EMC

• Easily deployed via a puppet module from the Forge

• Automatically brings the new server into your puppet infrastructure

• Open, pluggable, and programmable

Friday, May 3, 13

Page 44: State of Puppet  - Puppet Camp Austin

Razor Present and Future

• Security audits, fixes in the 0.9.0 release

• Not yet ready for prime time

• Help us get it there

• File bugs, contribute to the community

Friday, May 3, 13

Page 45: State of Puppet  - Puppet Camp Austin

Hiera

• Simple pluggable Hierarchical Database

• Key/value lookup tool for configuration data

• Keeps site-specific data out of your manifests

• Puppet classes request data and Hiera will act like a site-wide config file

• Makes it easy to configure nodes, re-use Puppet modules and publish your modules

• Support is built into Puppet 3, and is available as an add-on for Puppet 2.7

Friday, May 3, 13

Page 46: State of Puppet  - Puppet Camp Austin

Facter 1.7

• External Facts!https://docs.puppetlabs.com/guides/custom_facts.html#external-facts

• Any executable in the facts.d directory is a fact

• Just return key/value pairs on STDOUT

• Windows

• .com .exe .bat .ps1 supported

• Also supports structured data files in facts.d

• .yaml .json .txt supported

Friday, May 3, 13

Page 47: State of Puppet  - Puppet Camp Austin

Friday, May 3, 13

Page 48: State of Puppet  - Puppet Camp Austin

Puppet Labs

Friday, May 3, 13

Page 49: State of Puppet  - Puppet Camp Austin

Puppet Labs: by the numbers

Jan 2012 April 2013

Employees 55 134

Customer Countries 29 42

Office Space 836 m2

9,000 ft22,232 m2

25,000 ft2

Friday, May 3, 13

Page 50: State of Puppet  - Puppet Camp Austin

We’re Hiring!

Friday, May 3, 13

Page 51: State of Puppet  - Puppet Camp Austin

Training&

Certification

Friday, May 3, 13

Page 52: State of Puppet  - Puppet Camp Austin

Training by Country

Friday, May 3, 13

Page 53: State of Puppet  - Puppet Camp Austin

Puppet Education:Training and Certification Track

Friday, May 3, 13

Page 54: State of Puppet  - Puppet Camp Austin

Questions?

Questions?

Friday, May 3, 13

Page 55: State of Puppet  - Puppet Camp Austin

Thank You!

Learn More:http://puppetlabs.com

http://puppetlabs.com/communityhttp://puppetlabs.com/puppet/puppet-enterprise/

Friday, May 3, 13