AWS Roadshow Herbst 2013: Beschleunigen Sie Entwicklungs- und Test-Szenarien mit der Cloud

Post on 20-Aug-2015

1,118 views 0 download

transcript

AWS Roadshow 2013Über den Wolken – befreien Sie Ihre IT

Entwicklung und Test in der Cloud

Michael HanischMgr. Solutions Architecture

Matthias JungSolutions Architect

Constantin GonzalezSolutions Architect

Ratingen

DEVELOPMENT&

TEST

DEVELOPER

SOURCE CODEREPOSITORY

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

PICKTASKS

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

SUBMITCODE

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

SCHEDULEBUILD

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

RECURRENTBUILDS

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

CODEFETCH

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

CODE QUALITYTESTS

TESTRESULTS

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

BUILD OUTPUT

SOURCE CODEREPOSITORY

PROJECT MANAGEMENT SERVER

CONTINUOUS INTEGRATION SERVER

DOCS

BINARIES& PACKAGES

SOURCE CODE REPOSITORY

DNS

CONTINUOUS INTEGRATION SERVER

PROJECT MANAGEMENT SERVER

BUILDS

PAIN POINTS• UNIT TESTS INCOMPLETE• MOCK TESTS MAINTENANCE• EXPENSIVE TEST ENVIRONMENT• TEST ENVIRONMENT ≠ PRODUCTION• DEPLOYMENT CYCLES

ON-DEMAND

PAY AS YOU GO

ELASTIC

ON-DEMAND

PAY AS YOU GO

ELASTIC

= no need for: waiting, procurement, planning

= as many resources as you need, no limits

= save money: during the night, over the weekend, during vacation

BUT THERE IS

MORE

=

PROGRAMMABLE PLATFORM

IF YOU CAN PROGRAM ITYOU CAN AUTOMATE IT

Control via Configuration

AWS CloudFormation

AWS CLOUDFORMATION

STACK-BASED DEPLOYMENT SERVICE

CLOUDFORMATIONTEMPLATE

{ "Description" : "Create RDS with username and password", "Resources" : {

"MyDB" : { "Type" : "AWS::RDS::DBInstance", "Properties" : { "AllocatedStorage" : "500", "DBInstanceClass" : "db.m1.small", "Engine" : "MySQL", "EngineVersion" : "5.5", "MasterUsername" : "MyName", "MasterUserPassword" : "MyPassword" } } }}

"AWS::CloudFormation::Init" : { "config" : {

"packages" : { "yum" : { "mysql" : [], "mysql-server" : [], "httpd" : [], "php" : [], "php-mysql" : [] } }, "sources" : { "/var/www/html" : "https://s3.amazonaws.com/my-builds/build-v4.zip" } }

{ "Parameters" : { "KeyName" : { "Description" : "Name of an existing EC2 KeyPair to enable SSH access to the instance", "Type" : "String" } },}

CLOUDFORMATIONTEMPLATE

PROCEDURALDEFINITION

Create it programmatically

KNOWN CONFIGURATIONStore stack configuration in source control

PARAMETER DRIVEN

Dynamic and user-driven templates

COLLABORATIONShare templates with ease as plain files

OS

APP STACK

-

Control via Configuration

OS

APP STACK

code

Automate deployment

build

S3 Bucket

test

OS

APP STACK

code

Automate deployment

OS

APP STACK

code

build

S3 Bucket

Automated

build

1 hour

Orange Digital uses AWS + Puppet for Application Development

“Moving to AWS has reduced the time to market for new products,” says Jennings. “Previously, this process took at least three months. AWS has removed a barrier, so time to market is dependent almost entirely on developing software and deciding what we want to do.”

USING PUPPET, ORANGE DIGITAL CAN REPLICATE A

PRODUCTION ENVIRONMENT ON DEVELOPMENT

LAPTOPS, THEREBY ENSURING CONSISTENCY

THROUGHOUT THE LIFECYCLE

APPLICATIONVERSIONS

+INFRASTRUCTURE

VERSIONS

CLOUDFORMATION TEMPLATE

TEST ENVIRONMENTS

30,000 REQUESTS / SECOND1 TB TRAFFIC / DAY

CASE STUDY

LOAD TESTING

USING AMAZON EC2 TO SIMULATE

2.4 MILLION PLAYERS

CONTINUOUS DEPLOYMENT

SMALL, FREQUENT CHANGES CONSTANTLY INTEGRATING INTO

PRODUCTION.

KEY = ITERATION

11.6sMean time between

deployments (weekday)

1,079Max number of

deployments in a single hour

10,000Mean number of

hosts simultaneously

receiving a deployment

30,000Max number of

hosts simultaneously

receiving a deployment

DEPLOYMENTS AT AMAZON.COM

SOFTWARE DEPLOY

≠PRODUCT LAUNCH

1.5 BILLION PAGE VIEWS

OCTOBER 2012

$83 MILLION IN TRANSACTIONS4.2 MILLION ITEMS SOLD

CASE STUDY

30 DEPLOYS PER DAY1 DEPLOY EVERY 20 MINUTES

AWS OPSWORKSINTEGRATED APPLICATION

MANAGEMENT

14 BILLION REQUESTS/MONTH50 000 DATABASE UPDATES / SEC

NO CACHE

CASE STUDY

A / B TESTING

CONTINUOUS INTEGRATION

CONTINUOUS DEPLOYMENT

CONTINUOUS DEPLOYMENT

=

CONTINUOUS EXPERIMENTATION

CONTINUOUS DEPLOYMENT

=

CONTINUOUS IMPROVEMENT

« Want to increase innovation? Lower the cost of failure »

Joi Ito

SPEED AND AGILITY

Experiment Often

Fail quickly at a low cost

More Innovation

Experiment Infrequently

Failure is expensive

Less Innovation

“ON-PREMISE”

THANK YOUDevelopment & Test in the Cloud