devops at amazon - amazon simple storage service · what)is)devops? devops...

25
© 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Mark Bate, AWS Solutions Architect October 2015 DevOps at Amazon A Look at Our Tools and Processes

Upload: tranminh

Post on 14-Sep-2018

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

©  2015,   Amazon   Web  Services,   Inc.   or  its  Affiliates.   All  rights  reserved.

Mark  Bate,  AWS  Solutions  Architect

October  2015

DevOps at  AmazonA  Look  at  Our  Tools  and  Processes

Page 2: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

What  to  expect  from  the  session

The  Amazon  DevOps story

New  developer  tools  for  everyone• AWS  CodeDeploy• AWS  CodePipeline• AWS  CodeCommit

Page 3: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

What  is  DevOps?

DevOps =  efficiencies  that  speed  up  this  lifecycle  

developers customers

releasetestbuild

plan monitor

delivery  pipeline

feedback  loop

Software  development   lifecycle

Page 4: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

©2015,  Amazon  Web  Services,  Inc.  or  its  affiliates.   All  rights  reserved

The  Amazon  DevOps story

Page 5: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline
Page 6: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Monolith  development  lifecycle

developers

releasetestbuild

delivery  pipelineapp

Page 7: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Service-­Oriented  Architecture  (SOA)

Single-­purpose

Connected  through  APIs

Highly  decoupled

“Microservices”

Page 8: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Two-­pizza  teams

Full  ownership  

Full  accountability

Aligned  incentives

“DevOps”

Page 9: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Missing  tools

developers delivery  pipelineservices

???

Page 10: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Self-­service

Technology-­agnostic

Encourage  best  practices

Single-­purpose  services

Page 11: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Deployment  service

No  downtime  deployments

Health  tracking

Versioned  artifacts  and  rollbacks

Page 12: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

PipelinesContinuous  delivery

Automated  release  process

Faster  and  more  reliable  releases

>90%  of  teams

Page 13: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Microservice development  lifecycle

developers delivery  pipelinesservices

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

Page 14: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

=  50  million  deployments a  year

Thousands  of  teams× Microservice architecture

× Continuous  delivery× Multiple  environments

Page 15: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

How  can  others  do  this?

Page 16: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Setting  up  a  delivery  pipeline

Testing Staging Production

deploy

deploy

deploy

Source Build

release

AWS  CodeDeploy

AWS  CodePipeline

AWSCodeCommit

Page 17: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

©2015,  Amazon  Web  Services,  Inc.  or  its  affiliates.   All  rights  reserved

AWS  Code  Services

Page 18: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

AWS  CodeDeploy

Easy  and  reliable  deploymentsScale  with  easeDeploy  to  any  server

TestCodeDeployv1,  v2,  v3

Production

Dev

applicationrevisions

deployment  groups

Page 19: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

AWS  CodePipeline

Connect  to  best-­of-­breed  toolsAccelerate  your  release  processConsistently  verify  each  release

Build1)  Build2)  Unit  test

1) Deploy2)  UI  test

Source Beta Production1)  Deploy2)  Perf test

Gamma1)  Deploy  canary2)  Deploy   region  13)  Deploy   region  2

1)  Pull

Page 20: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

AWS  CodeCommit

Use  standard  Git toolsScalability,  availability,  and  durability  of  Amazon  S3Encryption  at  rest  with  customer-­specific  keys

git pull/push CodeCommit

Git objects  inAmazon  S3

Git index  inAmazon  DynamoDB

Encryption  keyin  AWS  KMS

SSH  or  HTTPS

Page 21: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Hands  on  with  the  AWS  Code  services

CodeCommitsource  control

CodePipelinecontinuous   delivery

CodeDeployautomated  deployment

Page 22: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

AWS  Code  partners

Page 23: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Next  steps

SESSIONS

Automating  Your  Software  Deployments  with  AWS  CodeDeploy – Today,  10:00

Releasing  Software  Quickly  and  Reliably  with  AWS  CodePipeline – Today,  17:00

LEARN  MORE

aws.amazon.com/awscode

Page 24: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Thank  you!

Page 25: devops at amazon - Amazon Simple Storage Service · What)is)DevOps? DevOps =efficiencies)that)speed)up)this)lifecycle) developers customers build test release plan monitor deliverypipeline

Remember  to  complete  your  evaluations!