As the IT field evolves, it becomes more mature, the need to optimize cost naturally drives the innovation and creativity. The new concept coupled with technology, which is now doing rounds is ‘cloud computing’.
I had come across people, with limited IT knowledge enquiring me as what is ‘cloud computing’?. Though, I had tried to explain to them in best possible way, most of the time, I end up a vacant stare from them, which was indicative that they did not understand the concept or background behind cloud computing.
What is cloud computing?.
Quite recently, I have started giving them example of home with kitchen Vs restaurant towards explaining the concept behind ‘cloud computing’. A kitchen at home is dedicated for home, the resources – may it be the vessels or appliances or the cooking person is dedicated to that home. The owner of the home invests in kitchen and avails the benefit of having the kitchen to him or her or the members of his family. It’s the owner of the house who has to maintain the kitchen. When one compares home kitchen with restaurant, the end objective is same, which is specific food is offered, but how food is prepared or serviced is different. One does not own anything is a restaurant except for the food offered. In a nutshell same is concept between Traditional IT offering Vs cloud computing.
Just like home kitchen, in case of traditional IT offering, the company owns the hardware and licenses for software and at times company outsources application development to a 3rd party which is comparable to chef hired (if a person is rich) to prepare food at home. With evolution of IT sector in hardware & software, we are marching towards ‘restaurant’ model of IT services; you just pay for what is your end objective – ‘processed food’ or ‘services’. Like in a restaurant, in which you are only concerned about the quality of food and expected service offering and not much bothered about who is the chef, waiter or the kitchen appliances or even where the kitchen is, so is the case with ‘cloud computing’, the customer is focused on service offering and not on hardware, software, raw information or resources employed to provide the service offering or end product.
Organizations are not going to jump into cloud computing, they would evolve and move towards characteristic of cloud computing infrastructure over period of time as they feel confident about the same. As far as cloud computing is concerned, I believe we are at stage, similar to, as of early 90’s with respect to IT services outsourcing. IT services were outsourced, so that organization could concentrate on the ‘core’ business area, cloud computing could well be a further step forward.
Now, let look at the service models normally considered in cloud computing.
SAaS: Software – as – a service:
This model is talked about quite some time now, business application are hosted on server maintained by data centers. Legal issues, security, integration and confidentiality of data of the deterring factors on this model at this point of time. Once policies, procedures, standards get defined and refined our the period of time, this is bound to get adopted, over period of time.
In terms of usage, the application are accessed through web browser and terms and condition could be governed by service level agreements.
Possible examples could be simple free generic email service to complex ERP system..
IaaS: Infrastructure – as – a service:
Computation servers, storage, hardware are considered under this service model. One would also find free on storage offered in web, this could be referred as IaaS.
PaaS: Platform – as – a service:
Development and deployment platform could be offered as a service to developers to build, deploy manage, application on SAaS.
If one looks at cloud deployment strategy, its normally, public, private and hybrid clouds. I feel the name itself quite significant to describe about the type.
The next question is any one’s mind would be, what kind of hardware does one require towards hosting cloud computing?.
At this point of time, normally cloud computing is deployed in traditional model. By traditional model, I mean one might have a server to cater database tier or application tier, which is almost a ‘silos’ based model. But, since cloud computing, one need to have efficient hardware and manpower(refer to my example of restaurant) to manage cloud better in a data centre. This is where hardware could play a main role, the new technology like grid computing, real application clusters, automatic storage management, server scale up and server virtualization features plays in important role toward better management and deployment of cloud.
As we progress, we would well be moving away from ‘Silos’ based computer system and application. Cloud computing infrastructure would be residing in data centre, this would call for efficient use of hardware and more over manpower would need to support multiple servers or application. Optimization and effective control would play larger roles in infrastructure management of these data centre towards cloud computing.
Standards in cloud computing are evolving and as per a leading standards organization, some of the key characteristics towards cloud computing are,
Resource Pooling:The provider’s computing resources are pooled to serve multiple consumers using a multi-tenant model. There is a sense of location independence in that the customer generally has no control or knowledge over the exact location of the provided resources.
Rapid elasticity: Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time.
Measured service: Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.
As this leads to a situation where, cloud computing needs to provide services wherein there is zero downtime and resources being shared, so naturally hardware for cloud computing is getting evolved, the technology related to Grid computing, clustering – RAC, better performing servers and server virtualization has been increasing offered by vendors towards satisfying the characteristics of cloud computing.
A brief look at the terminologies and technology used,
A cluster consists of a group of independent but interconnected computers whose combined resources can be applied to a processing task. A ‘clusterware’ is a term used to describe software that provides interfaces and services that enable and support a cluster. The combination of clusterware, automatic storage management provides a unified cluster solution that is the foundation to real application cluster database.
Real application clusters allows multiple nodes in a clustered system to mount and open a single database that resides on shared disk storage. Should a single system (node) fail, the database service will still be available on the remaining nodes.
It might still require few more years before cloud computing matures and it might well re-define the IT outsourcing map.