Jump to content

Cloud computing

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Tree Hugger (talk | contribs) at 02:55, 4 July 2008 (Additional Terms). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Cloud computing refers to computing resources being accessed which are typically owned and operated by a third-party provider on a consolidated basis in Data Center locations. Consumers of cloud computing services purchase computing capacity on-demand and are not concerned with the underlying technologies used to achieve the increase in server capability.

The applications of cloud/utility computing models are expanding rapidly as connectivity costs fall, and as computing hardware becomes more efficient at operating at scale. The economic incentives to share hardware among multiple users are increasing; the drawbacks in performance and interactive response that used to discourage remote and distributed computing solutions are being greatly reduced.

As a result, the services that can be delivered from the cloud have expanded past web applications to include storage, raw computing, or access to any number of specialized services.

History of the Term

The term cloud computing derives from the common depiction in most technology architecture diagrams, of the Internet or IP availability, using an illustration of a cloud. Cloud computing gained attention in 2007 as it became a popular solution to the problem of horizontal scalability.

Additional Terms

Grid computing is a technology approach to managing a cloud. In effect, all clouds are managed by a grid but not all grids manage a cloud. More specifically, a computer grid and a cloud are synonymous, while a data grid and a cloud can be different.

Potential advantages

Potential advantages of any cloud or grid computing approach include:

  • Location of infrastructure in areas with lower costs of real estate and electricity.
  • Sharing of peak-load capacity among a large pool of users, improving overall utilization.
  • Separation of infrastructure maintenance duties from domain-specific application development.
  • Separation of application code from physical resources.
  • Ability to use external assets to handle peak loads (not having to engineer for highest possible load levels).
  • Not having to purchase assets for one-time or infrequent intensive computing tasks.
  • Ability to scale to meet changing user demands quickly, usually within minutes

Architecture

File:Cloudcomputing.png
Diagram of cloud computing architecture.

The architecture behind cloud computing is a massive network of "cloud servers" interconnected as if in a grid running in parallel, sometimes using the technique of virtualization to maximize the utilization of the computing power available per server.

A front-end interface allows a user to select a service from a catalog. This request gets passed to the system management which finds the correct resources, and then calls the provisioning services which carves out resources in the cloud. The provisioning service may deploy the requested stack or web application as well.

  • User interaction interface: This is how users of the cloud interface with the cloud to request services.
  • Services catalog: This is the list of services that a user can request.
  • System management: This is the piece which manages the computer resources available.
  • Provisioning tool: This tool carves out the systems from the cloud to deliver on the requested service. It may also deploy the required images.
  • Monitoring and metering: This optional piece tracks the usage of the cloud so the resources used can be attributed to a certain user.
  • Servers: The servers are managed by the system management tool. They can be either virtual or real.

Cloud storage

Cloud storage is a model of networked data storage where data is stored on multiple virtual servers, generally hosted by third parties, rather than being hosted on dedicated servers. Hosting companies operate large data centers; and people who require their data to be hosted buy or lease storage capacity from them and use it for their storage needs. The data center operators, in the background, virtualize the resources according to the requirements of the customer and expose them as virtual servers, which the customers can themselves manage. Physically, the resource may span across multiple servers. In some services, such as Nirvanix, the system may span multiple data centers or even continents.

Available Clouds

Additional Cloud Topics

References