[Mar AWS 201] Auto Scaling Demo

889 views
814 views

Published on

Auto Scaling Demo given by Ilho Kim (Solution Architect) on March 21

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
889
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
30
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

[Mar AWS 201] Auto Scaling Demo

  1. 1. Auto Scaling Demo Ilho Kim Solutions Architect March 2013AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  2. 2. General  Disclaimer   This  document  is  intended  solely  for  discussion  purposes.    Amazon  Web  Services  has   provided  answers  based  on  its  current  knowledge,  but  these  answers  may  change  due   to  a  variety  of  factors,  including  changes  in  aOendees’  requirements,  the  capabiliNes   of  the  third  party  selected  to  assist  with  implementaNon,  and  changes  to  Amazon  Web   Services  offerings.    Any  agreement  between  Amazon  Web  Services  and  aOendees   regarding  the  proposed  soluNon  will  be  documented  in  a  separate  definiNve   agreement,  not  this  proposal.  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  3. 3. Assuming   •  You  have  registered  AWS.   •  You  know  how  to  login  AWS  console   •  You  know  how  to  connect  w/  ssh  to  instances   •  You  know  auth.  Key  /  secret  Key   •  VPC(Virtual  Private  Cloud)  configured   –  Two  private  subnets(each  one  in  each  AZ)   –  IGW   –  ELB  (internet-­‐facing)   •  AWS  CLI  installed  (EC2,  Auto  Scaling)   –  setup  environments/java/path/credenNals  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  4. 4. Demo  Architecture   Amazon  CloudWatch   (Monitoring)   Amazon  Route  53   (DNS)   Internet  GateWay   Elas@c  Load     Balancer                           Apache     Apache   Apache     Apache                 PHP  Mod     PHP  Mod     PHP  Mod     PHP  Mod                 Auto  Scaling  group  :  Web  App  Tier     Auto  Scaling  group  :  Web  App  Tier             Private  Subnet     Private  Subnet               Availability  Zone  #1   Availability  Zone  #2   RegionAMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  5. 5. Architecture  details   •  Web/Was  in  private  subnets  in  VPC   –  10.0.0.0/16   •  10.0.1.0/24,  10.0.2.0/24   •  ELB   –  Internet-­‐facing  (not  internal)   –  Set  traffic  into  both  subnets(=  both  AZs)   •  IGW  aOached   •  Using  hOpd,  php  and  index.php  pre-­‐installed  AMI   •  RouNng  Tables,  SG  configured  for  web  service(look  at   console)  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  6. 6. Architecture  details   •  Instance  type  :  t1.micro   •  AMI  :  ami-­‐668a150f   –  HOpd,  php  installed   –  Index.php  (dump  instance  informaNon)   <?php   $output  =  shell_exec(curl  169.254.169.254/latest/dynamic/instance-­‐idenNty/ document/);   echo  "<pre>$output</pre>";   ?>  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  7. 7. Auto  Scaling  CLI   •  Auto  Scaling  basic  Commands   •  CMD  -­‐-­‐help  shows  opNons    AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  8. 8. CreaNng  Launch  ConfiguraNon   •  as-­‐create-­‐launch-­‐config     –  Image-­‐id   –  Instance  Type   –  Key  (do  not  add  “.pem”)   –  Group  (VPC  Security  Group,  not  EC2)   –  Launch-­‐config  (the  name  of  configuraNon)   $  as-­‐create-­‐launch-­‐config  -­‐-­‐image-­‐id  ami-­‐668a150f  -­‐-­‐instance-­‐type  t1.micro  -­‐-­‐key   test_web  -­‐-­‐group  sg-­‐ae9665c1  -­‐-­‐launch-­‐config  web-­‐as-­‐config       Not  name,  SG  Group  ID!  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  9. 9. Create  Auto  Scaling  Group   •  as-­‐create-­‐auto-­‐scaling-­‐group   –  Auto  Scaling  Group  Name   –  Availability  Zones  =  AZ,AZ…   –  Launch  ConfiguraNon  Name   –  Load  Balancer  Names   –  MaxSize   –  MinSize   –  vpc-­‐zone-­‐iden@fier  (Not  VPC  ID,  subnet  IDs  !)   –  region   $  as-­‐create-­‐auto-­‐scaling-­‐group  web-­‐as-­‐group  -­‐-­‐availability-­‐zones  us-­‐east-­‐1b,us-­‐ east-­‐1c  -­‐-­‐launch-­‐configuraNon  web-­‐as-­‐config  -­‐-­‐load-­‐balancers  webloadbal-­‐vpc  -­‐-­‐ max-­‐size  6  -­‐-­‐min-­‐size  2  -­‐-­‐vpc-­‐zone-­‐idenNfier  subnet-­‐5718c13a,subnet-­‐7f18c112   -­‐-­‐region  us-­‐east-­‐1   Press  Enter  =  Auto  Scaling  start!    AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  10. 10. Check  if  AS  is  working   •  Now  Auto  Scaling  starts!  (-­‐-­‐min-­‐size  2)   •  Go  to  browser  and  type  ELB  URL   –  Ex.  hOp://webloadbal-­‐vpc-­‐652639900.us-­‐ east-­‐1.elb.amazonaws.com/   {   {      "instanceId"  :  "i-­‐14b3a167",      "instanceId"  :  "i-­‐f2584581",      "billingProducts"  :  null,      "billingProducts"  :  null,      "version"  :  "2010-­‐08-­‐31",      "version"  :  "2010-­‐08-­‐31",      "imageId"  :  "ami-­‐668a150f",      "imageId"  :  "ami-­‐668a150f",      "accountId"  :  ”12345678901",      "accountId"  :  "806506827877",      "instanceType"  :  "t1.micro",      "instanceType"  :  "t1.micro",      "kernelId"  :  "aki-­‐88aa75e1",      "kernelId"  :  "aki-­‐88aa75e1",      "ramdiskId"  :  null,      "ramdiskId"  :  null,      "architecture"  :  "x86_64",      "architecture"  :  "x86_64",      "pendingTime"  :  "2013-­‐03-­‐10T10:45:03Z",      "pendingTime"  :  "2013-­‐03-­‐10T11:08:18Z",      "availabilityZone"  :  "us-­‐east-­‐1c",      "availabilityZone"  :  "us-­‐east-­‐1b",      "devpayProductCodes"  :  null,      "devpayProductCodes"  :  null,      "privateIp"  :  "10.0.2.73",      "privateIp"  :  "10.0.1.87",      "region"  :  "us-­‐east-­‐1"      "region"  :  "us-­‐east-­‐1"   }   }  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  11. 11. Create  Auto  Scaling  Policy   •  Create  Scale  Up  Policy     $  as-­‐put-­‐scaling-­‐policy  webScaleUpPolicy  -­‐-­‐auto-­‐scaling-­‐group  web-­‐as-­‐   group  -­‐-­‐adjustment=1  -­‐-­‐type  ChangeInCapacity  -­‐-­‐cooldown  180         Event   Cooldown   Event   •  Create  Scale  Down  Policy   $  as-­‐put-­‐scaling-­‐policy  webScaleDownPolicy  -­‐-­‐auto-­‐scaling-­‐group  web-­‐ as-­‐group  "-­‐-­‐adjustment=-­‐1"  -­‐-­‐type  ChangeInCapacity  -­‐-­‐  cooldown  300   Need  to  be  in  quote!  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  12. 12. Create  Auto  Scaling  Policy   •  Go  to  CloudWatch  !!   •  Create  alarms  for  auto  scaling  by  CPU  UNlizaNon   More   sensiNve   web   web   web   web  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  13. 13. Create  Auto  Scaling  Policy   •  CPU  UNlizaNon  >=  40%  à  Spin  up  a  new  Instance   web   web   •  CPU  UNlizaNon  <=  10%  à  Remove  the  Instance   web   web  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  14. 14. Test  Auto  Scaling   •  HOp  Load  GeneraNng     –  ApacheBench     •  $  ab  –n  “the  #  of  request”  –c  “the  #  of  concurrency”  URL   $  ab  -­‐n  1000000  -­‐c  1000       hOp://webloadbal-­‐vpc-­‐652639900.us-­‐east-­‐1.elb.amazonaws.com/   web   web   web   web   web  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes   web  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  15. 15. Delete  Auto  Scaling   1.  as-­‐describe-­‐auto-­‐scaling-­‐groups  web-­‐as-­‐group  –headers   2.  as-­‐update-­‐auto-­‐scaling-­‐group  web-­‐as-­‐group  -­‐-­‐min-­‐size  0  -­‐-­‐ max-­‐size  0   3.  as-­‐describe-­‐auto-­‐scaling-­‐groups  web-­‐as-­‐group  –headers   4.  as-­‐delete-­‐auto-­‐scaling-­‐group  web-­‐as-­‐group   5.  as-­‐delete-­‐launch-­‐config  web-­‐as-­‐config   6.  as-­‐describe-­‐auto-­‐scaling-­‐groups  –headers   Note:  All  policies  associated  with  dele1ng  AS  will  be  removed.     Op1onal.  7.  Delete  Cloudwatch                                    8.  Delete  Load  Balancer  AMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  
  16. 16. Thank You! Ilho Kim ilho@amazon.com aws.amazon.comAMAZON  WEB  SERVICES  CONFIDENTIAL.  THIS  DOCUMENT  MAY  NOT  BE  DISCLOSED  WITHOUT  AMAZON  WEB  SERVICES’  PRIOR  WRITTEN  CONSENT.  This  document  is  for  discussion  purposes  only.  Neither  party  will  have  any  obligaNon  or  liability  with  respect  to  the  maOers  described  in  this  document  (other  than  confidenNality  obligaNons),  unless  and  unNl  a  definiNve  wriOen  agreement  addressing  such  maOers  is  executed  by  each  party,  and  neither  party  will  have  any  liability  for  any  failure  or  refusal  to  enter  into  a  definiNve  agreement  for  any  reason.  

×