devops for the enterprise: automating deployments

33
DEVOPS WEBINAR SERIES – EPISODE 3 ENABLING BUSINESS AGILITY: AUTOMATING DEPLOYMENTS [email protected] @IanMmmm

Upload: amazon-web-services

Post on 12-Jan-2015

729 views

Category:

Technology


1 download

DESCRIPTION

This session explains the different services and techniques to automate deployments on AWS, using tools such as AWS CloudFormation, OpsWorks, or PowerShell. Who should attend: Developers, DevOps Manager, Configuration Managers, Test Managers and Architects Demos associated with this webinar: • Creating a CloudFormation script that describes the target environment • Deploying the build artifacts onto the target environment View the webinar: http://youtu.be/5WwWylmZE7Y

TRANSCRIPT

Page 1: DevOps for the Enterprise: Automating Deployments

DEVOPS WEBINAR SERIES – EPISODE 3 ENABLING BUSINESS AGILITY: AUTOMATING DEPLOYMENTS

[email protected]@IanMmmm

Page 2: DevOps for the Enterprise: Automating Deployments

BASELINE

BRANCH

BRANCH

BRANCH

ELASPED TIME

INTEGRATION

INTEGRATIO

N

INTEGRATIONOLD WORLD: INFRASTRUCTURE IN

weeks

ENTERPRISES CAN’T AFFORD TO BE SLOW

THE MORE I PRACTICETHE LUCKIER I GET - GARY PLAYER

CLOUDFORMATION TEMPLATE

PREVIOUSLY…

Page 3: DevOps for the Enterprise: Automating Deployments

ARTEFACT PRODUCTION

!

!

!

PROD / TEST ENVIRONMENTS

DEPLOY

Page 4: DevOps for the Enterprise: Automating Deployments

AUTOMATED DEPLOYMENT

Page 5: DevOps for the Enterprise: Automating Deployments

AUTOMATIONDeterministic & reproducible results

Faster reproduction of time-consuming tasks

Page 6: DevOps for the Enterprise: Automating Deployments

CASE STUDY

Page 7: DevOps for the Enterprise: Automating Deployments
Page 8: DevOps for the Enterprise: Automating Deployments
Page 9: DevOps for the Enterprise: Automating Deployments
Page 10: DevOps for the Enterprise: Automating Deployments

HTTP://SORCERY.SMUGMUG.COM/

Page 11: DevOps for the Enterprise: Automating Deployments

1. Produce the artifact from the CI platform

2. Store the artifact in a repository

3. Deploy the artifact from the repository into the target environment

Page 12: DevOps for the Enterprise: Automating Deployments

DEMO !

AUTOMATED DEPLOYMENT WITH JENKINS, AWS CLOUDFORMATION,

AMAZON S3 & AMAZON EC2

Page 13: DevOps for the Enterprise: Automating Deployments

DEPLOYMENT OPTIONS STATIC vs DYNAMIC

Page 14: DevOps for the Enterprise: Automating Deployments

CREATE A MACHINE IMAGE

CONFIGURE AT LAUNCH

STATIC DYNAMIC

Time consuming configuration (startup time) Static configurations (less

change management)

Page 15: DevOps for the Enterprise: Automating Deployments

CREATE A MACHINE IMAGE

CONFIGURE AT LAUNCH

STATIC DYNAMIC

Continuous deployment (latest code)

Environment specific (dev-test-prod)

Page 16: DevOps for the Enterprise: Automating Deployments

CREATE A MACHINE IMAGE

CONFIGURE AT LAUNCH

STATIC DYNAMIC

Continuous deployment (latest code)

Environment specific (dev-test-prod)

Time consuming configuration (startup time) Static configurations (less

change management)

Page 17: DevOps for the Enterprise: Automating Deployments

AWS OPSWORKS INTEGRATED APPLICATION

MANAGEMENT

Page 18: DevOps for the Enterprise: Automating Deployments

A stack represents your application. One stack might be used for staging and another for production.

A layer defines how to setup and configure a set of instances and related resources such as volumes and software.

Tell OpsWorks where it can find your code and define any additional deployment tasks. OpsWorks will take care of deploying your app.

Scale your stack based on time or load. Clone your production stack to a different region. Automate workflows for common tasks.

Page 19: DevOps for the Enterprise: Automating Deployments

A stack represents your application. One stack might be used for staging and another for production.

A layer defines how to setup and configure a set of instances and related resources such as volumes and software.

Tell OpsWorks where it can find your code and define any additional deployment tasks. OpsWorks will take care of deploying your app.

Scale your stack based on time or load. Clone your production stack to a different region. Automate workflows for common tasks.

Page 20: DevOps for the Enterprise: Automating Deployments

A stack represents your application. One stack might be used for staging and another for production.

A layer defines how to setup and configure a set of instances and related resources such as volumes and software.

Tell OpsWorks where it can find your code and define any additional deployment tasks. OpsWorks will take care of deploying your app.

Scale your stack based on time or load. Clone your production stack to a different region. Automate workflows for common tasks.

Page 21: DevOps for the Enterprise: Automating Deployments

A stack represents your application. One stack might be used for staging and another for production.

A layer defines how to setup and configure a set of instances and related resources such as volumes and software.

Tell OpsWorks where it can find your code and define any additional deployment tasks. OpsWorks will take care of deploying your app.

Scale your stack based on time or load. Clone your production stack to a different region. Automate workflows for common tasks.

Page 22: DevOps for the Enterprise: Automating Deployments

AWS Elastic Beanstalk

AWSOpsWorks

AWSCloudFormation

Amazon EC2

Page 23: DevOps for the Enterprise: Automating Deployments

AWS Elastic Beanstalk

AWSOpsWorks

AWSCloudFormation

Amazon EC2

CONVENIENCE CONTROL

Page 24: DevOps for the Enterprise: Automating Deployments

AWS Elastic Beanstalk

AWSOpsWorks

AWSCloudFormation

Amazon EC2

CONVENIENCE CONTROL

HIGH-LEVEL DO IT YOURSELF

Page 25: DevOps for the Enterprise: Automating Deployments

CHEF & CLOUDFORMATION CloudFormation is for environment initialization

Chef is for deployment & updates

Page 26: DevOps for the Enterprise: Automating Deployments

BEST PRACTICES

Page 27: DevOps for the Enterprise: Automating Deployments

IF YOU NEED TO SSH INTO YOUR SERVERS FOR DEPLOYMENT,

YOUR DEPLOYMENT PROCESS IS BROKEN

Page 28: DevOps for the Enterprise: Automating Deployments

DEPLOYMENTS HAVE TO BE AUTHORIZED

Page 29: DevOps for the Enterprise: Automating Deployments

CONTROL WHO CAN DO WHAT IN YOUR AWS ACCOUNT

Page 30: DevOps for the Enterprise: Automating Deployments

USE AWS IAM IDENTITY & ACCESS MANAGEMENT

BEST PRACTICE

Page 31: DevOps for the Enterprise: Automating Deployments

DEV & TEST ENVIRONMENT

AWS ACCOUNT A

PRODUCTION ENVIRONMENT

AWS ACCOUNT B

BEST PRACTICE

Page 32: DevOps for the Enterprise: Automating Deployments

aws.amazon.com/blogs/aws !

aws.amazon.com/new

@AWScloud @AWS_UKI

Page 33: DevOps for the Enterprise: Automating Deployments

DEVOPS WEBINAR SERIES – EPISODE 2 ENABLING BUSINESS AGILITY: DEVOPS FOR THE ENTERPRISE

[email protected]@IanMmmm