Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

What is Amazon Web Services & How to Start to deploy your apps ?

1,947 views

Published on

What is Amazon Web Service and how can you use our service to scale your web application from 1 to 500k users ?

Published in: Internet
  • Be the first to comment

What is Amazon Web Services & How to Start to deploy your apps ?

  1. 1. What is Cloud Computing? Sébastien Stormacq— Senior Technical Trainer stormacq@amazon.lu @sebsto
  2. 2. Learning about Cloud Computing with AWS What is Cloud Computing and what are its benefits? Who is using AWS and what are they using it for? What are AWS’s services and how do I use them to run my workloads?
  3. 3. What is Cloud Computing? A broad and deep platform that helps customers build sophisticated, scalable applications
  4. 4. Why are companies adopting cloud computing and AWS so quickly?
  5. 5. #1: Agility The primary reason businesses are moving so quickly to AWS and the cloud
  6. 6. Convert CAPEX to OPEX Lower Total Cost No Need to Guess Capacity No Undifferentiated Heavy Lifting Go Global in Minutes
  7. 7. A Culture of Innovation: Experiment Often & Fail Without Risk
  8. 8. Who is using AWS and what are they using it for?
  9. 9. Startups on AWS http://aws.amazon.com/solutions/case-studies/
  10. 10. 150,000" people are hosted " on any given night
  11. 11. Total Number of Guests January 2013 4 Million 15M 12M 9M 3M Sep 2008 Mar 2009 Sep 2009 Mar 2010 Sep 2010Mar 2011 Sep 2011 Mar 2012 Sep 2012 Mar 2013 Sep 2013 Mar 2014 Jun 2014 6M
  12. 12. June 2014 15 Million Total Number of Guests Up by Over 10 Million in One Year 15M 12M 9M 3M Sep 2008 Mar 2009 Sep 2009 Mar 2010 Sep 2010Mar 2011 Sep 2011 Mar 2012 Sep 2012 Mar 2013 Sep 2013 Mar 2014 Jun 2014 6M
  13. 13. 1,400 1,050 700 350 0 24 48 432 2010 2014 1,300 Total Number of EC2 instances
  14. 14. Why AWS?
  15. 15. We have a 5 person operations team. AWS allows us to devote our resources and mindshare to the core business. “ ”
  16. 16. Enterprises on AWS http://aws.amazon.com/solutions/case-studies/
  17. 17. Sharepoint and SAP SAP 70% reduction in" operational costs #1: Development and Testing Do more dev and test work, faster Oracle Reduced dev and test environment costs
  18. 18. #2: New Workloads Product prototyping & design Audience management & creative design Hotel booking engine Biological data research Global deals engine Video streaming App streaming Firmware SIM card credit News distribution upgrades Mobile musicMobile games discovery
  19. 19. #3: Supplement Existing Workloads with the Cloud! Analytics Export operational data to Amazon Redshift for analysis 2X faster queries at 1/2 the cost Equipment leasing app Disaster recovery SSAE 16- compliant to restore all data within 2 hours Operational applications Export data to AWS for analytics processing
  20. 20. #4: Supplement Workloads with Existing On-premises Infrastructure! AWS serves up application content & data! Integration back to Samsung Data Existing systemsCenters for financial transactions!
  21. 21. #5: Migrating Existing Applications Migrated 500 web properties in 5 months! 1,700 web properties New product websites in 2 days vs. 2 weeks Migrated clinical trials simulations platform! Simulations in 1.2hrs vs. 60hrs 64% reduction in costs
  22. 22. #6: Data Center Migration From 40 data centers, down to 6 9X increase in AWS usage APIs help govern usage and control cost Enabling global collaboration 3,000 applications by January 2015
  23. 23. #7: All-in — IT Entirely in the Cloud “We have to be great at a number of things…! operating data centers is not one of those things” ! “We are a hospitality management organization, not an IT services company”! 2000 applications migrating ! to AWS in 18 months!
  24. 24. Amazon EC2! Amazon EBS! AWS Import! ! & Export! AWS Identity ! ! & Access ! ! Management! Amazon SNS! Elastic Load! ! Balancing! Auto Scaling! Amazon VPC! Amazon RDS! Amazon EMR! Amazon ! ! CloudWatch! GovCloud! AWS Direct ! ! Connect! AWS Elastic! ! Beanstalk! AWS ! ! CloudFormation! Amazon ! ! ElastiCache! Amazon SES! 2008! 2009! 2010! 2011! Amazon EC2! Amazon ! ! CloudSearch! Amazon ! ! Dynamo DB! Amazon Glacier! Amazon Redshift! Amazon Route 53! AWS Storage! ! Gateway! Amazon SWF! Amazon ! ! AppStream! Amazon Elastic! ! Transcoder! Amazon Kinesis! AWS OpsWorks! Amazon ! ! CloudHSM! Amazon ! ! CloudTrail! AWS Data ! ! Pipeline! Amazon ! ! WorkSpaces! AWS Rapid Pace of Innovation! 2012!2013! Since inception AWS has:! • Released 937 new services and features ! • Introduced over 35 major new services! • Announced 45 price reductions! Amazon Cognito! Amazon Mobile! ! Analytics! AWS Zocalo! 2014!
  25. 25. Every New Feature and Service Arrives Ready to Use On-premises infrastructure Upgrades are your responsibility Now available to all customers Upgrades happen automatically
  26. 26. How should I design my app to scale in the cloud ?
  27. 27. Building and Managing Scalable Applications on AWS: 1 to 500K users
  28. 28. WARNING: NOT A MARKETING PRESENTATION
  29. 29. So how do we scale?
  30. 30. Some Basics
  31. 31. Regions& Availability Zones US West (Oregon) EU (Ireland) Asia Pacific (Tokyo) US West (N. California) AWS GovCloud (US) US East (Virginia) Asia Pacific (Sydney) Asia Pacific (Singapore) South America (Sao Paulo)
  32. 32. Edge Locations
  33. 33. Service Reference Model Deployment & Administra=on Compute App Services Storage & Content Delivery Database Networking AWS Global Infrastructure
  34. 34. Amazon CloudWatch AWS IAM AWS CloudFormation AWS Elastic Beanstalk Deployment & Administra=on Compute App Services Storage & Content Delivery Database Networking AWS Global Infrastructure AWS Data Pipeline AWS OpsWorks Amazon CloudSearch Amazon SQS Amazon SNS Amazon Elastic Transcoder Amazon Amazon SWF SES Amazon DynamoDB Amazon RDS Amazon ElastiCache Amazon RedShift AWS Storage Gateway Amazon S3 Amazon Glacier Amazon Amazon Amazon Amazon CloudFront EC2 EMR VPC Amazon Route 53 AWS Direct Connect
  35. 35. So let’s start from day one, user one ( you )
  36. 36. Day One, User One • A single EC2 Instance • With full stack on this host • Web app • Database • Management • Etc. • A single Elastic IP • Route53 for DNS Elastic IP EC2 Instance Amazon User Route 53
  37. 37. “We’re gonna need a bigger box” • Simplest approach • Can now leverage PIOPs • High I/O instances • High memory instances • High CPU instances • High storage instances • Easy to change instance sizes • Will hit an endpoint eventually hi1.4xlarge m2.4xlarge m1.small
  38. 38. “We’re gonna need a bigger box” • Simplest approach • Can now leverage PIOPs • High I/O instances • High memory instances • High CPU instances • High storage instances • Easy to change instance sizes • Will hit an endpoint eventually hi1.4xlarge m2.4xlarge m1.small
  39. 39. Day One, User One • We could potentially get to a few hundred to a few thousand depending on application complexity and traffic • No failover • No redundancy • All our eggs in one basket EC2 Elastic IP Instance Amazon User Route 53
  40. 40. Day One, User One: • We could potentially get to a few hundred to a few thousand depending on application complexity and traffic • No failover • No redundancy • All our eggs in one basket EC2 Elastic IP Instance Amazon User Route 53
  41. 41. Day Two, User >1 First let’s separate out our single host into more than one. • Web • Database • Make use of a database service? Database Instance Elastic IP EC2 Instance Amazon User Route 53
  42. 42. Self-managed Fully Managed Database Server on Amazon EC2 Your choice of database running on Amazon EC2 Bring Your Own License (BYOL) Amazon DynamoDB Managed NoSQL database service using SSD storage Seamless scalability Zero administration Amazon RDS Microsoft SQL, Oracle or MySQL as a managed service Flexible licensing – BYOL or license included Amazon Redshift Massively parallel, petabyte-scale, data warehouse service Fast, powerful and easy to scale Database Options
  43. 43. But how do I choose what DB technology I need? SQL? NoSQL? Not a binary decision!
  44. 44. User >100 First let’s separate out our single host into more than one Elastic IP • Web • Database • Use RDS to make your life easier RDS DB Instance EC2 Instance Amazon User Route 53
  45. 45. User > 1000 Next let’s address our lack of failover and redundancy issues • Elastic Load Balancing • Another web instance • In another Availability Zone • Enable Amazon RDS multi-AZ Web Instance Web Instance RDS DB Instance Active (Multi-AZ) Availability Zone Availability Zone RDS DB Instance Standby (Multi-AZ) Elastic Load Balancing Amazon User Route 53
  46. 46. • Create highly scalable applications • Distribute load across EC2 instances in multiple Availability Zones Elastic Load Balancer Feature Details Available Load balance across instances in multiple Availability Zones Health checks Automatically checks health of instances and takes them in or out of service Session stickiness Route requests to the same instance Secure sockets layer Supports SSL offload from web and application servers with flexible cipher support Monitoring Publishes metrics to CloudWatch Elastic Load Balancing
  47. 47. Scaling this horizontally and vertically will get us pretty far (10s-100s of thousands)
  48. 48. User >10 ks–100 ks RDS DB Instance Active (Multi-AZ) RDS DB Instance Standby (Multi-AZ) Elastic Load Balancing RDS DB Instance Read Replica Availability Zone Availability Zone RDS DB Instance Read Replica RDS DB Instance Read Replica RDS DB Instance Read Replica Web Instance Web Instance Web Instance Web Instance Web Instance Web Instance Web Instance Web Instance Amazon User Route 53
  49. 49. This will take us pretty far honestly, but we care about performance and efficiency, so let’s clean this up a bit
  50. 50. Shift Some Load Around Let’s lighten the load on our web and database instances: • Move static content from the web Instance to Amazon S3 and CloudFront • Move dynamic content from the Elastic Load Balancing to CloudFront • Move session/state and DB caching to ElastiCache or Amazon DynamoDB Elastic Load Balancer Web Instance RDS DB Instance Active (Multi-AZ) Availability Zone Amazon CloudFront Amazon S3 Amazon User Route 53 ElastiCache Amazon DynamoDB
  51. 51. Working with S3 – Amazon Simple Storage Service • Object-based storage for the web • 11 9s of durability • Good for things like: • Static assets ( css, js, images, videos ) • Backups • Logs • Ingest of files for processing • “Infinitely scalable” • Supports fine grained permission control • Ties in well with CloudFront • Ties in with Amazon EMR • Acts as a logging endpoint for Amazon S3, CloudFront, Billing • Supports encryption at transit and at rest • Reduced redundancy 1/3 cheaper • Amazon Glacier for super long term storage
  52. 52. Amazon CloudFront is a web service for scalable content delivery. • Cache static content at the edge for faster delivery • Helps lower load on origin infrastructure • Dynamic and static content • Streaming video • Zone apex support • Custom SSL certificates • Low TTLs ( as short as 0 seconds ) • Lower costs for origin fetches ( between Amazon S3/ EC2 and CloudFront ) • Optimized to work with EC2, Amazon S3, Elastic Load Balancing, and Route53 Response Time Server Load Response Time Server Load Response Time Serv er Load No CDN CDN for Sta=c Content CDN for Sta=c & Dynamic Content 80 60 40 20 0 8:00 AM 9:00 AM 10:00 AM 11:00 AM 12:00 PM 1:00 PM 2:00 PM 3:00 PM 4:00 PM 5:00 PM 6:00 PM 7:00 PM 8:00 PM 9:00 PM Volume of Data Delivered (Gbps) Amazon CloudFront
  53. 53. Shift Some Load Around Let’s lighten the load on our web and database instances • Move static content from the web instance to Amazon S3 and CloudFront • Move dynamic content from the Elastic Load Balancing to CloudFront • Move session/state and DB caching to ElastiCache or Amazon DynamoDB Elastic Load Balancing Web Instance RDS DB Instance Active (Multi-AZ) Availability Zone Amazon S3 Amazon Route 53 ElastiCache Amazon DynamoDB User Amazon CloudFront
  54. 54. • Provisioned throughput NoSQL database • Fast, predictable performance • Fully distributed, fault-tolerant architecture • Considerations for non-uniform data Feature Details Provisioned throughput Dial up or down provisioned read/write capacity Predictable performance Average single-digit millisecond latencies from SSD-backed infrastructure Strong consistency Be sure you are reading the most up to date values Fault tolerant Data replicated across Availability Zones Monitoring Integrated to CloudWatch Secure Integrates with AWS Identity and Access Management (IAM) Elastic MapReduce Integrates with Amazon Elastic MapReduce for complex analytics on large datasets Amazon DynamoDB
  55. 55. Now that our Web tier is much more lightweight, we can revisit the beginning of our talk…
  56. 56. Auto Scaling!
  57. 57. Automatic resizing of compute clusters based on demand Feature Details Control Define minimum and maximum instance pool sizes and when scaling and cool down occurs. Integrated to Amazon CloudWatch Use metrics gathered by CloudWatch to drive scaling. Instance types Run Auto Scaling for On-­‐Demand and Spot Instances. Compa=ble with VPC. aws autoscaling create-­‐autoscaling-­‐group — Auto Scaling-­‐group-­‐name MyGroup — Launch-­‐configuration-­‐name MyConfig — Min size 4 — Max size 200 — Availability Zones us-­‐west-­‐2c Auto Scaling Trigger autoscaling policy Amazon CloudWatch
  58. 58. Typical Weekly Traffic to Amazon.com Sunday Monday Tuesday Wednesday Thursday Friday Saturday
  59. 59. Typical Weekly Traffic to Amazon.com Provisioned Capacity Sunday Monday Tuesday Wednesday Thursday Friday Saturday
  60. 60. November Traffic to Amazon.com November
  61. 61. November Traffic to Amazon.com Provisioned Capacity November
  62. 62. November Traffic to Amazon.com 76% 24% Provisioned Capacity November
  63. 63. November Traffic to Amazon.com November
  64. 64. Auto Scaling lets you do this!
  65. 65. User >500k+ Availability Zone Amazon User Route 53 Amazon S3 Amazon Cloudfront Web Instance Availability Zone Elastic Load Balancing DynamoDB Web Instance RDS DB Instance Read Replica Web Instance Web Instance ElastiCache RDS DB Instance Read Replica Web Instance Web Instance RDS DB Instance ElastiCache Standby (Multi-AZ) RDS DB Instance Active (Multi-AZ)
  66. 66. Want to go beyond 500K users?
  67. 67. What is the next step and how do I take it?
  68. 68. AWS Free Tier To help you get started with the AWS Cloud, the AWS Free Tier allows you to gain hands-on experience with a broad selection of AWS products and services. http://aws.amazon.com/free/
  69. 69. AWS Free Tier To help you get started with the AWS Cloud, the AWS Free Tier allows you to gain hands-on experience with a broad selection of AWS products and services.
  70. 70. Design your application for the AWS cloud For more, visit the AWS Architecture Center : http://aws.amazon.com/architecture/
  71. 71. System Integrators on AWS
  72. 72. ISVs on AWS
  73. 73. AWS Training & Certification Demonstrate your skills, knowledge, and expertise with the AWS platform aws.amazon.com/certification Try products, gain new skills, and get hands-on practice working with AWS technologies aws.amazon.com/training/" self-paced-labs Skill up and gain confidence to design, develop, deploy and manage your applications on AWS aws.amazon.com/training
  74. 74. Sébastien Stormacq Senior Technical Trainer @sebsto Read! • aws.amazon.com/documentation • aws.amazon.com/architecture • aws.amazon.com/start-ups Listen! • aws.amazon.com/podcast

×