Showing posts with label Cloud Computing. Show all posts
Showing posts with label Cloud Computing. Show all posts

Cloud Computing Paradigms

Cloud Computing offers three paradigms and three delivery models. These three paradigms offer differing levels of abstraction but all are delivered on a utility-based, pay-as-you-go basis. The three delivery models encompass public data centres, private data centres or a mixture of both.

Infrastructure-as-a-Service: At its most basic level Infrastructure-as-a-Service (IaaS) delivers virtualisation and scaling of servers. Virtualised operating system images can be uploaded to a cloud provider who, in turn, provides placement and execution of these images on physical hardware within their data centres. In this model, application software is intrinsically linked to the underlying operating system. Customers are responsible for building their own software and the management of the underlying operating system on which it executes. This includes patch management of the operating system, but customers are not usually responsible for physical hardware, networking or storage. Payment models vary but are typically based on resource usage, such as compute, storage and ingress and egress transactions.

Platform-as-a-Service: Platform-as-a-Service (PaaS) delivers virtualisation and scaling of abstracted software packages above the level of the operating system. Applications are typically uploaded to a cloud platform, although some models require full development on the cloud platform itself. The vendor provisions pre-baked operating systems images on to hardware within their data centres. The customer’s software is then automatically installed on to these images. With this model there is a decoupling of software from the underlying operating system through an application development platform. Software is programmed against this platform and underlying servers have this platform pre-installed. Customers are responsible for building their own software but there is no requirement to manage the underlying operating system nor the physical hardware, networking or storage. Similar to IaaS, payment models vary but are typically based on resource usage, such as compute, storage and data input and output.

Software-as-a-Service: Software-as-a-Service (SaaS) is perhaps the oldest of the ‘as-a-Service’ terms, and refers to fully managed application software delivered as a service. Customers do not need to upload server images or software packages and, instead, rent access to the software which has been created and is maintained by the cloud provider. Rather than pay on a per server per hour basis, charges are often per user, per month. In this paradigm the benefit is that customers are neither responsible for the software nor the hardware.


What are the five common features of Cloud Computing?

According to the NIST (National Institute of Standards and Technology) five common features of Cloud Computing are:
  • On-demand self-service: users can set themselves up without the help of anyone else.
  • Ubiquitous network access: available through standard Internet-enabled devices.
  • Location independent resource pooling: processing and storage demands are balanced across a common infrastructure with no particular resource assigned to any individual user.
  • Rapid elasticity: consumers can increase or decrease capacity at will.
  • Pay per use: consumers are charged fees based on their usage of a combination of computing power, bandwidth use and/or storage.

What is Cloud Computing?

A cloud is a powerful combination of cloud computing, networking, storage, management solutions, and business applications that facilitate a new generation of IT and consumer services. These services are available on demand and are delivered economically without compromising security or functionality.

Cloud computing, often referred to as simply “the cloud,” is the delivery of on-demand computing resources – everything from applications to data centers – over the Internet and on a pay-for-use basis. These services are broadly divided into three categories: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service (SaaS). 

 

A cloud can be private or public. A public cloud sells services to anyone on the Internet (Currently, Amazon Web Services is the largest public cloud provider). A private cloud is a proprietary network or a data center that supplies hosted services to a limited number of people. When a service provider uses public cloud resources to create their private cloud, the result is called a virtual private cloud. Private or public, the goal of cloud computing is to provide easy, scalable access to computing resources and IT services.

Infrastructure-as-a-Service like Amazon Web Services provides virtual server instance to start, stop, access and configure their virtual servers and storage. In the enterprise, cloud computing allows a company to pay for only as much capacity as is needed, and bring more online as soon as required. Because this pay-for-what-you-use model resembles the way electricity, fuel and water are consumed, it's sometimes referred to as utility computing.

Platform-as-a-service in the cloud is defined as a set of software and product development tools hosted on the provider's infrastructure. Developers create applications on the provider's platform over the Internet. PaaS providers may use APIs, website portals or gateway software installed on the customer's computer. Force.com, (an outgrowth of Salesforce.com) and GoogleApps are examples of PaaS.

Note: There are no standards for interoperability or data portability in the cloud. Some providers will not allow software created by their customers to be moved off the provider's platform.

In the Software-as-a-service cloud model, the vendor supplies the hardware infrastructure, the software product and interacts with the user through a front-end portal. SaaS is a very broad market. Services can be anything from Web-based email to inventory control and database processing. Because the service provider hosts both the application and the data, the end user is free to use the service from anywhere.

Cloud computing really is accessing resources and services needed to perform functions with dynamically changing needs. An application or service developer requests access from the cloud rather than a specific endpoint or named resource. What goes on in the cloud manages multiple infrastructures across multiple organizations and consists of one or more frameworks overlaid on top of the infrastructures tying them together. Frameworks provide mechanisms for:

  • self-healing
  • self monitoring
  • resource registration and discovery
  • service level agreement definitions
  • automatic reconfiguration

The cloud is a virtualization of resources that maintains and manages itself. The Assimilator project is a framework that executes across a heterogeneous environment in a local area network providing a local cloud environment.

What is Cloud Computing?


Google Faculty Summit 2009: Cloud Computing