AWS를 활용한 웹, 모바일, 소셜 애플리케이션 구축 방법
Upcoming SlideShare
Loading in...5
×
 

AWS를 활용한 웹, 모바일, 소셜 애플리케이션 구축 방법

on

  • 436 views

2014년 3월 27일 개최된 '상암에서 만나는 아마존웹서비스' 에서 AWS 김일호 책임이 발표한 'AWS를 활용한 웹, 모바일, 소셜 애플리케이션 구축 방법' 발표 ...

2014년 3월 27일 개최된 '상암에서 만나는 아마존웹서비스' 에서 AWS 김일호 책임이 발표한 'AWS를 활용한 웹, 모바일, 소셜 애플리케이션 구축 방법' 발표 자료 입니다.

Statistics

Views

Total Views
436
Views on SlideShare
411
Embed Views
25

Actions

Likes
0
Downloads
11
Comments
0

1 Embed 25

http://mkto-sj010128.com 25

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • In this webinar I am going to introduce Amazon Web Services, also known as AWS, and some of the fundamental concepts behind the Amazon Cloud.
  • http://www.flickr.com/photos/scobleizer/3985020876/You created a great webapp and you're proud of it
  • Remember your great app ? Well, everyone loves it …
  • Our goal, and what our customers tell us they see, is that this ratio is inverted after moving to AWS. When you move your infrastructure to the cloud, this changes things drastically. Only 30% of your time should be spent architecting for the cloud and configuring your assets. This gives you 70% of your time to focus on your business. Project teams are free to add value to the business and it's customers, to innovate more quickly, and to deliver products to market quickly as well.
  • Our goal, and what our customers tell us they see, is that this ratio is inverted after moving to AWS. When you move your infrastructure to the cloud, this changes things drastically. Only 30% of your time should be spent architecting for the cloud and configuring your assets. This gives you 70% of your time to focus on your business. Project teams are free to add value to the business and it's customers, to innovate more quickly, and to deliver products to market quickly as well.
  • services that are normally expensive to manage or difficult to use become available on-demand, in a uniform and available way, and only paid for when used. Just like electricity.This is what AWS does. It takes away the hard work from providing infrastructure IT services and makes them available to anyone on a pay as you go basis.
  • In this webinar I am going to introduce Amazon Web Services, also known as AWS, and some of the fundamental concepts behind the Amazon Cloud.

AWS를 활용한 웹, 모바일, 소셜 애플리케이션 구축 방법 AWS를 활용한 웹, 모바일, 소셜 애플리케이션 구축 방법 Presentation Transcript

  • Going Global on AWS For Web, Mobile and Social Apps 김일호 – Solutions Architect ilho@amazon.com
  • You begin your Startup in a garage, 친구집, PC방, 랩실, 토즈..….. 
  • …and build a fantastic app View slide
  • people love it! View slide
  • and everyone wants to use it…
  • 503 Service Temporarily Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
  • and everyone wants to use it… Now what?!
  • What your users want…
  • What your users want… Fast, performant experience
  • What your users want… Fast, performance experience Always on, accessible anywhere
  • What your users want… Fast, performance experience Always on, accessible anywhere Personalized and rich application
  • What your users want… Fast, performance experience Always on, accessible anywhere Personalized and rich application Lots of new features all of the time
  • Fast, performance experience Lots of new features all of the time Always on, accessible anywhere Personalized and rich application Powerful web applications
  • How?
  • Building powerful web applications
  • Rule 2: Service requests as fast as possible Rule 1: Service all web requests Rule 3: Handle requests at any scale Rule 4: Simplify architecture with services Rule 5: Automate operational management Rule 6: Leverage unique cloud properties
  • DNS Application Data Rule 1: Service all web requests a) Make sure requests get to your ‘front door’
  • DNS Application DataRequest Rule 1: Service all web requests a) Make sure requests get to your ‘front door’
  • DNS Application DataRequest a) Make sure requests get to your ‘front door’ Rule 1: Service all web requests
  • DNS Application DataRequest …then this is irrelevant Clients can’t resolve you? Rule 1: Service all web requests a) Make sure requests get to your ‘front door’
  • DNS Application DataRequest “100% Available” SLA Rule 1: Service all web requests Route53 Feature Details Global Supported from AWS global edge locations for fast and reliable domain name resolution Scalable Automatically scales based upon query volumes Latency based routing Supports resolution of endpoints based upon latency, enabling multi- region application delivery Integrated Integrates with other AWS services allowing Route 53 to front load balancers, S3 and EC2 Secure Integrates with IAM giving fine grained control over DNS record access http://aws.amazon.com/route53/sla a) Make sure requests get to your ‘front door’
  • DNS Application DataRequest Rule 1: Service all web requests a) Make sure requests get to your ‘front door’ b) Make sure you open the door when they arrive Route53
  • Region DNS Application DataRequest Rule 1: Service all web requests Elastic Load Balancer Region Availability Zone Availability Zone Availability Zone Availability Zone Route53 a) Make sure requests get to your ‘front door’ b) Make sure you open the door when they arrive Elastic load balancing Multi-availability zone Multi-region
  • Region Rule 1: Service all web requests DNS Application DataRequest a) Make sure requests get to your ‘front door’ b) Make sure you open the door when they arrive c) Have the data to form a response Elastic Load Balancer Region Availability Zone Availability Zone Availability Zone Availability Zone Route53
  • Region Rule 1: Service all web requests DNS Application DataRequest Elastic Load Balancer Route53 Region Availability Zone Availability Zone Availability Zone Availability Zone a) Make sure requests get to your ‘front door’ b) Make sure you open the door when they arrive c) Have the data to form a response Multi-AZ RDS (Master-slave) Inter-region replication Read-replicas
  • Rule 2: Service requests as fast as possible Rule 1: Service all web requests Rule 3: Handle requests at any scale Rule 4: Simplify architecture with services Rule 5: Automate operational management Rule 6: Leverage unique cloud properties
  • Rule 2: Service requests as fast as possible
  • Rule 2: Service requests as fast as possible a) Choose the fastest route Region A Route53 Region B Request
  • Rule 2: Service requests as fast as possible a) Choose the fastest route Region A Route53 Region B 16ms 92ms Request
  • Rule 2: Service requests as fast as possible a) Choose the fastest route Region A Route53 Region B 16ms 92ms Request
  • Rule 2: Service requests as fast as possible Region A Route53 Region B 16ms Request Region A DNS entry a) Choose the fastest route
  • Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers London Paris NY Served from S3 /images/* 3 Served from EC2 *.php 2 Single CNAME www.mysite.com 1 CloudFront World-wide content distribution network Easily distribute content to end users with low latency, high data transfer speeds, and no commitments.
  • Without CloudFront EC2 webservers/app servers loaded by user requests Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers
  • With CloudFront Load of user requests pushed into CloudFront, EC2 cluster can scale down Offload Scale Down Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers
  • Rule 2: Service requests as fast as possible ResponseTime ServerLoad ResponseTime Server Load ResponseTime Server Load No CDN CDN for Static Content CDN for Static & Dynamic Content Offload Scale Down a) Choose the fastest route b) Offload your application servers
  • Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers c) Cache it if you can ElastiCache Memcached compatible caching layer Serve frequently requested & slow changing data from scalable cache clusters Reduce load on database and other servers
  • Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers c) Cache it if you can d) Single digit latencies where it matters Scale DatabaseQueryPerformance Desired consistency, predictability
  • Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers c) Cache it if you can d) Single digit latencies where it matters Scale DatabaseQueryPerformance Desired consistency, predictability Actual degraded performance with scale
  • Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers c) Cache it if you can d) Single digit latencies where it matters Scale DatabaseQueryPerformance Desired consistency, predictability Actual degraded performance with scale Management problems Data sharding Data caching Provisioning Cluster management Fault management
  • Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers c) Cache it if you can d) Single digit latencies where it matters Scale DatabaseQueryPerformance Dynamo DB Query Performance Relational Database Query Performance DynamoDB Low latency Large scale Zero admin Predictable performance
  • Rule 2: Service requests as fast as possible a) Choose the fastest route b) Offload your application servers c) Cache it if you can d) Single digit latencies where it matters Scale DatabaseQueryPerformance Dynamo DB Query Performance DynamoDB Low latency Large scale Zero admin Predictable performance Average single-digit milliseconds server side latencies Runs on solid state drives, and is built to maintain consistent, fast latencies at any scale
  • Rule 2: Service requests as fast as possible Rule 1: Service all web requests Rule 3: Handle requests at any scale Rule 4: Simplify architecture with services Rule 5: Automate operational management Rule 6: Leverage unique cloud properties
  • Rule 3: Handle requests at any scale a) Scale up Vertical Scaling From $0.02/hr Basic unit of compute capacity Range of CPU, memory & local disk options 14 Instance types available, from micro through cluster compute to SSD backed Scale up with Elastic Compute Cloud (EC2)
  • Rule 3: Handle requests at any scale a) Scale up b) Scale out Trigger auto-scaling policy as-create-auto-scaling-group MyGroup --launch-configuration MyConfig --availability-zones eu-west-1a --min-size 4 --max-size 200 Auto-scaling Automatic re-sizing of compute clusters based upon demand
  • Manually Send an API call or use CLI to launch/terminate instances – Only need to specify capacity change (+/-) By Schedule Scale up/down based on date and time a) Scale up b) Scale out By Policy Scale in response to changing conditions, based on user configured real-time monitoring and alerts Auto-Rebalance Instances are automatically launched/terminated to ensure the application is balanced across multiple Azs Rule 3: Handle requests at any scale
  • Manually Send an API call or use CLI to launch/terminate instances – Only need to specify capacity change (+/-) By Schedule Scale up/down based on date and timePreemptive manual scaling of capacity e.g. before a marketing event add 10 more instances Regular scaling up and down of instances e.g. scale from 0 to 2 to process SQS messages every night or double capacity on a Friday night a) Scale up b) Scale out By Policy Scale in response to changing conditions, based on user configured real-time monitoring and alerts Auto-Rebalance Instances are automatically launched/terminated to ensure the application is balanced across multiple Azs Rule 3: Handle requests at any scale Dynamic scale based upon custom metrics e.g. SQS queue depth, Average CPU load, ELB latency Maintain capacity across availability zones e.g. Instance availability maintained in event of AZ becoming unavailable
  • Rule 3: Handle requests at any scale a) Scale up b) Scale out c) Dial it up Elastic Block Store Provisioned IOPS up to 1000 per EBS volume Predictable performance for demanding workloads such as databases DynamoDB Provisioned read/write performance per table Predictable high performance scaled via console or API
  • “AWS gave us the flexibility to bring a massive amount of capacity online in a short period of time and allowed us to do so in an operationally straightforward way. AWS is now Shazam’s cloud provider of choice,” Jason Titus, CTO DynamoDB: over 500,000 writes per second Amazon EMR: more than 1 million writes per second
  • Rule 2: Service requests as fast as possible Rule 1: Service all web requests Rule 3: Handle requests at any scale Rule 4: Simplify architecture with services Rule 5: Automate operational management Rule 6: Leverage unique cloud properties
  • Your Business 70% On-Premise Infrastructure 30% Managing All of the “Undifferentiated Heavy Lifting” Rule 4: Simplify architecture with services
  • AWS Cloud-Based Infrastructure Your Business More Time to Focus on Your Business Configuring Your Cloud Assets 70% 30%70% On-Premise Infrastructure 30% Managing All of the “Undifferentiated Heavy Lifting” Rule 4: Simplify architecture with services
  • Relational Database Service Database-as-a-Service No need to install or manage database instances Scalable and fault tolerant configurations DynamoDB Provisioned throughput NoSQL database Fast, predictable performance Fully distributed, fault tolerant architecture Use RDS for databases Use DynamoDB for high performance key- value DB Rule 4: Simplify architecture with services
  • Amazon SQS Processing task/processing trigger Processing results Amazon SQS Reliable, highly scalable, queue service for storing messages as they travel between instances Task A Task B (Auto-scaling) Task C 2 3 1 Simple Workflow Reliably coordinate processing steps across applications Integrate AWS and non-AWS resources Manage distributed state in complex systems Push inter-process workflows into the cloud with SWF Reliable message queuing without additional software Rule 4: Simplify architecture with services
  • Cloud Search Elastic search engine based upon Amazon A9 search engine Fully managed service with sophisticated feature set Scales automatically Document Server Results Search Server Don’t install search software, use CloudSearch Process large volumes of data cost effectively with EMR Elastic MapReduce Elastic Hadoop cluster Integrates with S3 & DynamoDB Leverage Hive & Pig analytics scripts Integrates with instance types such as spot Rule 4: Simplify architecture with services
  • “Amazon CloudSearch is a game-changing product that has allowed us to deliver powerful new search capabilities. Our customers can now find what they are looking for faster and more easily than ever before… ….We saved many months of re-architecture and development time by going with Amazon CloudSearch” Don MacAskill CEO & Chief Geek SmugMug
  • Rule 2: Service requests as fast as possible Rule 1: Service all web requests Rule 3: Handle requests at any scale Rule 4: Simplify architecture with services Rule 5: Automate operational management Rule 6: Leverage unique cloud properties
  • Compute Storage Security Scaling Database Networking Monitoring Messaging Workflow DNS Load Balancing BackupCDN Rule 5: Automate operational management a) Everything is programmable Access everything via CLI, API or Console Achieve the highest levels of automation sophistication with ease
  • Rule 5: Automate operational management a) Everything is programmable b) Think disposable, one click deployments Cloud Formation Automate creation of ‘stacks’ in a repeatable way Scripting framework for AWS resource creation Feature Details Platform support Support for AWS resources from EC2 to IAM Resource creation Creates AWS resources behind the scenes and reports on progress Declarative Specify stacks in JSON format and source control your environments Customizable Drive stack creation with paramaters
  • Rule 5: Automate operational management a) Everything is programmable b) Think disposable, one click deployments c) Design for failure, implement self healing Customize instance startup Get instances to ask ‘who am I?’ question on startup and be configured dynamically upon being asnwered Maintain capacity of instances Using a minimum pool size will maintain capacity in the event of instance failures Know what’s going on, take automated actions Use CloudWatch standard and custom metrics to create alarms. Respond with automated administration actions Bootstrapping Auto-scaling Cloud Watch
  • Rule 5: Automate operational management a) Everything is programmable b) Think disposable, one click deployments c) Design for failure, implement self healing
  • Rule 2: Service requests as fast as possible Rule 1: Service all web requests Rule 3: Handle requests at any scale Rule 4: Simplify architecture with services Rule 5: Automate operational management Rule 6: Leverage unique cloud properties
  • Small 1.7 GB, 1 ECU 1 virtual core Large 7.5 GB 4 ECUs 2 virtual cores Extra Large 15 GB 8 ECUs 4 virtual cores Hi-Mem XL 17.1 GB 6.5 ECUs 2 virtual cores Hi-Mem 2XL 34.2 GB 13 ECUs 4 virtual cores Hi-Mem 4XL 68.4 GB 26 ECUs 8 virtual cores High-CPU Med 1.7 GB 5 ECUs 2 virtual cores High-CPU XL 7 GB 20 ECUs 8 virtual cores Micro 613 MB Up to 2 ECUs (for short bursts) Cluster GPU 4XL 22 GB 33.5 ECUs 8 Nehalem virtual cores 2 x NVIDIA Tesla “Fermi” M2050 GPUs Cluster Compute 4XL 23 GB 33.5 ECUs 8 Nehalem virtual cores Cluster Compute 8XL 60.5 GB 88 ECUs 8 core 2 x Intel Xeon Medium 3.75 GB 2 ECUs 1 virtual cores Rule 6: Leverage unique cloud properties a) Optimize costs with instance types
  • Unix/Linux instances start at $0.02/hour Pay as you go for compute power Low cost and flexibility Pay only for what you use, no up-front commitments or long-term contracts Use Cases: Applications with short term, spiky, or unpredictable workloads; Application development or testing On-demand instances 1- or 3-year terms Pay low up-front fee, receive significant hourly discount Low Cost / Predictability Helps ensure compute capacity is available when needed Use Cases: Applications with steady state or predictable usage Applications that require reserved capacity, including disaster recovery Reserved instances Bid on unused EC2 capacity Spot Price based on supply/demand, determined automatically Cost / Large Scale, dynamic workload handling Use Cases: Applications with flexible start and end times Applications only feasible at very low compute prices Spot instances Rule 6: Leverage unique cloud properties a) Optimize costs with instance types
  • 0 1000 2000 3000 4000 5000 6000 7000 Reserved Instances On Demand Spot Rule 6: Leverage unique cloud properties a) Optimize costs with instance types
  • a) Optimize costs with instance types b) Get insight fast with Elastic MapReduce Rule 6: Leverage unique cloud properties Elastic MapReduce Managed, elastic Hadoop cluster Integrates with S3 & DynamoDB Leverage Hive & Pig analytics scripts Integrates with instance types such as spot Feature Details Scalable Use as many or as few compute instances running Hadoop as you want. Modify the number of instances while your job flow is running Integrated with other services Works seamlessly with S3 as origin and output. Integrates with DynamoDB Comprehensive Supports languages such as Hive and Pig for defining analytics, and allows complex definitions in Cascading, Java, Ruby, Perl, Python, PHP, R, or C++ Cost effective Works with Spot instance types Monitoring Monitor job flows from with the management console
  • a) Optimize costs with instance types b) Get insight fast with Elastic MapReduce Elastic MapReduce Code Name node Output S3 + SimpleDB S3 + DynamoDB Elastic cluster HDFS Queries + BI Via JDBC, Pig, Hive Input data Rule 6: Leverage unique cloud properties
  • Features powered by Amazon Elastic MapReduce: People Who Viewed this Also Viewed Review highlights Auto complete as you type on search Search spelling suggestions Top searches Ads 200 Elastic MapReduce jobs per day Processing 3TB of data
  • “With AWS, our developers can now do things they couldn’t before… …Our systems team can focus their energies on other challenges.” Dave Marin Search and data-mining engineer
  • Cluster compute instances Implement HVM process execution Intel® Xeon® E5-2670 processors 10 Gigabit Ethernet Cluster Compute 80 EC2 Compute Units 60GB RAM 3TB Local Disk Network placement groups Cluster instances deployed in a ‘Placement Group’ enjoy low latency, full bisection 10 Gbps bandwidth 10Gbps Rule 6: Leverage unique cloud properties a) Optimize costs with instance types b) Get insight fast with Elastic MapReduce c) Create a supercomputer backend when you need it
  • Rule 2: Service requests as fast as possible Rule 1: Service all web requests Rule 3: Handle requests at any scale Rule 4: Simplify architecture with services Rule 5: Automate operational management Rule 6: Leverage unique cloud properties
  • aws.amazon.com get started with the free tier
  • Thank you 김일호 – Solutions Architect ilho@amazon.com