controlled evolution with puppet and aws

31
Controlled Evolution with AWS & Puppet 16 November 2016

Upload: puppet

Post on 15-Apr-2017

551 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Controlled Evolution with Puppet and AWS

Controlled Evolution with AWS & Puppet16 November 2016

Page 2: Controlled Evolution with Puppet and AWS

Carl Caum: Sr. Technical Marketing Manager at Puppet

Chris Barker: Principal Technical Solutions Engineer at Puppet

Seamus Birch: Change Agent at one of Canada’s tier-one banks

Speakers

Page 3: Controlled Evolution with Puppet and AWS

Every company is a software company.

Page 4: Controlled Evolution with Puppet and AWS

It feels like a breaking point.

Page 5: Controlled Evolution with Puppet and AWS

Change is necessary.

Page 6: Controlled Evolution with Puppet and AWS

We help great companies:Become great software companies

Deliver fantastic experiences to their usersProvide better software, faster

And do it simply, at scale and securely

Page 7: Controlled Evolution with Puppet and AWS

Automate for speed, reliability and security

Define with a common language

Gain situational awareness

Orchestrate change intelligently

Ensure security & compliance

What’s needed to deliver and operate modern software simply, at scale and securely

Across devices, through the stack

Page 8: Controlled Evolution with Puppet and AWS

Define with a common language

● Easy to read, understand, write & share

● Write once, use everywhere

● Testing built in

● No code clobbering

● Choose from thousands of free modules, backed by a vibrant ecosystem

Standard way for teams to deliver and operate software

Puppet code example

Page 9: Controlled Evolution with Puppet and AWS

Gain situational awareness

● Real-time change visibility

● Unique dependency visualizations

● Continual drift monitoring and reporting

● Audit and compliance reporting

● Built-in, custom and 3rd party visualizations

Know exactly what is going on with all your software

Event inspection in Puppet Enterprise

Page 10: Controlled Evolution with Puppet and AWS

Cloud Management with PuppetAdopt, unify and managecloud environments

Page 11: Controlled Evolution with Puppet and AWS

Supporting heterogeneous infrastructure

Page 12: Controlled Evolution with Puppet and AWS

Cloud adoption drives business

of organizations believe cloud will help them improve their revenue

Source: IDC “Don’t Get Left Behind: The Business Benefits of Achieving Greater Cloud Adoption,” Aug 2015

53%

Page 13: Controlled Evolution with Puppet and AWS

Automation in the cloud

Native tools don’t work

Manual approaches / scripts are problematic

Misconfiguration creates risk

= Risk$ one-off

Page 14: Controlled Evolution with Puppet and AWS

Puppet/aws module

$ one-off

Page 15: Controlled Evolution with Puppet and AWS

AWS Herd Management

$ one-off

Page 16: Controlled Evolution with Puppet and AWS

Introduction

16

● 15 years experience in banking technology

● Particularly interested in hands on transformation of operating models.

Page 17: Controlled Evolution with Puppet and AWS

What was the problem we were trying to solve?

17

Reduce manual effort and IT bureaucracy that is error prone, slowing us down and costing us money.

Page 18: Controlled Evolution with Puppet and AWS

Our setup

18

GithubApplication CodePuppet Modules

TeamCityApplication &

Container Build

Puppet MasterConfiguration Management

ArtifactoryApplication &

Container Store

Application Server

ApplicationEnvironment

Puppet R10KRelease Management

and Change Management

Page 19: Controlled Evolution with Puppet and AWS

Or first steps● Built a community of developers on the platform.

● Focused on promoting continuous deployment rather than continuous integration.

● Obtained security risk assessments and approvals on the Puppet process as a software deployment mechanism.

● Heavily invested in getting the infrastructure teams to pick up puppet.

● Lucky enough to find an infrastructure team that could pick up the coding aspect.

● Worked with the release management and change control teams to add support to R10K to their service.

● Started with a pilot of 150 servers.

19

Page 20: Controlled Evolution with Puppet and AWS

Standard puppet approach

ProvisioningVirtual environments ● Cloud ● Containers

Application infrastructureSQL server ● Tomcat ● WebSphere ● IIS ● MySQL

Core infrastructureOperating system ● NTP ● DNS ● SSH ● Firewall ● Users ● Groups

Application orchestrationCustom apps ● COTS ● Share services

Page 21: Controlled Evolution with Puppet and AWS

Our experience with Puppet

ProvisioningVirtual environments ● Cloud ● Containers

Application infrastructureSQL server ● Tomcat ● WebSphere ● IIS ● MySQL

Core infrastructureOperating system ● NTP ● DNS ● SSH ● Firewall ● Users ● Groups

Application orchestrationCustom apps ● COTS ● Share services

1

2

3

Page 22: Controlled Evolution with Puppet and AWS

22

Reduction in manual effort

90%

Team Development Effort

12%600%

Change Deployment Frequency

Measurable results

Page 23: Controlled Evolution with Puppet and AWS

But what about provisioning?

ProvisioningVirtual environments ● Cloud ● Containers

Application infrastructureSQL server ● Tomcat ● WebSphere ● IIS ● MySQL

Core infrastructureOperating system ● NTP ● DNS ● SSH ● Firewall ● Users ● Groups

Application orchestrationCustom apps ● COTS ● Share services

1

2

3

?

Page 24: Controlled Evolution with Puppet and AWS

Our AWS POC

24

GithubApplication CodePuppet Modules

TeamCityApplication &

Container Build

Puppet MasterConfiguration Management

ArtifactoryApplication &

Container Store

Cloud Command and Control

Keys

Puppet R10KRelease Management

and Change Management

VPC, Security, Firewall, Network etc

ECS

EC2 Instances

Application

RDS

Page 25: Controlled Evolution with Puppet and AWS

What did we discover

● We had a real life application deployed within a couple of weeks.

● We didn’t require any new processes to be created.

● There were no special approvals/waivers/exceptions to obtain.

● We didn’t need to change firewalls or modify our security posture.

● We reduced infrastructure costs to pennies in the dollar.

25

Page 26: Controlled Evolution with Puppet and AWS

Getting started with cloud was easy because we already automated with Puppet.

26

Page 27: Controlled Evolution with Puppet and AWS

It will scale because we already automated with Puppet.

27

Page 28: Controlled Evolution with Puppet and AWS

Potential stumbling blocks to avoid● Focus on automation, not on cloud as the

objective.

● Don’t start with doing cloud manually, it will not scale and your cloud transformation will stall.

● The development team must have a mature approach to security. You must be 100% confident that when you ask a security consultant to review your setup, they will not find any vulnerabilities.

● You need to let go of the crutch that it is SSH/RDC.

28

Carl Caum
[email protected] Is there any more "gotchas" you can add here?_Assigned to [email protected]_
Page 29: Controlled Evolution with Puppet and AWS

Questions?

Page 31: Controlled Evolution with Puppet and AWS