“Cloud Computing” or ‘Cloud’ in Information Technology (IT) world, is providing computing, storage, network resources, and applications as a service over the INTERNET. The services could be offered as ‘free’ or it could be ‘paid’
Things like Gmail, Google Docs, Facebook, Youtube etc. are examples of providing applications over the INTERNET. Similarly, Google Drive, Dropbox etc. are examples of providing storage over the INTERNET. Then we have services like Amazon Web Services (AWS), Softlayer, Rackspace, and Google Compute Engine, which are examples of providing compute services over the INTERNET.
The word ‘cloud’ is actually a metaphor for the ‘Internet’. Normally ‘Internet’ is depicted as a ‘cloud’ in architecture diagrams (see the figure below)
Elasticity: Scale up or down seamlessly based on requirement. Adding or removing of resources like cpu, memory, storage, users is quick and easy.
Self-service: Self-service access for the end-user. Users can avail the service by using a web-based self-service portal.
Metered Service: All services are metered, and might involve paying as per usage.
Multi-tenancy : A cloud infrastructure will need to support multiple independent workloads belonging to different users by taking into account isolation of workloads, security and compliance.
Network accessible : A cloud service is accessible via desktop, laptop, mobile etc over the network
Types of Cloud
Normally there are three types of Cloud. These three types are also referred to as ‘cloud deployment models’.
Public : Public clouds are the ones, where services are provided to everyone over the INTERNET. In other words public cloud services are available to multiple clients. The services may be free or charged based on usage. Some best known examples of Public cloud are Amazon Web Services (AWS), IBM SoftLayer, Google Compute Engine, Rackspace, ESDS, Netmagic etc.
Private : A private cloud provides services to only one client. A company can set up a private cloud in its own data-center to serve internal departments. Alternately, a company can take help from a cloud hosting provider to set up a private cloud in the provider’s data center. This is usually referred to as hosted private cloud. Companies like IBM Softlayer, Rackspace, ESDS etc. provide such services.
Hybrid : A hybrid cloud uses a combination of private cloud and public cloud services. A company might have a private cloud in its own data-center, and at the same time leverages some of the public cloud services.
Key Technologies Used
Virtualization separates the presentation of resources to users from the actual resources. Virtualization is a key enabler for the elastic characteristic of a cloud.
According to Wikipedia
“Virtualization, in computing, refers to the act of creating a virtual (rather than actual) version of something, including but not limited to a virtual computer hardware platform,operating system (OS), storage device, or computer network resources.”
Server virtualization results in creating multiple virtual servers on a single physical server. Some examples of server virtualization technology are Linux Kernel-based Virtual Machine (KVM), VMware vSphere, Microsoft HyperV etc.
Cloud Management Software
In order to provide other key cloud characteristics like self-service portal, metering and tracking, a management layer is required.
One of the best known cloud management software is OpenStack (http://www.openstack.org/software/).