Jump to content

Cloud computing

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 75.38.30.240 (talk) at 10:05, 4 May 2009 (External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Cloud computing overview

Cloud computing is a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet.[1][2][3][4][failed verification] Users need not have knowledge of, expertise in, or control over the technology infrastructure "in the cloud" that supports them.[5]

The concept incorporates infrastructure as a service (IaaS), platform as a service (PaaS) and software as a service (SaaS) as well as other recent (ca. 2007–2009)[6][7] technology trends that have the common theme of reliance on the Internet for satisfying the computing needs of the users. Cloud computing services usually provide common business applications online that are accessed from a web browser, while the software and data are stored on the servers.

The term cloud is used as a metaphor for the Internet, based on how the Internet is depicted in computer network diagrams, and is an abstraction for the complex infrastructure it conceals.[8]

Brief

Comparisons

Cloud computing is often confused with grid computing ("a form of distributed 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"), 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")[9] and autonomic computing ("computer systems capable of self-management").[10]

Indeed many cloud computing deployments as of 2009 depend on grids, have autonomic characteristics and bill like utilities — but cloud computing can be seen as a natural next step from the grid-utility model.[11] Some successful cloud architectures have little or no centralised infrastructure or billing systems whatsoever, including peer-to-peer networks like BitTorrent and Skype and volunteer computing like SETI@home.[12][13]

Architecture

The majority of cloud computing infrastructure, as of 2009, consists of reliable services delivered through data centers and built on servers with different levels of virtualization technologies. The services are accessible anywhere that has access to networking infrastructure. The Cloud appears as a single point of access for all the computing needs of consumers. Commercial offerings need to meet the quality of service requirements of customers and typically offer service level agreements.[14] Open standards are critical to the growth of cloud computing and open source software has provided the foundation for many cloud computing implementations.[15]

Characteristics

The customers engaging in cloud computing do not own the physical infrastructure serving as host to the software platform in question. Instead, they avoid capital expenditure by renting usage from a third-party provider. They consume resources as a service, paying instead for only the resources they use. Many cloud-computing offerings have adopted the utility computing model, which is analogous to how traditional utilities like electricity are consumed, while others are billed on a subscription basis. Sharing "perishable and intangible" computing power among multiple tenants can improve utilization rates, as servers are not left idle, which can reduce costs significantly while increasing the speed of application development. A side effect of this approach is that "computer capacity rises dramatically" as customers do not have to engineer for peak loads.[16] Adoption has been enabled by "increased high-speed bandwidth" which makes it possible to receive the same response times from centralized infrastructure at other sites.

Economics

Diagram showing economics of cloud computing versus traditional IT, including capital expenditure (CapEx) and operational expenditure (OpEx)

Cloud computing users can avoid capital expenditure (CapEx) on hardware, software and services, rather paying a provider only for what they use. Consumption is billed on a utility (e.g. resources consumed, like electricity) or subscription (e.g. 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. Users can generally terminate the contract at any time (thereby avoiding return on investment risk and uncertainty) and the services are often covered by service level agreements with financial penalties.[17][18]

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

Companies

IBM, Amazon, Google, Microsoft or Yahoo are some of the major cloud computing service providers. It is being adopted by individual users through large enterprises including General Electric and Procter & Gamble[20][21].

History

The Cloud is a term that borrows from telephony. Up until the '90s data circuits (including those that carried Internet traffic) were hard-wired between destinations. In the '90s long haul telephone companies began offering Virtual Private Network service for data communications. The telephone companies were able to offer these VPN based services with the same guaranteed bandwidth as fixed circuits at a lower cost because they maintained the ability to switch traffic to balance utilization as they saw fit, thus utilizing their overall network bandwidth more effectively. As a result of this arrangement it was thus impossible to determine in advance precisely what the path was going to be. The term "telecom cloud" was used to describe this type of networking. Cloud Computing is very similar. Cloud computing relies heavily on virtual machines (VMs) that are spawned on demand to meet the user's needs. Because these virtual instances are spawned on demand, it is impossible to determine how many such VMs are going to be running at any given time. As these VMs can be spawned on any given computer as conditions demand, they are location in-specific as well, much like a cloud network. A common depiction in network diagrams is a cloud outline.[8]

The underlying concept 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 which date back to the 1960s. The term cloud had already come into commercial use in the early 1990s to refer to large ATM networks.[22] By the turn of the 21st century, the term "cloud computing" had started to appear,[23] although most of the focus at this time was on Software as a service (SaaS).

In 1999, Salesforce.com was established by Marc Benioff, Parker Harris, and his fellows. They applied many technologies of consumer web sites like Google and Yahoo! to business applications. They also provided the concept of "On demand" and "SaaS" (Software as a Service) with their real business and successful customers. The key for SaaS is being customizable by customer alone or with a small amount of help. Flexibility and speed for application development have been drastically welcomed and accepted by business users.

IBM extended these concepts in 2001, as detailed in the Autonomic Computing Manifesto -- which described advanced automation techniques such as self-monitoring, self-healing, self-configuring, and self-optimizing in the management of complex IT systems with heterogeneous storage, servers, applications, networks, security mechanisms, and other system elements that can be virtualized across an enterprise.

Amazon.com played a key role in the development of cloud computing by modernizing their data centres after the dot-com bubble and, having found that the new cloud architecture resulted in significant internal efficiency improvements, providing access to their systems by way of Amazon Web Services in 2005 on a utility computing basis.[24]

2007 saw increased activity, with Google, IBM, and a number of universities embarking on a large scale cloud computing research project,[25] around the time the term started gaining popularity in the mainstream press. It was a hot topic by mid-2008 and numerous cloud computing events had been scheduled.[26]

In August 2008, Gartner Research observed that "organizations are switching from company-owned hardware and software assets to per-use service-based models" and 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."[27]

Vendor lock-in concerns

Cloud computing has been criticized for limiting the freedom of users and making them dependent on the cloud computing provider. It is indeed only possible to use applications or services that the provider is willing to offer. Thus The Times compares cloud computing to old mainframes of the 1950s and 60s, to which users connected via "dumb" terminals. Users had no freedom to install new applications and needed approval from the administrator to achieve certain tasks. Overall, it limited both freedom and creativity. The Times argues that cloud computing is a regression to that time.[28]

Similarly, Richard Stallman, founder of the Free Software Foundation, believes that cloud computing endangers liberties because users sacrifice their privacy and personal data to a third party. He stated 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."[29]

Political issues

The Cloud spans many borders and "may be the ultimate form of globalization."[30] As such it becomes subject to complex geopolitical issues: providers must satisfy myriad regulatory environments in order to deliver service to a global market. This dates back to the early days of the Internet, where libertarian thinkers felt that "cyberspace was a distinct place calling for laws and legal institutions of its own"; author Neal Stephenson envisaged this as a tiny island data haven called Kinakuta in his classic science-fiction novel Cryptonomicon.[30]

Despite efforts (such as US-EU Safe Harbor) to harmonise the legal environment, as of 2009 providers such as Amazon Web Services cater to the major markets (typically the United States and the European Union) by deploying local infrastructure and allowing customers to select "availability zones."[31] Nonetheless, there are still concerns about security and privacy from individual through governmental level, e.g., the USA PATRIOT Act and use of national security letters and the Electronic Communications Privacy Act's Stored Communications Act.

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" it received in July 2008 was canceled on August 6, resulting in a formal rejection of the trademark application less than a week later.

On September 30, 2008, USPTO issued a "Notice of Allowance" to CGactive LLC (U.S. Trademark 77,355,287) for "CloudOS". A cloud operating system is a generic operating system that "manage[s] the relationship between software inside the computer and on the Web", such as Microsoft Azure[32]. Good OS LLC also announced their "Cloud" operating system on December 1st, 2008[33].

In November 2007, the Free Software Foundation released the Affero General Public License, a version of GPLv3 designed to close a perceived legal loophole associated with Free software designed to be run over a network, particularly software as a service. An application service provider is required to release any changes they make to Affero GPL open source code.[citation needed]

Risk mitigation

Corporations or end-users wishing to avoid not being able to access their data — or even losing it — should research vendors' policies on data security before using vendor services. One technology analyst and consulting firm, Gartner, lists seven security issues which one should discuss with a cloud-computing vendor:

  1. Privileged user access—inquire about who has specialized access to data and about the hiring and management of such administrators
  2. Regulatory compliance—make sure a vendor is willing to undergo external audits and/or security certifications
  3. Data location—ask if a provider allows for any control over the location of data
  4. Data segregation—make sure that encryption is available at all stages and that these "encryption schemes were designed and tested by experienced professionals"
  5. Recovery—find out what will happen to data in the case of a disaster; do they offer complete restoration and, if so, how long that would take
  6. Investigative Support—inquire whether a vendor has the ability to investigate any inappropriate or illegal activity
  7. Long-term viability—ask what will happen to data if the company goes out of business; how will data be returned and in what format[34]

In practice, one can best determine data-recovery capabilities by experiment: asking to get back old data, seeing how long it takes, and verifying that the checksums match the original data. Determining data security is harder. A tactic not covered by Gartner is to encrypt the data yourself. If you encrypt the data using a trusted algorithm, then regardless of the service provider's security and encryption policies, the data will only be accessible with the decryption keys. This leads to a follow-on problem: managing private keys in a pay-on-demand computing infrastructure.

Key characteristics

  • Agility improves with users able to rapidly and inexpensively re-provision technological infrastructure resources.[35].
  • Cost is greatly reduced and capital expenditure is converted to operational expenditure[36]. This 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 minimal or no IT skills are required for implementation.[37]
  • Device and location independence[38] 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 the users can connect from anywhere.[37]
  • Multi-tenancy enables sharing of resources and costs among a large pool of users, allowing for:
    • Centralization of infrastructure in areas with lower costs (such as real estate, electricity, etc.)
    • Peak-load capacity increases (users need not engineer for highest possible load-levels)
    • Utilisation and efficiency improvements for systems that are often only 10-20% utilised.[24]
  • Reliability improves through the use of multiple redundant sites, which makes it suitable for business continuity and disaster recovery.[39] Nonetheless, most major cloud computing services have suffered outages and IT and business managers are able to do little when they are affected.[40][41]
  • 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.[37]
  • Security typically improves due to centralization of data,[42] increased security-focused resources, etc., but raises concerns about loss of control over certain sensitive data. Security is often as good as or better than traditional systems, in part because providers are able to devote resources to solving security issues that many customers cannot afford[43]. Providers typically log accesses, but accessing the audit logs themselves can be difficult or impossible.
  • Sustainability comes about through improved resource utilisation, more efficient systems, and carbon neutrality.[44][45] Nonetheless, computers and associated infrastructure are major consumers of energy.[46]

Components

Six layers components of cloud computing

Application

A cloud application leverages the Cloud in software architecture, often eliminating the need to install and run the application on the customer's own computer, thus alleviating the burden of software maintenance, ongoing operation, and support. For example:

Client

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

Infrastructure

Cloud infrastructure, such as Infrastructure as a service, is the delivery of computer infrastructure, typically a platform virtualization environment, as a service.[55] For example:

Platform

A cloud platform, such as Platform as a service, the delivery of a computing platform, and/or solution stack as a service, facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers.[56] For example:

Service

A cloud service includes "products, services and solutions that are delivered and consumed in real-time over the Internet"[37]. For example, Web Services ("software system[s] designed to support interoperable machine-to-machine interaction over a network")[57] which may be accessed by other cloud computing components, software, e.g., Software plus services, or end users directly.[58] Specific examples include:

Storage

Cloud storage involves the delivery of data storage as a service, including database-like services, often billed on a utility computing basis, e.g., per gigabyte per month.[59] For example:

Architecture

Cloud computing sample architecture

Cloud architecture,[60] the systems architecture of the software systems involved in the delivery of cloud computing, comprises hardware and software designed by a cloud architect who typically works for a cloud integrator. It typically involves multiple cloud components communicating with each other over application programming interfaces, usually web services.[61]

This closely resembles the Unix philosophy of having multiple programs doing one thing well and working together over universal interfaces. Complexity is controlled and the resulting systems are more manageable than their monolithic counterparts.

Cloud architecture extends to the client, where web browsers and/or software applications access cloud applications.

Cloud storage architecture is loosely coupled, where metadata operations are centralized enabling the data nodes to scale into the hundreds, each independently delivering data to applications or users.

Types

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.[62]

Hybrid cloud

A hybrid cloud environment consisting of multiple internal and/or external providers[63] "will be typical for most enterprises".[64]

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 criticised 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[64], essentially "[lacking] the economic model that makes cloud computing such an intriguing concept".[65][66]

While an analyst predicted in 2008 that private cloud networks would be the future of corporate IT,[67] there is some uncertainty whether they are a reality even within the same firm.[68] Analysts also claim that within five years a "huge percentage" of small and medium enterprises will get most of their computing resources from external cloud computing providers as they "will not have economies of scale to make it worth staying in the IT business" or be able to afford private clouds.[69]. Analysts have reported on Platform's view that private clouds are a stepping stone to external clouds, particularly for the financial services, and that future datacenters will look like internal clouds. [70]

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

Roles

Provider

A cloud computing provider or cloud computing service provider owns and operates live cloud computing systems to deliver service to third parties. Usually this requires significant resources and expertise in building and managing next-generation data centers. Some organisations realise a subset of the benefits of cloud computing by becoming "internal" cloud providers and servicing themselves, although they do not benefit from the same economies of scale and still have to engineer for peak loads. The barrier to entry is also significantly higher with capital expenditure required and billing and management creates some overhead. Nonetheless, significant operational efficiency and agility advantages can be realised, even by small organisations, and server consolidation and virtualization rollouts are already well underway.[73] Amazon.com was the first such provider, modernising its data centers which, like most computer networks, were using as little as 10% of its capacity at any one time just to leave room for occasional spikes. This allowed small, fast-moving groups to add new features faster and easier, and they went on to open it up to outsiders as Amazon Web Services in 2002 on a utility computing basis.[24]

The companies listed in the Components section are providers.

User

A user is a consumer of cloud computing.[47] The privacy of users in cloud computing has become of increasing concern.[74][75] The rights of users is also an issue, which is being addressed via a community effort to create a bill of rights.[76][77][78]

Vendor

Some vendors sells or gives products and services that facilitate the delivery, adoption and use of cloud computing.[79] For example:

Standards

Cloud standards, a number of existing, typically lightweight, open standards, have facilitated the growth of cloud computing, including:[82]

See also

References

  1. ^ Gruman, Galen (2008-04-07). "What cloud computing really means". InfoWorld. Retrieved 2009-01-13.
  2. ^ A Breaks in the Clouds: towards a Cloud Definition|date=2009-01
  3. ^ Gartner Says Cloud Computing Will Be As Influential As E-business
  4. ^ What's the difference Between Cloud Computing and SaaS?
  5. ^ Distinguishing Cloud Computing from Utility Computing
  6. ^ Williams, John M. (2008-12-31). "Who Coined the Phrase Cloud Computing?". Retrieved 2009-03-03. {{cite web}}: External link in |coauthors= (help); Unknown parameter |coauthors= ignored (|author= suggested) (help)
  7. ^ Anita Campbell (2008-08-31). "Cloud Computing - Get Used to the Term". The App Gap. Retrieved 2009-03-03. {{cite web}}: |author= has generic name (help); External link in |author= (help)
  8. ^ a b The Internet Cloud
  9. ^ "It's probable that you've misunderstood 'Cloud Computing' until now". TechPluto.
  10. ^ What's In A Name? Utility vs. Cloud vs Grid
  11. ^ I.B.M. to Push ‘Cloud Computing,’ Using Data From Afar
  12. ^ Overheard: What the heck is computing in a cloud?
  13. ^ ACM Ubiquity: Emergence of The Academic Computing Cloud
  14. ^ 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)
  15. ^ Open source fuels growth of cloud computing, software-as-a-service
  16. ^ Cloud Computing: The Evolution of Software-as-a-Service
  17. ^ Forrester's Advice to CFOs: Embrace Cloud Computing to Cut Costs
  18. ^ Five cloud computing questions
  19. ^ Nicholas Carr on 'The Big Switch' to cloud computing
  20. ^ Google Apps makes its way into big business
  21. ^ Google, Inc. Q2 2008 Earnings Call
  22. ^ July, 1993 meeting report from the IP over ATM working group of the IETF
  23. ^ Internet Critic Takes on Microsoft
  24. ^ a b c Jeff Bezos' Risky Bet
  25. ^ Google and I.B.M. Join in ‘Cloud Computing’ Research
  26. ^ Keep an eye on cloud computing
  27. ^ Gartner Says Worldwide IT Spending On Pace to Surpass $3.4 Trillion in 2008
  28. ^ [1]
  29. ^ Cloud computing is a trap, warns GNU founder Richard Stallman, Guardian, September 30, 2008
  30. ^ a b Computers without borders
  31. ^ Feature Guide: Amazon EC2 Availability Zones
  32. ^ Microsoft Plans ‘Cloud’ Operating System
  33. ^ Good OS Announces Cloud — A New Operating System for 2009
  34. ^ Brodkin, Jon (July 02, 2008). "Gartner: Seven cloud-computing security risks". www.infoworld.com. infoworld. Retrieved 2009-04-15. {{cite news}}: Check date values in: |date= (help)
  35. ^ [http://edgewatertech.wordpress.com/2009/04/24/best-practice-cloud-computing/ Cloud Computing as a Best Practice
  36. ^ Recession Is Good For Cloud Computing – Microsoft Agrees
  37. ^ a b c d Defining “Cloud Services” and “Cloud Computing”
  38. ^ The new geek chic: Data centers
  39. ^ Cloud Computing: Small Companies Take Flight
  40. ^ Google Apps Admins Jittery About Gmail, Hopeful About Future
  41. ^ New Resource, Born of a Cloud Feud
  42. ^ Exari: Death By Laptop
  43. ^ Cloud computing security forecast: Clear skies
  44. ^ Google to go carbon neutral by 2008
  45. ^ What is Cloud Computing?
  46. ^ Shut off your computer
  47. ^ a b Nimbus Cloud Guide
  48. ^ Google's Open Source Android OS Will Free the Wireless Web
  49. ^ In Sync to Pierce the Cloud
  50. ^ Microsoft demos mobile cloud sync client
  51. ^ CherryPal brings cloud computing to the masses
  52. ^ Zonbu has alluring features, price
  53. ^ GOS cloud computing
  54. ^ Google Chrome Aims to Break Microsoft Windows
  55. ^ EMC buys Pi and forms a cloud computing group
  56. ^ Google angles for business users with 'platform as a service'
  57. ^ "Web Services Glossary".
  58. ^ The Emerging Cloud Service Architecture
  59. ^ Google, Microsoft and Apple building online storage havens: you win
  60. ^ Building GrepTheWeb in the Cloud, Part 1: Cloud Architectures
  61. ^ Cloud Maturity Is Accelerating: More Than Just Reaction To The Hype?
  62. ^ Defining “Cloud Services” and “Cloud Computing”
  63. ^ IBM Embraces Juniper For Its Smart 'Hybrid Cloud', Disses Cisco (IBM)
  64. ^ a b Private Clouds Take Shape
  65. ^ Just don't call them private clouds
  66. ^ There's No Such Thing As A Private Cloud
  67. ^ Private cloud networks are the future of corporate IT
  68. ^ Private Cloud Computing: The Only Thing Real so Far is the Desire
  69. ^ Million-Dollar Private Clouds
  70. ^ From Grid to Cloud (Gridipedia)
  71. ^ Google opens private cloud to coders
  72. ^ Microsoft Nixes Private Azure Clouds
  73. ^ ACM Queue - Beyond Server Consolidation
  74. ^ ORGs for Scalable, Robust, Privacy-Friendly Client Cloud Computing
  75. ^ Google Privacy Practices Worse Than ISP Snooping, AT&T Charges
  76. ^ The bill of rights is currently in draft.
  77. ^ Draft Cloud Computing: Bill of Rights Now Available
  78. ^ Johnston, Sam (2008-09-16). "Cloud Computing:Bill of rights". Retrieved 2008-09-16. {{cite web}}: Unknown parameter |coauthors= ignored (|author= suggested) (help)
  79. ^ List of Cloud Platforms, Providers and Enablers
  80. ^ Red Hat chief: 'The clouds will all run Linux'
  81. ^ Ubuntu 9.04 beta out, now with fresh Eucalyptus
  82. ^ The Cloud and Standards
  83. ^ Lock-in, security loom as dark side of Compute Cloud
  84. ^ LinuxWorld/Next Generation Data Center attendees get schooled in cloud computing