Presentation on theme: "Cloud Computing Oct. 2010 Guilin Wang. What is cloud computing? 10 obstacles and opportunities for cloud computing Outline."— Presentation transcript:
Cloud Computing Oct Guilin Wang
What is cloud computing? 10 obstacles and opportunities for cloud computing Outline
References: [MG09] Peter Mell and Tim Grance. Effectively and Securely Using the Cloud Computing Paradigm, July [Arm+09] Michael Armbrust et al. Above the Clouds: A Berkeley View of Cloud Computing. Feb
An explanation from wikipedia: “Cloud computing is Internet-based computing, whereby shared resources, software, and information are provided to computers and other devices on demand, like the electricity grid. ” Source: Wiki What is cloud computing?
Why is it called ‘cloud’ computing? - ‘Cloud’ is a metaphor for Internet - Once used in the past to represent the telephone network - We don’t care where messages go or come from exactly First cloud around TCP/IP abstraction Second cloud around WWW data abstraction The cloud computing abstracts infrastructure complexities of servers, applications, data, and heterogeneous platforms What is cloud computing?
Cloud computing is a new computing paradigm - It describes a new model for IT services, which provides dynamically scalable and virtualized resources over-the- Internet. The client–server computing paradigm - User's applications are distributed to service providers (servers) and service requesters (clients). The mainframe computing paradigm - Large organizations possess powerful computers to conduct critical applications, like census, consumer statistics and scientific computing. What is cloud computing?
In fact, cloud computing is realising the long-held dream of computing as utility. “Computing may someday be organized as a public utility” - John McCarthy, MIT Centennial in 1961 Powerful computational and storage capabilities available from utilities Cloud computing is also viewed as the 5th utility, after water, electricity, gas, and telephony. What is cloud computing?
IBM Cloud Computing What is cloud computing?
There are a number of definitions on cloud computing. Here, we recommend a working definition proposed by NIST: Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. What is cloud computing?
This above cloud model promotes availability and consists of 5 essential characteristics, 3 service models, and 4 deployment models [GM09]. What is cloud computing?
5 Essential Cloud Characteristics: On-demand self-service Measured service (pay-as-you-go) Broad network access Resource pooling –Location independence Rapid elasticity (Resources can be scaled up and down quickly) What is cloud computing?
Example on Elasticity Animoto: A private company that produces videos from user-selected photos, video clips and music. When Animoto made its service available via Facebook, it experienced a demand surge that resulted in growing from 50 servers to 3500 servers in three days. No one could have foreseen that resource needs would suddenly double every 12 hours for 3 days. By Nov. 2009, Animoto has 1 million registered users. This is an amazing success for a company just founded in August in 2006.
3 Service Models Software as a Service (SaaS): Cloud provider’s applications are available over a network. Platform as a Service (PaaS): Customer-created applications can be deployed to a cloud without the cost and complexity of buying and managing the underlying hardware and software and provisioning hosting capabilities Infrastructure as a Service (IaaS): Processing, storage, network capacity, and other fundamental computing resources can be rent over a network. What is cloud computing?
So, Cloud Computing refers to both the applications delivered as services over the Internet and the hardware and systems software in the data centres that provide those services. Different cloud computing offerings can be distinguished according to the level of abstraction presented to the programmer and the level of management of the resources. The following diagram shows the rough locations of popular cloud computing offerings in this spectrum. What is cloud computing?
4 Cloud Deployment Models Public cloud: Sold to the public, mega-scale infrastructure, made available in a pay-as-you-go manner to the public Private cloud: Enterprise owned or leased cloud Community cloud: Shared infrastructure for a specific community Hybrid cloud: Composition of two or more clouds What is cloud computing?
Galen Gruman & Eric Knorr, InfoWorld Executive Editor & Editor in Chief. “A way to increase capacity or add capabilities on the fly without investing in new infrastructure, training new personnel, or licensing new software.” “The idea of loosely coupled services running on an agile, scalable infrastructure should eventually make every enterprise a node in the cloud.” Source: Thoughts on cloud computing
Tim O’Reilly, CEO O’Reilly Media “I think it is one of the foundations of the next generation of computing” “The network of networks is the platform for all computing” “Everything we think of as a computer today is really just a device that connects to the big computer that we are all collectively building”. Source: Thoughts on cloud computing
Larry Ellison, Oracle’s CEO. “The interesting thing about Cloud Computing is that we’ve redefined Cloud Computing to include everything that we already do.... I don’t understand what we would do differently in the light of Cloud Computing other than change the wording of some of our ads. ” Source: the Wall Street Journal, September 26, Andy Isherwood, HP’s Vice President of European Software Sales. “ A lot of people are jumping on the [cloud] bandwagon, but I have not heard two people say the same thing about it. There are multiple definitions out there of “the cloud.” ” Source: ZDnet News, December 11, 2008 Thoughts on cloud computing
Richard Stallman, known for his advocacy of “free software”. “It’s stupidity. It’s worse than stupidity: it’s a marketing hype campaign. Somebody is saying this is inevitable — and whenever you hear somebody saying that, it’s very likely to be a set of businesses campaigning to make it true.” Source: The Guardian, September 29, 2008 Thoughts on cloud computing
James T. Yeh, director of IBM China Research Laboratory. “… So it has been difficult to put a boundary of what is in Cloud Computing, and what is not. I assert that it is equally difficult to find a group of people who would agree on even the definition of Cloud Computing. In actuality, may be all that arguments are not necessary, as Clouds have many shapes and colors.... It will be a very rich territory for both the businesses to take the advantage of the benefits of Cloud Computing and the academia to integrate the technology research and business research.” Source: Keynote speak at CloudCom Source: Thoughts on cloud computing
According to Armbrust et al.’s research [Arm+09], there are top 10 obstacles to the growth of Cloud Computing. Corresponding to each obstacle, there is one associated opportunity, which shows how to overcome the obstacle, ranging from straightforward product development to major research projects. These top ten obstacles and opportunities: 3 Technical obstacles to the adoption of Cloud Computing 5 Technical obstacles to the growth of Cloud Computing 2 Policy and business obstacles to the adoption of Cloud Computing Source: 10 Obstacles and Opportunities
7th Obstacle: Bugs in Large-Scale Distributed Systems One of the difficult challenges in Cloud Computing is removing errors in these very large scale distributed systems. One opportunity may be the reliance on virtual machines in Cloud Computing, though many traditional SaaS providers developed their infrastructure without using VMs. Since VMs are de rigueur in Utility Computing, that level of virtualization may make it possible to capture valuable information in ways that are implausible without VMs.
10 Obstacles and Opportunities 10th Obstacle: Software Licensing Current software licensing model: commonly restricting the computers on which the software can run. Hence, users need to pay for the software and an annual maintenance fee. This licensing model is not a good match to Utility Computing. Many CC providers originally relied on open source software partially due to this reason. The opportunity is either continuously using open source and/or changing commercial software licensing structure to fit CC better.
10th Obstacle: Software Licensing For example, Microsoft and Amazon now offer pay-as-you- go software licensing for Windows Server and Windows SQL Server on EC2. An EC2 instance running Microsoft Windows costs $0.15 per hour instead of the traditional $0.10 per hour of the open source version. A related obstacle is encouraging sales forces of software companies to sell products into Cloud Computing. Pay-as- you-go seems incompatible with their quarterly sales target. 10 Obstacles and Opportunities
What is cloud computing? A working definition proposed by NIST5 It has 5 essential characteristics, 3 service models, and 4 deployment models 10 obstacles and opportunities for cloud computing Summary