Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cloud Computing ECE7650. Cloud Computing Case Study  At one extreme, sharing basic IT infrastructure  E.g Amazon’s EC2: an EC2 instance appears physical.

Similar presentations


Presentation on theme: "Cloud Computing ECE7650. Cloud Computing Case Study  At one extreme, sharing basic IT infrastructure  E.g Amazon’s EC2: an EC2 instance appears physical."— Presentation transcript:

1 Cloud Computing ECE7650

2 Cloud Computing Case Study  At one extreme, sharing basic IT infrastructure  E.g Amazon’s EC2: an EC2 instance appears physical HW, users can control nearly the entire sw stack, from the kernel upwards  At the other extreme, sharing application domain- specific platforms  E.g. Google AppEngine, a platform for building and hosting web applications on Google Web servers. Limited range of applications are supported,  In the middle, sharing programming environments  Microsoft’s Azure written using.NET libraries, and compiled to the Common Langurage Runtime (CLR). Cloud Computing2

3 Amazon Web Services  AWS is a collection of remote computing services that together make up a cloud computing platform, offered over the Internet by Amazon.com.  List of AWS products  Amazon Elastic Compute Cloud (EC2) provides scalable virtual private servers using Xen.  Amazon Simple Storage Service (S3) provides Web Service based storage.  Amazon SimpleDB allows developers to run queries on structured data. It provide "the core functionality of a database."  Amazon Elastic MapReduce allows developers to easily and cheaply process vast amounts of data. It uses a hosted Hadoop framework running on the web-scale infrastructure of EC2 and Amazon S3.  Amazon Virtual Private Cloud (VPC) creates a logically isolated set of Amazon EC2 instances which can be connected to an existing network using a VPN connection.  And More… Cloud Computing3

4 Amazon’s EC2  Amazon Elastic Compute Cloud (EC2)  Web service that provides resizable compute capacity in the cloud  An EC2 instance appears physical HW, provides users complete control over nearly entire sw stack, from the kernel upwards  Load Variety of operating system  Install Custom applications  Manage network access permission  Run image using as many/few systems as you desire C. Xu @ Wayne StateCloud Computing4

5 Amazon’s EC2 features  Elastic capacity  Elastic resource config/reconfig; Elastic num of instances  Completely Control  Root access/access to console output/data store/ reboot  Reliable  Multiple locations  Elastic IP addresses  Secure  Firewall config  Virtual Private Cloud  Performance  Auto Scaling  Auto local balancing Cloud Computing5

6 Amazon’s EC2 Instances  On-Demand Instances  Pay for capacity without long-term commitment  Reserved Instances  Standard Instances  Micro Instances  High-Memory Instances  High-CPU Instances  High-I/O instance  High Storage Instances  Spot Instances  Bit on unused Amazon EC2 capacity, run those instances for as long as their bid exceeds the current Spot Prices C. Xu @ Wayne StateCloud Computing6

7 Amazon’s EC2 Usages  Create an Amazon Machine Image (AMI) containing your applications, libraries, data and associated configuration settings. Or use pre-configured, templated images to get up and running immediately.  Choose the types of instances and OS, then start, terminate, and monitor as many instances of your AMI as needed, using the web service APIs or the variety of management tools provided.  Determine whether you want to run in multiple locations, utilize static IP endpoints, or attach persistent block storage to your instances.  Pay only for the resources that you actually consume, like instance-hours or data transfer.  http://www.youtube.com/watch?v=JPFoDnjR8e8 http://www.youtube.com/watch?v=JPFoDnjR8e8 Cloud Computing7

8 Amazon’s S3  Amazon Simple Storage Service (S3)  Storage for the Internet.  Features  Unlimited Storage  Highly scalable in terms of storage, request rate and concurrent users  Reliable Store redundant data in multiple facilities and on multiple devices  Secure Flexibility to control who/how/when/where to access the data  Performance Choose region to optimize for latency/minimize costs  Work with other AWS products  EC2/Elastic MR/Amazon Import/Export… C. Xu @ Wayne StateCloud Computing8

9 Example : online photo processing service  Photo operation  red eye reduction/cropping/customization/re-coloring/teeth whitening, etc  Procedure  Web server receive request  Put request message in the queue  Pictures stored in S3  Multiple EC2 instances run photo processing  Put back in the queue  Return Cloud Computing9

10 Google’s AppEngine  A platform for building and hosting web applications on Google data servers.  support Python/Java  Upload and ready to run  No need to maintain your own servers, easy to scale as your traffic and storage grow  Kevin Gibbs, App Engine Tech Lead “AppEngine is a system that exposes various pieces of Google’s scalable infrastructure so that you can write server-side applications on top” Cloud Computing10

11 AppEngine Does One Thing Well  AppEngine handles HTTP(S) requests, nothing else  Think RPC: request in, processing, response out  Dynamic web serving, with full support for common web technologies  App configuration is dead simple  No performance tuning needed  Everything is built to scale  “infinite” number of apps, requests/sec, storage capacity  Automatic scaling  Automatic management  Load balancing/monitoring/scaling  Local development Environment: simulation  Google AppEngine Software Development Kit Cloud Computing11

12 AppEngine Service  URLFetch fetch web resources/services  Images  manipulate images: resize, rotate, flip, crop  Google Accounts  Allow users to sign in their product by using G account  Mail  Send message using Google infrastructure.  XMPP  send instant messages  Datastore  managing data objects  Memcache  Distributed in-memory data cache in front of constant storage Cloud Computing12

13 App Enginer Sandbox  Appl run in a secure environment that provides limited access to the underlying OS.  Allow AppEngine to distribute web requests for the application across multiple servers; Start and stop servers to meet traffic demands  Isolates your appl in its own secure, reliable environment that is independent of the hw, OS, and physical location of the web server Cloud Computing13

14 App Enginer Sandbox  Limited Access:  Appl can only access other computers on the Internet through provided URL fetch and email API  Cannot write to file system, can read file uploaded by the appl; The app must use the App Engine datastore for all data that persists between requests  Run in response to a web request, and must return response data within 30 seconds. A request handler cannot spawn a sub-process or execute code afte the response has been sent. Cloud Computing14

15 App Engine Architecture (python) Cloud Computing15 Python VM process stdlib app memcache datastore mail images urlfech stateful APIs stateless APIs req/resp

16 App Engine Architecture Cloud Computing16

17 Why Not LAMP?  Linux, Apache, MySQL/PostgreSQL, Python/Perl/PHP/Ruby  LAMP is the industry standard  But management is a hassle:  Configuration, tuning  Backup and recovery, disk space management  Hardware failures, system crashes  Software updates, security patches  Log rotation, cron jobs, and much more More Important… Cloud Computing17

18 Automatic Scaling  Low-usage apps: many apps per physical host  High-usage apps: multiple physical hosts per app  Stateless APIs are trivial to replicate  Datastore built on top of Bigtable; designed to scale well  Abstraction on top of Bigtable Cloud Computing18

19 Automatic Scaling  You don’t need to configure your resource needs  One CPU can handle many requests per second  Apps are hashed onto CPUs:  One process per app, many apps per CPU  Creating a new process is a matter of cloning a generic “model” process and then loading the application code (in fact the clones are pre-created and sit in a queue)  The process hangs around to handle more requests (reuse)  Eventually old processes are killed (recycle)  Busy apps (many QPS query per sec) get assigned to multiple CPUs  This automatically adapts to the need as long as CPUs are available Cloud Computing19

20 AppEngine’s Resource Limit QuotaLimit Apps per developer10 Time per request30 sec Files per app1,000 HTTP response size10 MB Datastore item size1 MB Appl code size150 MB Cloud Computing20 QuotaFree Quota Emails per day2,000 BW in per day10,000 MB BW out per day10,000 MB Secure BW in per day2,000 MB Secure BW out per day2,000 MB CPU megacycles per day200,000,000 HTTP Requests per Day1,333,328* Datastore API calls per day10,368,000* Data stored1 GB URLFetch API calls per day657,084*

21 AppEngine Development Demo  http://www.youtube.com/watch?v=tcbpTQ XNwac http://www.youtube.com/watch?v=tcbpTQ XNwac Cloud Computing21

22 Microsoft’s Azure  Cloud service platform hosted in MS data centers, including an OS, Windows Azure, and a set of developer services like.NET services, Live services, and SQL data services  Window Azure: serving as the development, service hosting, data storage and service management environment Cloud Computing22

23 Components of Azure Compute , Storage , Fabric Controller , Content Delivery Network (CDN) , Connect Cloud Computing23

24 Compute Cloud Computing24  Web role: web-based application  Worker role: various windows-based code  VM role: Windows Server image, customized software installations on OS will be kept.

25 Compute  Submit an application with configuration of type and number of instances  Fabric controller creates VM and runs the code  Requests through HTTP/HTTPS/TCP are load balanced across all instances without affinity.  Exposed API that allows  automatically scale up and down.  application logging  Monitoring resource usage: CPU/storage Cloud Computing25

26 Storage: Blob, Table and Queue Cloud Computing26  Blob  Simple unstructured hierarchy: each container holds one or more blobs, which is up to terabyte  Access from URI: http://.queue.core.windows.net/  Basic storage

27 Storage: Blob, Table and Queue  Tables  Structured storage.  Stored in a group of entities that contain properties.  Entity with different num of properties in various types.  Not relational tables, support massively scalable applications. Cloud Computing27

28 Storage: Blob, Table and Queue  Queues  Provide a way for communication between instances Cloud Computing28 Three replications for all kinds

29 Fabric Controller Cloud Computing29  All Azure application and data reside in Microsoft data center  All Azure components are managed by the fabric controller.

30 Fabric Controller  Distributed application that’s replicated across machines.  It owns all of the resources: computer, switches, load balancers and is aware of each azure application  Autonomic management  Monitoring the system status  Optimizing hardware utilization  Create VMs and intelligent deployment  Update instances without shutdown  Managing the OS for Web and Work roles Cloud Computing30

31 Content Delivery Network  The CDN stores copies of a blob at sites closer to the clients that use it  Servers store videos, Flash, HTML5… Cloud Computing31

32 Connect  Effectively connecting on-premises environments with Windows Azure  Installing a Endpoint Agent on each on-premises machines and communication through IP-level connection  Azure applications appears to be on the same IP network as the on-premises machines. Cloud Computing32

33 Case Study 1  Large scale web applications with occasional huge spikes and background processing.  Video sharing site  Deployment  A number of web instances based on demand  Table storage for information  Many works for processing  Blobs storage for large data set Cloud Computing33

34 Case Study 2  Parallel processing applications  Financial modeling at a bank  New drug testing simulations in a pharmaceutical company  Deployment  Web role for access interface  Many workers for processing  Large data set stored in blobs Cloud Computing34

35 Case Study 3  Using storage from an on-premises or hosted application  Archive old email  User log file  Deployment  Connect on-premises application with Azure Cloud Computing35

36 Case Study Cloud Computing36


Download ppt "Cloud Computing ECE7650. Cloud Computing Case Study  At one extreme, sharing basic IT infrastructure  E.g Amazon’s EC2: an EC2 instance appears physical."

Similar presentations


Ads by Google