Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Application Lifecycle Management (ALM) on Amazo...

Avatar for davidmat davidmat
February 02, 2015

Application Lifecycle Management (ALM) on Amazon AWS

AWS offers a range of services for managing your applications through the entire Software Development Lifecycle and beyond

Avatar for davidmat

davidmat

February 02, 2015
Tweet

More Decks by davidmat

Other Decks in Technology

Transcript

  1. Agenda   •  AWS  PlaGorm  Overview   •  ALM  on

     AWS   – Governance   – Development   – Opera'ons   •  CodeDeploy  Demo  
  2. Cloud  Benefits   Apps  not   Ops   Low  

    Ongoing   Cost   Flexible   Capacity   Speed  &   Agility   No  Upfront   Investment   Global   Reach  
  3. Cloud  Benefits   •  Why  AWS?   – Scale   – Accelera'ng

     Innova'on   – Fast  Adop'on   – Enterprise  Ready   – Breadth  &  Depth  of  Services  
  4. Scale   Every day, AWS adds enough new server capacity

    to support all of Amazon’s global infrastructure when it was a $7B annual revenue enterprise.
  5. Adop'on   “It  is  the  overwhelming  market  share   leader,

     with  more  than  five  'mes  the   cloud  IaaS  compute  capacity  in  use  than   the  aggregate  total  of  the  other  14   providers”     Magic  Quadrant  for  Cloud  IaaS,  28  May   2014  
  6. INFRASTRUCTURE   Regions   Availability  Zones   Points  of  Presence

      AWS  PlaGorm   •  It  all  starts  with  infrastructure     •  Regions   –  Global  presence   •  Availability  Zones   –  Build  highly-­‐available  applica'ons  at  a  frac'on  of  the  cost  of  tradi'onal  ac've-­‐ac've  setups   •  Points  of  presence   –  Serve  sta'c  content  quickly.  “Be  where  your  users  are”  
  7. <  2-­‐5  Availability  Zones   •  AZs  <  2ms  apart

      usually  <  1ms   •  Transit  center  connects  to     –  AWS  regions  &  Direct   Connect  (private  links)   –  Internet  (public  link)   •  Redundant  paths  to  transit   center   <  1-­‐6  Data  Centers   •  No  DC  is  in  2  AZs   •  DCs  within  AZ  <  ¼ms   apart   +  >50  Edge  Loca@ons   •  DNS   •  Caching   11  Regions   •  Private  AWS  fiber  links   interconnect  all  major   regions   –  Increased  availability  &   performance,  lower   jifer  &  costs   •  Compute  &  storage  to   customers  or  required   jurisdic'onal  boundaries   Infrastructure  
  8. ENTERPRISE   APPLICATIONS   PLATFORM   SERVICES   ADMINISTRATION  

    &  SECURITY   CORE  SERVICES   INFRASTRUCTURE   Regions   Availability  Zones   Points  of  Presence   Compute   Storage   CDN   Databases   Networking   Iden'ty   Access   Audit   Key  Storage   Monitoring   Logs   Virtual  Desktops   Sharing  &  Collabora'on   Analy'cs   App  Services   Ops  &  Mgmt   Mobile  Services   •  Hadoop   •  Real-­‐'me   Streaming   •  Data   Warehouse   •  Data  Pipelines   •  Queuing    &   No'fica'ons   •  Workflow   •  App  Streaming   •  Transcoding   •  Email   •  Search   •  One-­‐Click  Web   App  Deploys   •  DevOps   Resource  Mgmt   •  Resource   Templates   •  Iden'ty   •  Sync   •  Mobile   Analy'cs   •  Push   No'fica'ons   E-­‐mail  &  Calendars  
  9. Agenda   •  AWS  PlaGorm  Overview   •  ALM  on

     AWS   – Governance   – Development   – Opera'ons   •  CodeDeploy  Demo  
  10. ALM  &  AWS   ALM   Governance   Development  

    Opera'ons   •  AWS:     –  Increased  agility   •  Infrastructure  in  minutes   •  Culture  of  innova'on   –  Experiment  omen   –  Fail  quickly  at  low  cost   –  Requires  People/ Processes/Tools  
  11. Governance  on  AWS   •  Compliance,  Security  &  Access  Management

      –  VPC,  IAM,  CloudTrail,  Trusted  Advisor   •  Resource  Management   –  AWS  Config,  AWS  Service  Catalog   •  Cost  Management  &  Account  Governance   –  Billing  console   •  AWS  Marketplace  
  12. Feature  Highlight:   AWS  Marketplace   •  Buy  3rd  Party

     Somware  &  Services   •  Ready  to  Use  on  EC3   •  Pricing  Models   •  Pay-­‐As-­‐You-­‐Go  Hourly  Pricing   •  Yearly  Subscrip'ons   •  Bring  Your  Own  License  
  13. SDLC  on  AWS   •  Accelerate  the  SDLC   – How

     to  harness  the   power  of  this  new   technology   infrastructure   plaGorm?   Flywheel   Develop   Build  &   Test   Deploy   Monitor   &   Analyze  
  14. SDLC  on  AWS   •  Develop:  SDKs  &  Toolkit  Integra'ons

      Java Python (boto) PHP .NET Ruby Node.js iOS Android AWS Toolkit for Visual Studio AWS Toolkit for Eclipse AWS Tools for Windows PowerShell AWS CLI JavaScript
  15. SDLC  on  AWS   •  Develop  (cont’d)   – On-­‐demand  environments

      •  Elas'c  Beanstalk  PaaS   •  Docker  integra'on   – Reduce  overhead  with  managed  services   – CodeCommit  source  code  repo  
  16. Feature  Highlight:   AWS  CodeCommit   •  Managed  Git  source

     code  repos   •  Highly  durable,  highly  available   •  Closely  locate  source  code  to  dev/ staging/produc'on   •  No  size  limits  on  repositories  or   files   •  Granular  permissions   •  Encrypt  files  on  commit   •  Bring  your  own  keys   •  Coming  ‘early  2015’  
  17. Feature  Highlight:   Vagrant  +  Docker   Vagrant.configure(VAGRANTFILE_API_VERSION)  do  |config|

             config.vm.provider  :virtualbox  do  |vb,  override|                  override.vm.box  =  "phusion/ubuntu-­‐14.04-­‐amd64"                  …          end          config.vm.provider  :aws  do  |aws,  override|                  aws.instance_type  =  "m3.medium"                  aws.region  =  "eu-­‐west-­‐1"                  aws.ami=  "ami-­‐f0b11187"                  …          end          …          config.vm.provision  "docker"  do  |d|                  d.pull_images  "sequenceiq/spark:1.1.0"                  d.pull_images  "tpires/neo4j"                  d.run  "tpires/neo4j",                          args:  "-­‐d  -­‐p  0.0.0.0:80:7474                            -­‐v  /data:/data                            -­‐v  /home/ubuntu/neo4jdata:/var/lib/neo4j/data"                  d.run  "spark",                          cmd:  "/etc/bootstrap.sh  -­‐bash”,                          args:  "-­‐i  -­‐t  -­‐h  sandbox  -­‐d"          end   end   Start  a  local  development  VM    $  vagrant  up   Start  a  development  VM  on  AWS    $  vagrant  up  -­‐-­‐provider=aws    
  18. SDLC  on  AWS   •  Build  &  Test   – 

    On-­‐demand  builds   •  Store  &  distribute  build  output   –  Store  &  distribute  build  output   •  S3  for  cheap,  durable  storage   –  Fully  automated,  isolated  test  environments   •  ‘Programmable  data  center’   •  CloudForma'on  templates   –  Leverage  parallel  capacity  for  tests   •  1  instance  for  50Hrs  =  50  instances  for  1Hr   –  Test  Scenarios:  Load  –  UAT  –  A/B  –  Fault-­‐tolerance   –  CodePipeline  for  con'nuous  integra'on,  test  &  deployment  workflow  
  19. Feature  Highlight:   AWS  CodePipeline   •  Codify  &  automate

     release  process   •  Enable  repeatable,  automated   integra'on   •  Construct  graphical  model  of   release  process   •  Combina'on  of  serial  and  parallel   ac'ons   •  Time-­‐based  or  manual  approval   gates  between  stages   •  Watches  repo  for  changes  and   triggers  the  appropriate  workflow   •  Integrates  with  exis'ng  code   repos,  build  &  test  tools   •  Coming  ‘early  2015’  
  20. Feature  Highlight:   CloudForma@on   •  Describe  your  en're  AWS

      infrastructure  in  JSON   •  Can  be  version  controlled   •  Easy  deployments  globally   •  DevOps  Concepts   •  ‘Immutable  Infrastructure’   •  ‘Infrastructure  as  Code’  
  21. SDLC  on  AWS   •  Deploy   – Enable  con'nuous  deployment

      •  Model  workflow  in  AWS  CodePipeline   •  Automate  deployments  with  AWS  CodeDeploy   •  Manage  configura'on  with  OpsWorks  (hosted  Chef)   – Store  everything  as  a  CloudForma'on  template  
  22. Feature  Highlight   AWS  CodeDeploy   •  Automated  deployments  across

      EC2  fleet  (1  to  1000s  instances)   •  <Apollo   •  50  million  deployments  in  last  12   months   •  Features   •  Fully  managed   •  Rolling  deployments   •  Customizable   •  Deployment  health  tracking   •  Stop  &  rollback  support   •  Centralized  control   •  Language/architecture  agnos'c   •  Toolchain  integra'on   •  Free  
  23. Feature  Highlight   AWS  CodeDeploy   •  Integra'ons   • 

    Developer  Tools   •  Configura'on  Management  tools  
  24. SDLC  on  AWS   •  Monitor  &  Analyze   – Monitor

     infrastructure  with  CloudWatch   – Alarms  &  no'fica'on  with  SNS   – CloudTrail  user  ac'vity  &  change  tracking  
  25. Opera'ons  on  AWS   •  Infrastructure  monitoring   –  CloudWatch

     +  SNS  no'fica'ons   –  Ac'onable  no'fica'ons   •  Environment,  access  management     –  AWS  Config,  AWS  CloudTrail,  KMS   •  Self-­‐healing  applica'ons   –  AutoScaling   –  Mul'-­‐AZ  Deployments   •  Automate  everything   –  Golden  AMIs   –  OpsWorks   –  CloudForma'on   –  CodePipeline,  CodeDeploy  
  26. Agenda   •  AWS  PlaGorm  Overview   •  ALM  on

     AWS   – Governance   – Development   – Opera'ons   •  CodeDeploy  Demo