i've installed puppet! now what?

17
I’ve Installed Puppet! Now What?

Upload: adam-crews

Post on 10-May-2015

747 views

Category:

Technology


0 download

DESCRIPTION

After getting Puppet installed, what are the things you need to consider to make use of your environment? This presentation talks about using version control, a strong workflow, and methods to organize your modules. A git repo with the example module module setup is available at https://github.com/adamcrews/pug-environments

TRANSCRIPT

Page 1: I've installed Puppet! Now what?

I’ve Installed Puppet!Now What?

Page 2: I've installed Puppet! Now what?

Hour 1

You’ve run the puppet installer,You’ve installed agents on your nodes...

Now what?

Version Control, Workflow, Organization

Page 3: I've installed Puppet! Now what?

Version ControlHave you ever:

● Made a change to code, realised it was a mistake and wanted to revert?● Lost code or had a backup that was too old?● Wanted to see the difference between various versions of your code?● Wanted to prove that a particular change broke or fixed a piece of

code?● Wanted to review the history of some code?● Wanted to submit a change to someone else's code?● Wanted to share your code, or let other people work on your code?● Wanted to see how much work is being done, where, when, and by

whom?● Wanted to experiment with a new feature without interfering with

working code?

Page 4: I've installed Puppet! Now what?

Workflow

● R10K○ Deployment tool for Puppet○ Leverages git for quick and reliable updates○ As many environments as you want○ Test your code before production○ Robust error handling

Page 5: I've installed Puppet! Now what?

Organization - Multiple Masters● Pros

○ Separate out Production from Development○ Complete separation of all aspects of the

environment.○ Security separation so pre-release code

cannot “leak” into production.○ Upgrade/downgrade components without

causing disruption

Page 6: I've installed Puppet! Now what?

Organization - Multiple Masters● Cons

○ You must ensure you have a good code flow between masters

○ Risk of environment drift between the silos○ Data is not shared between silos

Page 7: I've installed Puppet! Now what?

Organization - Hiera● Hiera allows data separation

○ Data is separate from code logic○ Easy task delegation○ Single source of truth for data○ Ability to collect data from external

sources, but present in a consistent way.

Page 8: I've installed Puppet! Now what?

Organization - Hiera● Allows you to use modules directly

from the Forge:

1. Download the module (or use r10k)2. Add data to Hiera3. Classify on a node4. ???5. Profit

Page 9: I've installed Puppet! Now what?

Organization - Roles and Profiles

● Glue between nodes, Hiera, and modules● Avoids “magic” Hiera data● Separate business logic from technology stack● Modules stay generic● Nodes can be classified using one include

Page 10: I've installed Puppet! Now what?

Organization - Roles and Profiles● Profiles

○ Configuration of generic modules○ Business logic on how to utilize modules○ Examples:

■ apache::dev - Configure apache for dev hosts, perhaps disable ssl

■ apache::prod - Configure apache for prod hosts, require ssl

Page 11: I've installed Puppet! Now what?

Organization - Roles and Profiles● Roles

○ A collection of profiles○ A group of modules/profiles that make up a

single server role, for example a WordPress website

○ Each node should only have a single role

Page 12: I've installed Puppet! Now what?

Hour 2

You’ve decided on a version control system,You’ve decided on a workflow,You’ve decided on an overall architecture...

Now what?

Setup R10K, Configure NTP, Configure Minecraft

Page 13: I've installed Puppet! Now what?

NTP - A practical Example

Step 1 - Install the module via r10k

Step 2 - Add the key(s) to hiera

Step 3 - Classify the node

DEMO!

Page 14: I've installed Puppet! Now what?

Minecraft - A more fun, but less practical exampleStep 1 - Install the module via r10k

Step 2 - Add the key(s) to hiera

Step 3 - Classify the node

DEMO!

Page 15: I've installed Puppet! Now what?

Hour 3 - Light reading● R10k

○ http://bit.ly/puppetr10k

● Git Workflow and Dynamic Environments○ http://bit.ly/puppetgit

● “DevOps. It’s about culture, stupid!”○ http://slidesha.re/18vbP8U

● Separating Data from Code○ http://bit.ly/puppetdata

● Beer Finding App (Because you deserve it now)○ https://untappd.com/

Page 16: I've installed Puppet! Now what?

Adam Crews@1_adam_12

irc: [email protected]

Terri HaberProfessional Services

@[email protected]

http://puppetlabs.com

Page 17: I've installed Puppet! Now what?

Thank You!Learn More:

http://puppetlabs.comhttp://puppetlabs.com/community

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