infrastructure-as-code with puppet enterprise in the cloud - puppetconf 2014

34
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. Infrastructure-as-Code: with Puppet Enterprise in the Cloud PuppetConf 2014 Evan Scheessele HP Printing & Personal Systems Sept 23, 2014

Upload: puppet-labs

Post on 27-May-2015

457 views

Category:

Technology


0 download

DESCRIPTION

Infrastructure-as-Code with Puppet Enterprise in the Cloud - Evan Scheessele, HP

TRANSCRIPT

Page 1: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Infrastructure-as-Code: with Puppet Enterprise in the Cloud PuppetConf 2014

Evan Scheessele

HP Printing & Personal Systems

Sept 23, 2014

Page 2: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 2

What is Possible

Page 3: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 3

Today’s Agenda

• The Cloud: “User Land”

• Transformation

• Infrastructure as Code: “executable documentation”

• Our project’s success with Puppet, Puppet Enterprise

• Iterate, Improve, Evolve

Page 4: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Thanks:

Mike James

Vishnu

Devlin

Nick

Dave Gajanan

Maneesh

Dina

Rahmath

Mark

Skip

Page 5: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 5

Who am I?

Page 6: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 6

Page 7: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 7

Page 8: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 8

Cloud

?

Page 9: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 9

Page 10: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 10

Flying High

OpenStack Execution Environment: business application stacks, iterating quickly

Riding atop Cloud Administration (“OpenStack Superusers” under clouds, admin)

Page 11: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 11

11

Page 12: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 12

Page 13: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 13

Applications

Page 14: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 14

Page 15: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 15

Driving Vision

Infrastructure as “Cattle” not “Pets”

Modern configuration-management means: Executable Documentation

“Infrastructure as Code”

Focus on the production-pattern, and automate it end-to-end

Everything is consistently reproducible

Page 16: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 16

Page 17: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 17

Page 18: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 18

Page 19: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 19

“Full Stack” Deployment Orchestration Map: OpenStack Cloud

E2E Orchestration: Automated provisioning of whole-stack topologies

Per-Instance Orchestrated Configuration Setup & Management (Puppet)

Business Application / Partner Business Code & Middleware: Ready to go!

Interaction

Interaction

Page 20: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 20

“Full Stack” Deployment Orchestration Map: AWS Cloud

E2E Orchestration: Automated provisioning of whole-stack topologies

Per-Instance Orchestrated Configuration Setup & Management (Puppet)

Business Application / Partner Business Code & Middleware: Ready to go!

Interaction

Interaction

Page 21: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 21

Page 22: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

September 2013

Page 23: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 23

Page 24: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 24

An application ‘super-stack’ is comprised of:

• 1 DBaaS (MySQL)

• 5 Load-Balancers

• 52 virtual machines,

• 148 block-storage volumes (some boot-drives, many data-drives),

• ~250 other virtual objects gluing everything together

• Net: ~450 'things'

Page 25: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 25

Page 26: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 26

Puppet Core Benefits (we use PE 3.3)

PuppetDB and its APIs – the org’s home-grown Dashboard: whole portfolio view

Puppet Console (PE):

Node status-tracking

Rake API for classification

Rake API for CA work: white-list, no auto-signing!

Hiera by environment (Integration, Master)

+ hiera-eyaml: A backend for Hiera that provides per-value

asymmetric encryption of sensitive data

+ further abstraction to our self-service “Service Directory”

Head-end stack

[its configs]

Workflow engine stack

[its configs]

Partner API

[Configs…]

Content vault stack

[its configs]

3rd-party partner API

[configs] etc

Page 27: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 27

Puppet Core Benefits (More)

Developers may work with Puppet code too

MCO, via Console, and via Jenkins: deep stack-savvy code-roll orchestration

PE Best-practices: R10K, Roles/Profiles, splay

Clean and simple agent installer!

Page 28: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 28

Puppet Enterprise

Support

Integration – tested, and it just works

Speed to success

Scale

Installer

Console and its Rake APIs (Ext Node Classifier)

Vetted and scalable practices and patterns:

R10K for dynamic environments,

Roles & Profiles

Backups and DR …

Page 29: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 29

Page 30: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 30

Iterate, Improve, Evolve

Structure of Puppet-Code: Role and Profiles, branches and feature toggles

(35 modules, 113 profiles and 129 roles)

Portfolio: 1 cloud to 2 clouds

3 applications to 17

Page 31: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 31

Thanks (photos)

City-scape cloud photos are used with permission

© Sebastian Opitz @ ablazewithlight.com

Page 32: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Thanks:

Mike James

Vishnu

Devlin

Nick

Dave Gajanan

Maneesh

Dina

Rahmath

Mark

Skip

Page 33: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.

Questions?

Page 34: Infrastructure-as-Code with Puppet Enterprise in the Cloud - PuppetConf 2014

© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.