infrastructure-as-code with puppet enterprise in the cloud - puppetconf 2014
DESCRIPTION
Infrastructure-as-Code with Puppet Enterprise in the Cloud - Evan Scheessele, HPTRANSCRIPT
© 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
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 2
What is Possible
© 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
© 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
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 5
Who am I?
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 6
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 7
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 8
Cloud
?
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 9
© 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)
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 11
11
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 12
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 13
Applications
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 14
© 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
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 16
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 17
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 18
© 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
© 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
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 21
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
September 2013
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 23
© 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'
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 25
© 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
© 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!
© 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 …
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. 29
© 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
© 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
© 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
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.
Questions?
© Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice.