development & test on aws - ip expo 2013

Post on 15-Jan-2015

580 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Development and

Test on AWS

James Brown

UK Business Development Lead

Some Challenges Customers Tell Us About

Managing multiple environments

is tough

Experimentation is slow

Obtaining servers takes weeks

How The AWS Cloud Can Be Useful

Simplify management of

multiple environments

Adopt new development

practices

Obtaining Servers in minutes

Why is this problem more critical than ever?

The

Business

* Credit to Patrick Debois for this model

The

Customer

has to deliver to the…

The

Business

* Credit to Patrick Debois for this model

The

Customer

The business has to get to get high

quality solutions into the customers hands as quickly as it can.

* Credit to Patrick Debois for this model

Dev &

Test

The

Customer

The

Business

* Credit to Patrick Debois for this model

Dev &

Test

Ops &

Infra

The

Customer

The

Business

* Credit to Patrick Debois for this model

Dev &

Test

Ops &

Infra

The

Customer

The

Business

Slow and

prone to failure

* Credit to Patrick Debois for this model

Dev &

Test

The

Customer

The

Business

Agile

Development

Ops &

Infra

* Credit to Patrick Debois for this model

Dev &

Test

Ops &

Infra

The

Customer

The

Business

Slow and

Infrastructure

constrained

Agile

Development

* Credit to Patrick Debois for this model

Dev &

Test

The

Customer

The

Business

Agile

Development

Ops &

Infra

DevOps

& Cloud

* Credit to Patrick Debois for this model

Dev &

Test

The

Customer

The

Business

Agile

Development

Ops &

Infra

Slow and

expensive

DevOps

& Cloud

* Credit to Patrick Debois for this model

Dev &

Test

The

Customer

The

Business

Agile

Development

Ops &

Infra

Cloud DevOps

& Cloud

Give Development and Test Teams the Infrastructure They Need

Let Dev & Test have the infrastructure they need

CI Build Smoke Test Development

Builds

Multiple

Versions

Staging Performance

Testing

Security

Testing UAT

Pre-

Production Soak Testing Hotfixes

Regression

Testing

Customer

Data Centers

Example Infrastructure

Source

Control

Build

Server

CI

Server

Dev

Machine

Customer

Data Centers

Example Infrastructure

VPN or Direct

Connect

Source

Control

Build

Server

CI

Server

Dev

Machine

Customer

Data Centers

Example Infrastructure

VPN or Direct

Connect

Source

Control

Build

Server

CI

Server

Dev

Machine

Amazon VPC

Customer

Data Centers

Example Infrastructure

VPN or Direct

Connect

Source

Control

Build

Server

CI

Server

Dev

Machine

Amazon VPC

Cloud

Formation

Template

Customer

Data Centers

Example Infrastructure

VPN or Direct

Connect

Source

Control

Build

Server

CI

Server

Dev

Machine

Amazon VPC

Cloud

Formation

Template

CI Build

Staging

UAT

Let Dev & Test have the infrastructure they need

• Use VPN or Direct Connect to link to AWS

• Use Amazon VPC so you can control IP Addressing

• Use Cloud Formation and AMIs to create templates

Let Dev & Test have the infrastructure they need

• Use VPN or Direct Connect to link to AWS

• Use Amazon VPC so you can control IP Addressing

• Use Cloud Formation and AMIs to create templates

• Build the infrastructure when you need it

• Build as much as you want

• Shut it down when you are not using it

Now they have the infrastructure, make sure they can use the tools they want

Operating Systems

• Windows Server

• AWS Linux

• Ubuntu

• SUSE Linux Enterprise

• Oracle Enterprise Linux

• RedHat Enterprise Linux

• CentOS

• Debian

SDKs, Command Line and IDE ToolKits

• SDKs

• Android

• iOS

• Java

• .NET

• Node.js

• Python

• PHP

• Ruby

• IDE ToolKits

• Eclipse

• Visual Studio

• Command Line Tools

• Powershell

• AWS CLI

Eco-System of Development and Test Tools

• TeamCity

• Jenkins

• Octopus

• Banboo

• CruiseControl

• NuGet

• Hudson

• BugZilla

• Mantis

• Chef

• Puppet

• CloudBees

• Splunk

• NewRelic

• Scalr

• AppFirst

• RightScale

• Subversion

• Git

• Team Foundation Server

• Bees with machine guns

• ChaosMonkey

Now they have the tools and the infrastructure, they can become more

efficient with DevOps and Agile Development practices

Continuous Integration / Deployment

Continuous Integration and Deployment

Paul Klipp

“The primary goal of continuous deployment is not to deploy continuously.

Continuous Integration and Deployment

Paul Klipp

“The primary goal of continuous deployment is not to deploy continuously.

It is to be able to deploy continuously”

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Developer

Submit

Code

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Developer

Build

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Developer

Fetch

Code

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Developer

Build

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Developer

Output

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Install

Package

Developer

Start

Deployment

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Install

Package

Developer

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Build AWS

Environment

Web

Server DB

Server

Install

Package

Developer

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Deploy Code

Web

Server DB

Server

Install

Package

Developer

Source Code

Repository

Deployment

Server

Continuous Integration

Server

Run Test

Web

Server DB

Server

Install

Package

Developer

CONTINUOUS DEPLOYMENT IN THE REAL WORLD

Customer - amazon.com

Deployment the old way

4

3

Why not run two infrastructures?

4

4

Why not run two infrastructures?

4

5

11.6s

Average time

between

deployments

(weekday)

1,079

Max number of

deployments in a

single hour

(or approx every

3 seconds)

10,000

Average number

of instances

simultaneously

receiving a

deployment

30,000

Max number of

instances

simultaneously

receiving a

deployment

Deployments at amazon.com

Thank You!

top related