Jump to content

Cloud computing

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Lordfaust (talk | contribs) at 00:47, 28 February 2010 (Issues). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Cloud computing logical diagram

Cloud computing is a way of computing, via the Internet, that broadly shares computer resources instead of using software or storage on a local computer.

Cloud computing is an outgrowth of the ease-of-access to remote computing sites provided by the Internet.[1]

In concept, it is a paradigm shift whereby details are abstracted from the users who no longer have need of, expertise in, or control over the technology infrastructure "in the cloud" that supports them.[2] Cloud computing describes a new supplement, consumption and delivery model for IT services based on the Internet, and it typically involves the provision of dynamically scalable and often virtualized resources as a service over the Internet.[3][4]

The term cloud is used as a metaphor for the Internet, based on the cloud drawing used to depict the Internet in computer network diagrams as an abstraction of the underlying infrastructure it represents.[5] Typical cloud computing providers deliver common business applications online which are accessed from a web browser, while the software and data are stored on servers.

A technical definition is "a computing capability that provides an abstraction between the computing resource and its underlying technical architecture (e.g., servers, storage, networks), enabling convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction."[6] This definition states that clouds have five essential characteristics: on-demand self-service, broad network access, resource pooling, rapid elasticity, and measured service.[6]

The majority of cloud computing infrastructure, as of 2009, consists of reliable services delivered through data centers and built on servers. Clouds often appear as single points of access for all consumers' computing needs. Commercial offerings are generally expected to meet quality of service (QoS) requirements of customers and typically offer SLAs.[7]

Comparisons

Cloud computing can be confused with:

  1. Grid computing — "a form of distributed computing and parallel computing, whereby a 'super and virtual computer' is composed of a cluster of networked, loosely coupled computers acting in concert to perform very large tasks"
  2. Utility computing — the "packaging of computing resources, such as computation and storage, as a metered service similar to a traditional public utility, such as electricity";[8]
  3. Autonomic computing — "computer systems capable of self-management".[9]

Characteristics

In general, cloud computing customers do not own the physical infrastructure, instead avoiding capital expenditure by renting usage from a third-party provider. They consume resources as a service and pay only for resources that they use. Many cloud-computing offerings employ the utility computing model, which is analogous to how traditional utility services (such as electricity) are consumed, whereas others bill on a subscription basis. Sharing "perishable and intangible" computing power among multiple tenants can improve utilization rates, as servers are not unnecessarily left idle (which can reduce costs significantly while increasing the speed of application development). A side-effect of this approach is that overall computer usage rises dramatically, as customers do not have to engineer for peak load limits.[10] In addition, "increased high-speed bandwidth" makes it possible to receive the same response times from centralized infrastructure at other sites[11].

Economics

Cloud computing users can avoid capital expenditure (CapEx) on hardware, software, and services when they pay a provider only for what they use. Consumption is usually billed on a utility (resources consumed, like electricity) or subscription (time-based, like a newspaper) basis with little or no upfront cost. Other benefits of this time sharing-style approach are low barriers to entry, shared infrastructure and costs, low management overhead, and immediate access to a broad range of applications. In general, users can terminate the contract at any time (thereby avoiding return on investment risk and uncertainty), and the services are often covered by service level agreements (SLAs) with financial penalties.[12][13]

According to Nicholas Carr, the strategic importance of information technology is diminishing as it becomes standardized and less expensive. He argues that the cloud computing paradigm shift is similar to the displacement of electricity generators by electricity grids early in the 20th century.[14]

Although companies might be able to save on upfront capital expenditures, they might not save much and might actually pay more for operating expenses. In situations where the capital expense would be relatively small, or where the organization has more flexibility in their capital budget than their operating budget, the cloud model might not make great fiscal sense. Other factors impacting the scale of any potential cost savings include the efficiency of a company’s data center as compared to the cloud vendor’s, the company's existing operating costs, the level of adoption of cloud computing, and the type of functionality being hosted in the cloud.[15][16]

Architecture

Cloud computing sample architecture

Cloud architecture,[17] the systems architecture of the software systems involved in the delivery of cloud computing, typically involves multiple cloud components communicating with each other over application programming interfaces, usually web services.[18] This closely resembles the Unix philosophy of having multiple programs each doing one thing well and working together over universal interfaces. Complexity is controlled and the resulting systems are more manageable than their monolithic counterparts.

History

The underlying concept of cloud computing dates back to 1960, when John McCarthy opined that "computation may someday be organized as a public utility"; indeed it shares characteristics with service bureaus that date back to the 1960s. The actual term "cloud" borrows from telephony in that telecommunications companies, who until the 1990's primarily offered dedicated point-to-point data circuits, began offering Virtual Private Network (VPN) services with comparable quality of service but at a much lower cost. By switching traffic to balance utilization as they saw fit they were able to utilise their overall network bandwidth more effectively. The cloud symbol was used to denote the demarcation point between that which was the responsibility of the provider from that of the user. Cloud computing extends this boundary to cover servers as well as the network infrastructure.[19]

Amazon played a key role in the development of cloud computing by modernizing their data centers after the dot-com bubble, which, like most computer networks, were using as little as 10% of their capacity at any one time just to leave room for occasional spikes. Having found that the new cloud architecture resulted in significant internal efficiency improvements whereby small, fast-moving "two-pizza teams" could add new features faster and easier, Amazon started providing access to their systems through Amazon Web Services on a utility computing basis in 2005.[20] This characterization of the genesis of Amazon Web Services has been characterized as an extreme over-simplification by a technical contributor to the Amazon Web Services project.[21]

In 2007, Google, IBM, and a number of universities embarked on a large scale cloud computing research project.[22] By mid-2008, Gartner saw an opportunity for cloud computing "to shape the relationship among consumers of IT services, those who use IT services and those who sell them",[23] and observed that "[o]rganisations are switching from company-owned hardware and software assets to per-use service-based models" so that the "projected shift to cloud computing ... will result in dramatic growth in IT products in some areas and in significant reductions in other areas."[24]

Key features

  • Agility improves with users' ability to rapidly and inexpensively re-provision technological infrastructure resources.[25]
  • Cost is claimed to be greatly reduced and capital expenditure is converted to operational expenditure[26]. This ostensibly lowers barriers to entry, as infrastructure is typically provided by a third-party and does not need to be purchased for one-time or infrequent intensive computing tasks. Pricing on a utility computing basis is fine-grained with usage-based options and fewer IT skills are required for implementation (in-house).[27]
  • Device and location independence[28] enable users to access systems using a web browser regardless of their location or what device they are using (e.g., PC, mobile). As infrastructure is off-site (typically provided by a third-party) and accessed via the Internet, users can connect from anywhere.[27]
  • Multi-tenancy enables sharing of resources and costs across a large pool of users thus allowing for:
    • Centralization of infrastructure in locations with lower costs (such as real estate, electricity, etc.)
    • Peak-load capacity increases (users need not engineer for highest possible load-levels)
    • Utilization and efficiency improvements for systems that are often only 10–20% utilized.[20]
  • Reliability improves through the use of multiple redundant sites, which makes cloud computing suitable for business continuity and disaster recovery.[29] Nonetheless, many major cloud computing services have suffered outages, and IT and business managers can at times do little when they are affected.[30][31]
  • Scalability via dynamic ("on-demand") provisioning of resources on a fine-grained, self-service basis near real-time, without users having to engineer for peak loads. Performance is monitored, and consistent and loosely-coupled architectures are constructed using web services as the system interface.[27] One of the most important new methods for overcoming performance bottlenecks for a large class of applications is data parallel programming on a distributed data grid.[32]
  • Security could improve due to centralization of data[33], increased security-focused resources, etc., but concerns can persist about loss of control over certain sensitive data, and the lack of security for stored kernels[34]. Security is often as good as or better than under traditional systems, in part because providers are able to devote resources to solving security issues that many customers cannot afford.[35] Providers typically log accesses, but accessing the audit logs themselves can be difficult or impossible. Furthermore, the complexity of security is greatly increased when data is distributed over a wider area and / or number of devices.
  • Maintenance cloud computing applications are easier to maintain, since they don't have to be installed on each user's computer. They are easier to support and to improve since the changes reach the clients instantly.
  • Metering cloud computing resources usage should be measurable and should be metered per client and application on daily, weekly, monthly, and annual basis. This will enable clients on choosing the vendor cloud on cost and reliability (QoS).

Layers

Client

A cloud client consists of computer hardware and/or computer software that relies on cloud computing for application delivery, or that is specifically designed for delivery of cloud services and that, in either case, is essentially useless without it.[36]

Application

Cloud application services or "Software as a Service (SaaS)" deliver software as a service over the Internet, eliminating the need to install and run the application on the customer's own computers and simplifying maintenance and support. Key characteristics include:[37]

  • Network-based access to, and management of, commercially available (i.e., not custom) software
  • Activities that are managed from central locations rather than at each customer's site, enabling customers to access applications remotely via the Web
  • Application delivery that typically is closer to a one-to-many model (single instance, multi-tenant architecture) than to a one-to-one model, including architecture, pricing, partnering, and management characteristics
  • Centralized feature updating, which obviates the need for downloadable patches and upgrades.

Platform

Cloud platform services or "Platform as a Service (PaaS)" deliver a computing platform and/or solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications. It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers.[38][39]

Infrastructure

Cloud infrastructure services or "Infrastructure as a Service (IaaS)" delivers computer infrastructure, typically a platform virtualization environment, as a service. Rather than purchasing servers, software, data center space or network equipment, clients instead buy those resources as a fully outsourced service. The service is typically billed on a utility computing basis and amount of resources consumed (and therefore the cost) will typically reflect the level of activity. It is an evolution of web hosting and virtual private server offerings.[40]

Server

The servers layer consists of computer hardware and/or computer software products that are specifically designed for the delivery of cloud services.[36]

Deployment modes

Cloud computing types

Public cloud

Public cloud or external cloud describes cloud computing in the traditional mainstream sense, whereby resources are dynamically provisioned on a fine-grained, self-service basis over the Internet, via web applications/web services, from an off-site third-party provider who shares resources and bills on a fine-grained utility computing basis.[27]

Community cloud

A community cloud may be established where several organisations have similar requirements and seek to share infrastructure so as to realise some of the benefits of cloud computing. With the costs spread over fewer users than a public cloud (but more than a single tenant) this option is more expensive but may offer a higher level of privacy, security and/or policy compliance. Examples of community cloud include Google's "Gov Cloud".[41]

Hybrid cloud

A hybrid cloud environment consisting of multiple internal and/or external providers[42] "will be typical for most enterprises".[43] By integrating multiple cloud services users may be able to ease the transition to public cloud services while avoiding issues such as PCI compliance.[44]

Private cloud

Private cloud and internal cloud are neologisms that some vendors have recently used to describe offerings that emulate cloud computing on private networks. These (typically virtualisation automation) products claim to "deliver some benefits of cloud computing without the pitfalls", capitalising on data security, corporate governance, and reliability concerns. They have been criticized on the basis that users "still have to buy, build, and manage them" and as such do not benefit from lower up-front capital costs and less hands-on management[43], essentially "[lacking] the economic model that makes cloud computing such an intriguing concept".[45][46]

The term has also been used in the logical rather than physical sense, for example in reference to platform as a service offerings[47], though such offerings including Microsoft's Azure Services Platform are not available for on-premises deployment.[48]

Issues

Richard Stallman, founder of the Free Software Foundation and creator of the computer operating system GNU, said that cloud computing was simply a trap aimed at forcing more people to buy into locked, proprietary systems that would cost them more and more over time. "It's stupidity. It's worse than stupidity: it's a marketing hype campaign," he told The Guardian. "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." "The interesting thing about cloud computing is that we've redefined cloud computing to include everything that we already do," he said. "The computer industry is the only industry that is more fashion-driven than women's fashion. Maybe I'm an idiot, but I have no idea what anyone is talking about. What is it? It's complete gibberish. It's insane. When is this idiocy going to stop?"[49]

Privacy

The Cloud model has been criticized by privacy advocates for the greater ease in which the companies hosting the Cloud services control, and thus, can monitor at will, lawfully or unlawfully, the communication and data stored between the user and the host company. Instances such as the secret NSA program, working with AT&T, Verizon and BellSouth, which recorded over 10 million phone calls between American citizens, causes uncertainty among privacy advocates, and the greater powers it gives to telecommunication companies to monitor user activity.[50] While there have been efforts (such as US-EU Safe Harbor) to "harmonise" the legal environment, providers such as Amazon still cater to major markets (typically the United States and the European Union) by deploying local infrastructure and allowing customers to select "availability zones."[51]

Compliance

In order to obtain compliance with regulations including FISMA, HIPAA and SOX in the US, the Data Protection Directive in the EU and the credit card industry's PCI DSS, users may have to adopt community or hybrid deployment modes which are typically more expensive and may offer restricted benefits. This is how Google are able to "manage and meet additional government policy requirements beyond FISMA"[52][53] and Rackspace Cloud are able to claim PCI compliance.[54]

Many providers also obtain SAS 70 Type II certification (e.g. Amazon[55], Google[56] and Microsoft[57]), but this has been criticised on the grounds that the hand-picked set of goals and standards determined by the auditor and the auditee are often not disclosed and can vary widely.[58] Providers typically make this information available on request, under non-disclosure agreement.[59]

In March 2007, Dell applied to trademark the term "cloud computing" (U.S. Trademark 77,139,082) in the United States. The "Notice of Allowance" the company received in July 2008 was cancelled in August, resulting in a formal rejection of the trademark application less than a week later.

Open source

Open standards are critical to the growth of cloud computing, and open source software has provided the foundation for many cloud computing implementations.[60] In November 2007, the Free Software Foundation released the Affero General Public License, a version of GPLv3 intended to close a perceived legal loophole associated with free software designed to be run over a network.[61]

Open standards

Most cloud providers expose APIs which are typically well-documented (often under a Creative Commons license[62]) however also unique to their implementation and thus not interoperable. Some vendors have adopted others' APIs[63] and there are a number of open standards under development, including the OGF's Open Cloud Computing Interface.

Security

The relative security of cloud computing services is a contentious issue which may be delaying its adoption.[64] Some argue that customer data is more secure when managed internally, while others argue that cloud providers have a strong incentive to maintain trust and as such employ a higher level of security.[65]

Sustainability

Sustainability comes about through improved resource utilization, more efficient systems, and carbon neutrality.[66][67] Nonetheless, computers and associated infrastructure are major consumers of energy.[68]

Criticism of the term

Notable industry critics of the term include Oracle Corporation CEO Larry Ellison and Forrester Research VP Frank Gillett. Larry Ellison has stated that cloud computing has been defined as "everything that we currently do" and that it will have no effect except to "change the wording on some of our ads"[69][70]. Frank Gillett expresses similar criticism [71][72]. Oracle Corporation is now launching a cloud computing tour [73].

In opposition to Larry Ellison, Forrester Research Principal Analyst John Rymer dismisses his remarks by stating that Ellison's cloud "comments are complete nonsense and he knows it" [74].

References

  1. ^ "Cloud Computing: Clash of the clouds". The Economist. 2009-10-15. Retrieved 2009-11-03.
  2. ^ Distinguishing Cloud Computing from Utility Computing
  3. ^ Gartner Says Cloud Computing Will Be As Influential As E-business
  4. ^ Gruman, Galen (2008-04-07). "What cloud computing really means". InfoWorld. Retrieved 2009-06-02.
  5. ^ The Internet Cloud
  6. ^ a b Cloud Computing Definition, National Insitute of Standards and Technology, Version 15
  7. ^ Buyya, Rajkumar. "Market-Oriented Cloud Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities" (PDF). Department of Computer Science and Software Engineering, The University of Melbourne, Australia: 9. Retrieved 2008-07-31. {{cite journal}}: Cite journal requires |journal= (help); Unknown parameter |coauthors= ignored (|author= suggested) (help)
  8. ^ "It's probable that you've misunderstood 'Cloud Computing' until now". TechPluto.
  9. ^ What's In A Name? Utility vs. Cloud vs Grid
  10. ^ Cloud Computing: The Evolution of Software-as-a-Service
  11. ^ Needs Reference
  12. ^ Forrester's Advice to CFOs: Embrace Cloud Computing to Cut Costs
  13. ^ Five cloud computing questions
  14. ^ Nicholas Carr on 'The Big Switch' to cloud computing
  15. ^ 1 Midsize Organization Busts 5 Cloud Computing Myths
  16. ^ Cloud Computing Savings - Real or Imaginary?
  17. ^ Building GrepTheWeb in the Cloud, Part 1: Cloud Architectures
  18. ^ Cloud Maturity Is Accelerating: More Than Just Reaction To The Hype?
  19. ^ July, 1993 meeting report from the IP over ATM working group of the IETF
  20. ^ a b Jeff Bezos' Risky Bet.
  21. ^ Layer8.net
  22. ^ Google and I.B.M. Join in ‘Cloud Computing’ Research
  23. ^ Keep an eye on cloud computing, Amy Schurr, Network World, 2008-07-08, citing the Gartner report, “Cloud Computing Confusion Leads to Opportunity”. Retrieved 2009-09-11.
  24. ^ Gartner Says Worldwide IT Spending On Pace to Surpass $3.4 Trillion in 2008, Gartner, 2008-08-18. Retrieved 2009-09-11.
  25. ^ Infrastructure Agility: Cloud Computing as a Best Practice
  26. ^ Recession Is Good For Cloud Computing – Microsoft Agrees
  27. ^ a b c d Defining “Cloud Services” and “Cloud Computing”
  28. ^ The new geek chic: Data centers
  29. ^ Cloud Computing: Small Companies Take Flight
  30. ^ Google Apps Admins Jittery About Gmail, Hopeful About Future
  31. ^ New Resource, Born of a Cloud Feud
  32. ^ Scaling Storage and Analysis of Data Using Distributed Data Grids
  33. ^ Exari: Death By Laptop
  34. ^ Encrypted Storage and Key Management for the cloud
  35. ^ Cloud computing security forecast: Clear skies
  36. ^ a b Nimbus Cloud Guide
  37. ^ 2005 Software as a Service Taxonomy and Research Guide
  38. ^ Google angles for business users with 'platform as a service'
  39. ^ The Emerging Cloud Service Architecture
  40. ^ EMC buys Pi and forms a cloud computing group
  41. ^ Google's 'Gov Cloud' Wins $7.2 Million Los Angeles Contract
  42. ^ IBM Embraces Juniper For Its Smart 'Hybrid Cloud', Disses Cisco (IBM)
  43. ^ a b Private Clouds Take Shape
  44. ^ Forecast for 2010: The Rise of Hybrid Clouds
  45. ^ Just don't call them private clouds
  46. ^ There's No Such Thing As A Private Cloud
  47. ^ Google opens private cloud to coders
  48. ^ Microsoft Nixes Private Azure Clouds
  49. ^ [1]
  50. ^ NSA has massive database of Americans' phone calls
  51. ^ Feature Guide: Amazon EC2 Availability Zones
  52. ^ FISMA compliance for federal cloud computing on the horizon in 201
  53. ^ Google Apps and Government
  54. ^ Cloud Hosting is Secure for Take-off: Mosso Enables The Spreadsheet Store, an Online Merchant, to become PCI Compliant
  55. ^ AWS Completes SAS70 Type II Audit
  56. ^ SAS 70 Type II for Google Apps
  57. ^ Securing Microsoft’s Cloud Infrastructure
  58. ^ Amazon gets SAS 70 Type II audit stamp, but analysts not satisfied
  59. ^ Assessing Cloud Computing Agreements and Controls
  60. ^ Open source fuels growth of cloud computing, software-as-a-service
  61. ^ AGPL: Open Source Licensing in a Networked Age
  62. ^ Moves API Specification to Creative Commons
  63. ^ Eucalyptus Completes Amazon Web Services Specs with Latest Release
  64. ^ Are security issues delaying adoption of cloud computing?
  65. ^ Security of virtualization, cloud computing divides IT and security pros
  66. ^ Google to go carbon neutral by 2008
  67. ^ What is Cloud Computing?
  68. ^ off your computer
  69. ^ Larry Ellison - What The Hell Is Cloud Computing?
  70. ^ Oracle's Ellison nails cloud computing
  71. ^ Cloud Computing is Hyped and Overblown, Forrester's
  72. ^ Cloud Computing is Hyped and Overblown, Forrester's Frank Gillett.....Big Tech Companies Have "Cloud Envy"
  73. ^ Oracle launches worldwide cloud-computing tour
  74. ^ Oracle desperately seeking cloud cred