Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge...

68
Tuesday, February 26, 13

Transcript of Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge...

Page 1: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 2: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

About Me

Tuesday, February 26, 13

Ryan was a RedHat sysadmin for Penn State before joining Puppet Labsas a professional services engineer. Now is product owner for the Forge.

Page 3: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

The Puppet Forge is a community driven web service for contributing and finding Puppet modules.

Page 4: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 5: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Word cloud made from forge module names. Size = frequency

Page 6: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

The following are examples of what you might find on the Forge.

Page 7: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 8: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 9: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 10: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 11: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 12: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

0

1000

2000

3000

4000

End Q3 End Q4 ~End Q1 ~End Q2 ~End Q3 ~End Q4

Forge Module Count

Tuesday, February 26, 13

Page 13: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

From the US, LA is the 5th largest city regarding forge traffic- Behind the bay

Page 14: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 15: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 16: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 17: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Best Good Practices

Tuesday, February 26, 13

Page 18: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

PL Style Guide

Tuesday, February 26, 13

Page 19: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 20: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 21: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 22: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 23: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Code VS Data

Tuesday, February 26, 13

As you get further along with your Puppet Deployments, separating your code (puppet resources) from the data (what package, what version) becomes increasingly important.

Page 24: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 25: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

How do you get from A to B?

Page 26: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

The answer, use Hiera!

Seriously, these docs rock. Read them. http://docs.puppetlabs.com/hiera/1/index.html

Page 27: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

It’s MAGICBut also, it’s not...

Tuesday, February 26, 13

But first, let’s take a closer look at a Puppet run.

Page 28: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 29: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 30: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 31: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

I need the value for $forge::package_name.

How should I conduct my search?

Tuesday, February 26, 13

Page 32: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

I need the value for $forge::package_name.

How should I conduct my search?

Tuesday, February 26, 13

Hiera lets you express data in some structured format (which is pluggable).

You then establish a hierarchy of lookup, however you like, usually based on facts.

Page 33: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

$clientcert

$operatingsystem

common

I need the value for $forge::package_name.

How should I conduct my search?

Tuesday, February 26, 13

Consider your hierarchy the lookup order.

Page 34: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

$clientcert

$operatingsystem

common

? $forge::package_name

Tuesday, February 26, 13

Page 35: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

? $forge::package_name

$RedHat

$james_bond

common

Tuesday, February 26, 13

Facts can be used for a dynamic hierarchy.

Page 36: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

? $forge::package_name

$RedHat

$james_bond

common

Tuesday, February 26, 13

Hiera will simply consult the structured data, looking for variable names, expecting files named after your entry in hiera.yaml

Page 37: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

? $forge::package_name

$RedHat

$james_bond

common

Tuesday, February 26, 13

Hierarchy matters. The package name is now tmux.

Page 38: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Ok, so how do I implement it?

Tuesday, February 26, 13

Thankfully, Puppet 3 has made implementing Hiera really simple.

Page 39: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Please don’t use the hiera() function. Consider it legacy.

Page 40: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

This is better, as the user can override this default parameter value.

With this, you’re locked into hiera.

Page 41: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

But really, just get yourself onto Puppet 3 and take advantage of automatic Hiera!

Page 42: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Data Bindingsdon’t lock yourself in

Tuesday, February 26, 13

Additionally, protect yourself from a potential loss of Hiera.

Page 43: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

• Use explicit class declaration values

• Query Data Binding

• Use the default value from class.

• Fail compilation with an error if no value can be found.

Data Lookup Order

Tuesday, February 26, 13

Page 44: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Built into Puppet 3

Tuesday, February 26, 13

Page 45: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 46: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

But really, just get yourself onto Puppet 3 and take advantage of automatic Hiera!

Page 47: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Best Practices

• Confirm to the Style Guide

• Use Parameterized Classes

• Don’t use hiera() directly

Tuesday, February 26, 13

Re-cap.

Page 48: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Interfaces

Tuesday, February 26, 13

Page 49: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 50: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 51: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 52: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

The Team

Tuesday, February 26, 13

Page 53: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

What have we been up to?

• Re-launch and Re-design

Tuesday, February 26, 13

Though we’re small, we’ve been really busy!

Page 54: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 55: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Lots of little features add up to a substantially nicer to use Forge.

Page 56: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

What have we been up to?

• Re-launch and Re-design

• PMT Fixes (prep for publish)

• Download Counts

Tuesday, February 26, 13

Page 57: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Download counts, now in your search results!

Page 58: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

What’s Next?

GitHub PublishTuesday, February 26, 13

Edit your Modulefile, push your commit and we’ll do the publishing! Coming soon to a repository near you.

Page 59: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

A Full & Public API

What’s Next?

Tuesday, February 26, 13

Also coming soon, an actual API for doing all sorts of things with the Forge.

Page 60: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

What’s Next?

Tuesday, February 26, 13

Just an experimental mock-up of search results. Actual feature will absolutely look and behave differently.

Page 61: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Private Forge has been a common request.

Page 62: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

PulpProject.org

Tuesday, February 26, 13

RedHat’s Pulp Project is repository management software that recently added support for Puppet Modules.

Page 63: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

• Manage Modules on-premise

• Mirror Public Forge

• BUT, please work with me on this

• Email me or comment on #5033

Tuesday, February 26, 13

If you’re interested in this, email [email protected] or add your thoughts to https://projects.puppetlabs.com/issues/5033.

We’re going to do something in this space, but want to hear more from you on what you need.

Page 64: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Want to help?

Tuesday, February 26, 13

If you want to add your influence to our products, join the Puppet Labs Test Pilots program!

https://puppetlabs.com/community/puppet-test-pilots-program/

Page 65: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

• Sharpen your skills

• Get Certified

• Online learning on the way

• puppetlabs.com/education

Tuesday, February 26, 13

Our education courses are carefully crafted and delivered by our fabulous education team and professional services team.

Advanced course coming to LA 3/19

Browse upcoming events at http://puppetlabs.eventbrite.com/

Page 66: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Tuesday, February 26, 13

Page 67: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

Read more!http://garylarizza.com

Tuesday, February 26, 13

Gary Larizza has a great blog post on Boxen.

http://garylarizza.com/blog/2013/02/15/puppet-plus-github-equals-laptop-love/

Page 68: Tuesday, February 26, 13 · 2020-04-15 · Tuesday, February 26, 13 Word cloud made from forge module names. Size = frequency

WE’RE HIRING!

• Puppet Forge Module Engineer

• http://bit.ly/15wdruk

• puppetlabs.com/jobs

Tuesday, February 26, 13

Seriously, join our team. It’ll be awesome.