Cloud Computing Dave Elliman 1 G53ELC 28/06/2016 The datacenter is the computer! Source: NY Times (6/14/2006) Two Key Enterprise Technologies for the Cloud Message Oriented Middleware (MOM) Allows load sharing and loose coupling and is robust to server failure. Virtualization: The ability to run multiple operating systems on a single physical system and share the underlying hardware resources G53ELC A definition Cloud Computing: “The provisioning of services in a timely (near instant), on-demand manner, to allow the scaling up and down of resources” Requirements… IApplications are International and expect users from anywhere in the world Applications access huge (Petabyte) databases Applications expect to download content rapidly anywhere Applications need to scale with user load without degrading response Applications need to be available 24/7 365 days a year Applications need to be secure and well defended Companies wish to pay only for bandwidth and server time used What’s a Petabyte? 1024 Bytes = 1 Kilobyte 1024 Kilobytes = 1 Megabyte 1024 Megabyte = 1 GigaByte 1024 Gibabytes = 1 Terabyte 1024 Terabyte = 1 Petabyte Exercise for the student: Write down the number of bytes in a Petabyte as a number Petrabyte applications are not unusual nowadays Google believed to processes 30 PB a day eBay has 7 PB of user data Facebook has 36 PB of user data A million times cheaper since 1980 The communications growth rate is also amazing Why not just set up your own servers? Lot’s of reasons… Will give an example… Suppose you are Forbes.com You offer on-line real time stock market data Why pay for capacity weekends, overnight? 9 AM - 5 PM, M-F Rate of Server Accesses ALL OTHER TIMES Forbes' Solution Host the web site in Amazon's EC2 Elastic Compute Cloud Provision new servers every day, and deprovision them every night Pay just $0.10* per server per hour * more for higher capacity servers Let Amazon worry about the hardware, the scaling, the local (edge) delivery, the security, the availability, and the backup(?). Cloud computing takes virtualization to the next step You don’t have to own the hardware You “rent” it as needed from a cloud There A are public clouds e.g. Amazon EC2, and now many others (Microsoft Azure, IBM, Sun, and others ...) company can create a private cloud With more control over security, etc. Lower Cost No need to pay for infrastructure up front No need for expensive support staff only pay for what you use Great for start-ups – may even be free G53ELC More Agile It used to take 3 months to set up an application on a cluster of servers Takes half an hour in the cloud Scale up or down (elasticity) G53ELC OK It’s a good idea. How does it work? We already saw how to set up a RESTful web service on the Amazon cloud. It took five minutes. Very easy to serve static web pages in this way Quite simple to store and access data in the cloud as files or databases More tricky to set up large scalable applications, but this is where really big pay-offs are possible. How Cloud Computing Works Various providers let you create virtual servers You create virtual servers ("virtualization") Set up an account, perhaps just with a credit card Choose the OS and software each "instance" will have It will run on a large server farm located somewhere You can instantiate more on a few minutes' notice You can shut down instances in a minute or so They send you a bill for the processor time and comms bandwidth that you use G53ELC Virtualisation is the key technology We will look at how this is done in another lecture Worries? How do I pick a provider? Is my data secure? Do I have any control over where my data is moved to? How can I be sure the provider will live up to all those promises? G53ELC (footnote) How come Amazon? It arose out of efforts to manage Amazon’s own services (Each time you get a page from Amazon, over a hundred servers are involved) See reference Amazon Architecture on ELC web page They got so good at it that they launched Amazon Web Services (AWS) as a product G53ELC Cloud Computing Status Seems to be rapidly becoming a mainstream practice Numerous providers Amazon EC2 imitators ... Just about every major industry name • IBM, Sun, Microsoft, ... Major buzz at industry meetings G53ELC The revolution Rent it instead of build it – pay for what you use Rely on the experts to solve all those worries.. There is a major revolution underway in how we manage hardware Use many servers with virtualization Applications organized with MOM Data cached close to delivery point Deployment and monitoring are in-house functions Any comments/Questions