portable infrastructure with puppet

59
Portable Infrastructu re with Puppet Luke Kanies Founder of Puppet project Founder and CEO of Puppet Labs

Upload: lkanies

Post on 29-Jan-2018

12.318 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Portable infrastructure with puppet

Portable Infrastructu

re with Puppet

Luke KaniesFounder of Puppet project

Founder and CEO of Puppet Labs

Page 2: Portable infrastructure with puppet

The state of Puppet

Page 3: Portable infrastructure with puppet

Puppet is stable

Page 4: Portable infrastructure with puppet

Puppet is changing quickly

• Still plenty of features to add

• Every day we learn, and every lesson brings a refactoring

• Maturity brings its own design requirements

• Connectiveness is a larger priority

Page 5: Portable infrastructure with puppet

Puppet is Pervasive

Financial

TechnologyEntertainmentWeb

Defense

Page 6: Portable infrastructure with puppet

I promised some things last year

Page 7: Portable infrastructure with puppet

Puppet Camp 2009 Promises

•1.0•Web GUI•Modules

Page 8: Portable infrastructure with puppet

Rowlf is imminent

Page 9: Portable infrastructure with puppet

0.2

Page 10: Portable infrastructure with puppet

0.20

Page 11: Portable infrastructure with puppet

1.0

Page 12: Portable infrastructure with puppet

1.00

Page 13: Portable infrastructure with puppet

2.6

Page 14: Portable infrastructure with puppet

Lots of refactoring, and a

lot of features

Page 15: Portable infrastructure with puppet

Pure Ruby DSL

Page 16: Portable infrastructure with puppet

Class Parameters

Page 17: Portable infrastructure with puppet

Finished migration to REST

Still working on publishing all of the formats and URLs

Page 18: Portable infrastructure with puppet

puppetmasterd puppet master

puppetd puppet agent

puppetca

ralsh

puppet cert

puppet resource

puppetdoc puppet doc

The single executable shift

Page 19: Portable infrastructure with puppet

More informative reports

Heavily trimmed

Page 20: Portable infrastructure with puppet

Exposing types and classes

Page 21: Portable infrastructure with puppet

Faster in many ways

• Compiles are much faster• File serving is streamed (thanks Brice!)• Lots of small improvements

Page 22: Portable infrastructure with puppet

Relationship syntax

Page 23: Portable infrastructure with puppet

Hashes

Page 24: Portable infrastructure with puppet

Taught us a lot about how (not) to

release

Page 25: Portable infrastructure with puppet

Dashboard is growing and prospering

“Web GUI”

Page 26: Portable infrastructure with puppet

Node classification

Page 27: Portable infrastructure with puppet

Reporting

Page 28: Portable infrastructure with puppet

Lots to come

• Automatically detect optional and required parameters

• Catalog and report correlation

• Discovery

• Harass Rein for more information!

Page 29: Portable infrastructure with puppet

Let’s go Back

Page 30: Portable infrastructure with puppet

Why does Puppet exist?

Page 31: Portable infrastructure with puppet

Embarrassment

Page 32: Portable infrastructure with puppet

Fear

Page 33: Portable infrastructure with puppet

A simple dream:

That sysadmins could reuse code

Page 34: Portable infrastructure with puppet

Enable focus on the value-add

Usually

Ideally

0 25.0 50.0 75.0 100.0

Things you have to doThings you want to do

Page 35: Portable infrastructure with puppet

The Problem

• No standardization

• 75% of IT budgets spent to maintain existing systems

• Code changes with the sysadmin

Every infrastructure

starts from scratch }

Page 36: Portable infrastructure with puppet

We needed a high-level

language for

Page 37: Portable infrastructure with puppet

Programming SysAdmin

Low-level, non-

portable, single-use

Assembly perl/shell/etc

Abstract, portable, reusable

C* Puppet

Shell scripts areassembly code

* For small values of abstract

Page 38: Portable infrastructure with puppet

So: The ultimate goal was code

reuse

Page 39: Portable infrastructure with puppet

We’ve built a platform that can

enable reuse

Page 40: Portable infrastructure with puppet

Now we just need to start sharing

Page 41: Portable infrastructure with puppet

Announcing:Puppet Forge

http://forge.puppetlabs.comhttp://projects.puppetlabs.com/projects/

module-site

Page 42: Portable infrastructure with puppet

Share the modules you’ve created

Page 43: Portable infrastructure with puppet

Find modules others have

Page 44: Portable infrastructure with puppet

Client-side tools

Page 45: Portable infrastructure with puppet

Extension metadata is

Page 46: Portable infrastructure with puppet

Minimum Viable Product (MVP)

Page 47: Portable infrastructure with puppet

It’s all about code reuse

Page 48: Portable infrastructure with puppet

Westheimer's Discovery:

A couple of months in the laboratory can

frequently save

Page 49: Portable infrastructure with puppet

Luke’s Corollary:

A couple of months of development can

frequently save a couple of hours on the internet.

Page 50: Portable infrastructure with puppet

Collaborate on existing code rather than

Page 51: Portable infrastructure with puppet

Or, start again and publish

Page 52: Portable infrastructure with puppet

A new forcing function in

Page 53: Portable infrastructure with puppet

Because there’s now a place for

all that metadata:• Classes, definitions, nodes, etc.• Required and optional parameters• Versions• Dependencies

Page 54: Portable infrastructure with puppet

Drives further introspection

in Puppet

Page 55: Portable infrastructure with puppet

We can add:

• Portability information - ‘confine’ in classes and modules

• Incompatibilities• “Tested on” information• Etc.

Page 56: Portable infrastructure with puppet

Pushes Dashboard to manage modules

Page 57: Portable infrastructure with puppet

Package-like behaviour in the

modules

Page 58: Portable infrastructure with puppet

Fills out the product portfolio

•The industry-leading open source automation platform•Supported with subscriptionPuppet

•A graphical view into your Puppet infrastructure•A simplified interface for many configuration actions

PuppetDashboard

•Collaborate with other IT administrators on Puppet content•Access Puppet Labs supported modulesPuppet Forge

Page 59: Portable infrastructure with puppet

AnyQuestion