38
© 2014 VMware Inc. All rights reserved. © 2009 VMware Inc. All rights reserved Confidential Alain Geenrits, Sr SE enterprise management, VMware http://bitstream.geenrits.net Puppet on a String

Puppet on a string

Embed Size (px)

DESCRIPTION

Presentation for the Dutch VMUG on VMware vCAC, appdir and puppet integration, with a little Devops flavour and how we use it internally.

Citation preview

Page 1: Puppet on a string

© 2014 VMware Inc. All rights reserved.

© 2009 VMware Inc. All rights reserved

Confidential

Alain Geenrits, Sr SE enterprise management, VMware http://bitstream.geenrits.net

Puppet on a String

Page 2: Puppet on a string

Forward Looking Statement

Statements made in this presentation which are not statements of historical fact are forward-looking statements based upon current expectations. Actual results could differ materially from those projected in the forward-looking statements. Information regarding risk factors that could cause actual results to materially differ are contained in documents filed by VMware with the Securities and Exchange Commission, including reports that VMware may file with the SEC from time to time on periodic reports on Form 10-Q and Form 10-K and current reports on Form 8-K. VMware assumed no obligation to update any such forward-looking statements after the date of this presentation.

Page 3: Puppet on a string

It is not about the tools….

3

Foreman

Page 4: Puppet on a string

Lessons Learned from Lean Manufacturing

http://rasmusson.wordpress.com/2008/04/16/batch-vs-continuous-flow-processing/

By changing from a batch process, to continuous flow, the throughput of an organization can increase 60%

http://www.leanproduction.com/theory-of-constraints.html

Change

What to do about a bottleneck?

Page 5: Puppet on a string

The Business impact of Dev & Ops Automation

http://blogs.vmware.com/accelerate/tag/journey-survey http://www.informationweek.com/tech-center/it-as-a-service/devops-improves-time-to-market-and-reven/240161336

DevOps sped up new services and products to market by 20%. With companies able to respond in the marketplace faster, they increased the number of customers by 22% and revenues by 19%. Thirty-nine percent of those surveyed had adopted some form of DevOps; 27% were planning to do so in the near future.

The Reduction in Clock Time of DevOps processes has been associated with about 20% increase in revenue at companies

Page 6: Puppet on a string

Tenant Summary – DevOps Provisioning AppOps Team Deploy integrated, complex App Stack instances to support 600 developers.

Challenge Process was manual, siloed, slow, unreliable. Reduced developer efficiency. Increases risk.

Two Fundamentally Different Options 1.  Fix the “human middleware” on traditional infrastructure

2.  Replace and automate on private cloud SDDC

Results From Choice to Replace and Automate §  Process time – dropped from 4 weeks to 36 hours

§  Developer productivity – increased 20% or more

§  Project schedule risk - eliminated

§  Annual infrastructure and operating costs - reduced by $6M

IT invested in Agility and as a result reduced Costs

Page 7: Puppet on a string

Human Middleware Problem – Ops View

Global Team Management

Project manage

around PTO, holidays,

variable skills

Capacity Constrained

Only 4-6 projects

in parallel

Slow and Error Prone

Many manual steps. Ticketing systems.

Human error.

Handoffs

Silos. Globally distributed teams.

Multiple application experts.

Page 8: Puppet on a string

Total Cycle Time - Improvements

1.  Re-provision instead of repair, and cross-training teams

2.  Improve blueprints to drive down defects, automate functional and environmental testing

3.  Parallel Provisioning

Plan to get to 24 hour goal •  More automation and management

changes •  Improve QA testing process

Improvements

Provision – 16 hours QA – 8 hours

Goal – 24 hours

0

20

40

60

80

100

120

140

160

180

200

Test13 Dev14 Test14 Dev15 Test15 Dev16 Test16

1.

2.

3. Pro

visi

onin

g tim

e (h

ours

)

SDLC Instance - Oracle ERP with Portal (date)

05/07 05/22 05/27 06/19 06/25 07/22 08/05

8

Page 9: Puppet on a string

Question - Why Automate Service Provisioning?

Service Definition

Blueprint Policy POC1 POC2 Catalog

Provision QA Staging Release

40 work weeks effort – Per Release…

20 work weeks effort – Once!

Run Book

36 hours

Service Request

4 weeks

Answer - It takes less time/effort to convert the runbook into blueprints… …than it takes to “run” the runbook...

Virtual Server

Software Defined Data Center Service Request

Catalog

Example Provisioning Oracle ERP With Web Portals

Manual Process

Automated Process

Page 10: Puppet on a string

Results

Phase 1 Phase 2

Cycle Time Hours per SDLC instance

172

36

Today

Phase 1 Phase 2

Virtual Machines Transitioned To Private Cloud

Phase 1 Phase 2

AppOps Team # of Engineers

Goal – 4000

2,800

2,200

Goal - 5

27

22

Reduced provision time

95% (4 weeks to 36 hours)

Improved productivity of 600 developers

20%

Reduced IT operations costs

$1.5M /year

Able to say

“yes” to developer requests

Reduced the cost of a VM/month

80% ($133 to $20)

Reduced infrastructure costs

$4.5M/year

672 hours (4 weeks)

Goal – 24 hours

Today Today

Page 11: Puppet on a string

Phase 1 Phase 2

Cycle Time Hours per SDLC instance

172

36

Today

Phase 1 Phase 2

Virtual Machines Transitioned To Private Cloud

Phase 1 Phase 2

AppOps team # of Engineers

Goal – 4000

2,800

2,200

Goal - 5

27

22

672 hours (4 weeks)

Goal – 24 hours

Today Today

Reduced provision time

95% (4 weeks to 36 hours)

Improved productivity of 600 developers

20%

Reduced IT operations costs

$1.5M /year

Able to say

“yes” to developer requests

Reduced the cost of a VM/month

80% ($133 to $20)

Reduced infrastructure costs

$4.5M/year

IT invested in Agility and as a result reduced Costs

Page 12: Puppet on a string

The Problem

Before vCloud Automation Center

Page 13: Puppet on a string

vCloud Automation Center Operations Virtualization™

VMware Solution

After vCloud Automation Center

Page 14: Puppet on a string

Platforms and services

14

Page 15: Puppet on a string

Cloud / System Admin “Creates Templates & Deployment Environments”

Middleware Administrator Creates Middleware Components”

Catalog Administrator “Creates Catalog & Approves Components”

Application Architect “Creates Blueprint”

Deployer “Deploys Applications & Changes”

Collaborative Platform for Various Roles

Page 16: Puppet on a string

Application Director

vCenter Operations

Mgmt

vCloud Automation Center

IaaS PaaS DaaS

Application Director Mgmt

vCloud Director / Connector

vCloud Networking

and Security

vCenter Site Recovery

Manager

vSphere

Hardware vCloud Service

Providers Hyper- visors

Other Service

Providers

vCloud Hybrid Service

Page 17: Puppet on a string

Cloud Automation – vCloud Automation Center

•  On-demand access to any infrastructure or application service

•  Comprehensive governance for approvals, reclamations, cost profiles and transparency

•  Initial provisioning and lifecycle management •  Broad support for physical, virtual and cloud

provisioning end points and software mechanisms •  Extensibility through integration with existing

infrastructures and customizable workflows

•  Enable business agility through rapid delivery of IT services

•  Provide IT control by governing who provisions what and where

•  Extend existing infrastructure, processes and environments with a flexible automation solution

Benefits

Overview Self - Service

IaaS PaaS DaaS XaaS

Cloud Automation Center

Heterogeneous Infrastructure

Policy-Based Governance with Automated Delivery

On-demand self-service access to services

Page 18: Puppet on a string

Accelerate PaaS and Application Deployment §  Streamline the deployment and update process §  Leverage pre-built components

§  Re-use blueprints for various environment

Components

Application Blueprint

Components Components Components

Page 19: Puppet on a string

Standardize for IT Control and Compliance §  Standardize on a best practices pre-build component library §  Avoid manual, differing configurations to reduce complexity

§  Improve quality of services by capturing best practices in components

Page 20: Puppet on a string

Services Catalog §  ROLE_CATALOG_ADMIN §  OOTB templates, services, tasks, OS’s, tags §  Extend the catalog by registering new components or version existing ones

p.71

Page 21: Puppet on a string

Cloud Applications Marketplace

Page 22: Puppet on a string

Application

Rapidly Push Code Changes into Production §  Automate the Software Development Lifecycle Process §  Continuous integration

§  Rapid application and change deployment

Control Code Change Code “Ear/War” Files Build Software Automate

Provisioning

Software Source Control System “SVN, Clearcase, Perforce”

Continuous Build Integration System “Jenkins”

Application Provisioning And Update “Application Director”

Page 23: Puppet on a string

CONFIDENTIAL & PROPRIETARY

About Puppet Labs "

Page 24: Puppet on a string

Puppet Labs At-A-Glance QUICK STATS

INVESTORS

Radar Partners

AWARDS & RECOGNITION

2005 founded

3.5 million downloads in last 12 months

~10 million total nodes under management

~6,000 community members

60,000 nodes in largest deployments

$46 million capital raised

ECOSYSTEM PARTNERS

Page 25: Puppet on a string

We Automate IT Infrastructure for Sysadmins

APPLICATION STACK

Asset Management

Capacity Planning

Service Catalog

Billing

Monitoring

Service Desk

Discovery

Provisioning

Configuration Management

Orchestration

Reporting

IT Automation

Physical & Virtual Nodes

Operating Systems

Middleware The image cannot be displayed. Your computer may not have enough memory

Application Code & Data

MANAGEMENT STACK

Full stack lifecycle automation for heterogeneous IT environments

Page 26: Puppet on a string

Puppet Enterprise Console   Puppet Forge Modules   3rd Party Systems  

Puppet Agent   Puppet Agent   Puppet Agent  

Node   Node   Node  

Puppet Master  

The Puppet Platform

Page 27: Puppet on a string

Puppet Enterprise Overview

Reporting GUI Workflows Admin & Security

VM Node Cloud Node Hardware Node

Agent DISTRIBUTED

AGENTS

CENTRALIZED MANAGEMENT

SERVER

CLOUD-BASED CONTENT

REPOSITORY 1,200+ Pre-Built Configurations

Puppet Forge

Puppet Master

Agent Agent

Page 28: Puppet on a string

28 | CONFIDENTIAL & PROPRIETARY

1. Define the desired state of the infrastructure's configuration using Puppet's declarative language.

2. Simulate configuration changes before enforcing them.

3. Enforce the deployed desired state automatically, correcting any configuration drift.  

4. Report on differences between actual and desired states, and any changes made enforcing the desired state.  

Iterate & Increase Automation Coverage  

Desired State  Current State  

How Puppet Works Declarative, Model-based Automation

service { ‘ssh’: ensure => running, enable => true, subscribe => File[‘/etc/sshd_config’] }

New in 3.0

~200% performance boost ~100% increase in scalability

Page 29: Puppet on a string

29 | CONFIDENTIAL & PROPRIETARY

High-level status of nodes for instant visibility

Time-based display for insight into rate of change

Detail of node status to pinpoint specific issues

Puppet Enterprise: Graphical User Interface Easily & Quickly Assess Infrastructure State

Page 30: Puppet on a string

VIRTUAL & CLOUD INFRASTRUCTURE

APPLICATIONS NETWORK & STORAGE DEVICES

Puppet Forge: 1,200+ Pre-Built Automation Solutions

OPERATING SYSTEM RESOURCES

Puppet Forge ~900,000 downloads

NTP SUDO LDAP

RPM SSH USERS

Page 31: Puppet on a string

PUPPET ENTERPRISE + VCHS

OVERVIEW

PUPPET ENTERPRISE + VCLOUD AUTOMATION

PUPPET ENTERPRISE + VSPHERE

VMware & Puppet Labs Strategic Partnership

$30 million investment in Puppet Labs

Raghu Raghuram VMware VP & GM, on Board

Dedicated technical resources

Integrated product, marketing, & sales

Three product integrations to-date

VMware’s  industry-­‐leading  hypervisor  

VMware’s  PaaS  Private  Cloud  Solu:on   VMware’s  Hybrid  Cloud  Service  

Automated provisioning & configuration of OS and apps on ESX VMs  

Automated provisioning & configuration of OS and apps on VMware’s public cloud service  

Automated lifecycle management for self-service apps provisioned with VMware’s PaaS software

Page 32: Puppet on a string

Puppet Enterprise 3.0 and vCloud Automation

Self - Service

IaaS PaaS DaaS XaaS

Cloud Automation

Heterogeneous Infrastructure

Policy-Based Governance with Automated Delivery

Drift Remediation

Service Catalog Multi-Machine Blueprints

Puppet Configuration Language

•  Agility through automation •  Control throughout the Lifecycle •  Flexibility to deploy any service into

any heterogeneous environment

VMware Cloud Management Marketplace

Puppet Forge

Community

Ecosystem

Configuration

Page 33: Puppet on a string

Build Multi-Node Blueprint utilizing PE Modules 2013

Import Puppet modules and

classes as services

Design multi-node blueprint utilizing

Puppet

Drag and drop Puppet services

onto canvas

Page 34: Puppet on a string

Provision Multi-Node Blueprint 2013

Puppet Master registered

Set configuration properties for deployment

Select Deployment Environment

Design Execution Plan with dependencies

Review for accuracy and Deploy

Page 35: Puppet on a string

Drift Re-mediation with Puppet Enterprise Future

Puppet detects configuration drift from

blueprint

Puppet fixes configuration to match

blueprint

Page 36: Puppet on a string

Thank you.

Page 37: Puppet on a string

Backup

Page 38: Puppet on a string

Open Source Configuration Management Landscape Puppet   Chef   Salt   Ansible  

Commercial  Support   Puppet  Labs   Opscode   SaltStack   AnsibleWorks  

Core  Technology   Ruby   Ruby;  Erlang   Python   Python  

Communica9on   SSL   SSL   0mq   SSH;  0mq  opAonal  

Control  Interface   Manifest:  proprietary  language  

Recipe:  Ruby   States:  YAML  and  other  standard  template  tools  

Playbooks:    JSON,  YAML,  INI  text  files  

Dependency  Awareness   Yes   No   Yes   No  

Community  Repository   Puppet  Forge   Cookbooks   SaltStarters   ansible-­‐examples  on  GitHub  

List  Price  (annual/node)   Std:  $88  /  Prem:  $152   Std:  $72  /  Prem:  $?   "contact  sales"   Std:  $100  /  Prem:  $250  

Date  established   Founded  2005;  February  2011  first  commercial  project  

January  2009   March  2011   February  2012;  AnsibleWorks  March  2013  

Ref  customers   eBay,  Google,  Disney,  many  more  

Facebook,  Ancestry.com   LinkedIn,  HP  Cloud   Evernote,  Rackspace  

Strengths   Most  mature:  users,  mindshare,  integraAons  

No  proprietary  language;  execuAon  order  instead  of  dependency  

ExecuAon  speed   Few  dependencies  –  easy  to  get  started;  agentless,  leaves  no  trace  on  machines;  more  readable  syntax  

Headquarters   Portland   Seaale   Salt  Lake  City   Santa  Barbara