Introduction of Cloud Computing
Cloud computing is a client-server mechanism, one that connects to resources from multiple internet-connected devices. These devices have lower barriers for access to the cloud. It essentially means that applications are made live through the use of many computers that exist online, rather than a local computer or web server
In other words, cloud computing means getting the best performing system with the best value of money. Cloud computing is a general term for anything that involves delivering hosted services over the internet. These services are broadly divided into three categories: Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS).
· Cloud computing is cost effective. Here, cost is greatly reduced as initial expense and recurring expenses are much lower than the traditional computing.
· Maintenance cost is reduced as a third party maintains everything from running the cloud to storing data.
· Cloud is characterized by features such as platform, location and device independency, which makes it easily adoptable for all size of business.
· Another most important characteristic of cloud is scalability, which is achieved through server virtualization.
Architecture of Cloud Computing:
Cloud computing architecture, just like other system is categorized into two main sections: frontend and backend. Frontend can be end user or client or any application (i.e. web browser etc.) which is using cloud services. Backend is the network of server with any computer program and data storage system. It is usually assumed that cloud contains infinite storage capacity for any software available in the market.
Once a cloud is established, how its cloud computing services are deployed in terms of business model can differ depending on their requirement. The primarily service model being deployed are commonly known as:
· Software as a Service: SaaS is a software model provided by the vendor through an online service. User doesn’t have to install or maintain SaaS application. Software is running on a provider’s cloud infrastructure and a user can access it via web browser. With SaaS, vendor makes the required software available to a business on subscription basis, and charges are based on the product usage. SaaS model can save the companies expenses on buying hardware and software and it removes the maintenance costs.
· Platform as a Service: PaaS enables companies to develop applications more quickly and efficiently in a cloud environment using programming languages and tools supported by the provider. The provider is responsible for maintenance and control of the underlying cloud infrastructure including network, servers, and operating systems. PaaS services provide a great deal of flexibility allowing companies to build PaaS environments on demand with no capital expenditures.
· Infrastructure as a Service: With IaaS, a company can rent fundamental computing resources for deploying and running applications or storing data. It enables companies to deliver applications more efficiently by removing the complexities involved with managing their own infrastructure. IaaS enables fast deployment of applications, and improves the ability of IT services by instantly adding computing processing power and storage capacity when needed.
· Private Cloud: The cloud infrastructure has been deployed, and is maintained and operated for a specific organization. The operation may be in-house or with a third party on the premises.
· Community Cloud: The cloud infrastructure is shared among a number of organizations with similar interests and requirements. This may help limit the capital expenditure costs for its establishment as the costs are shared among the organizations. The operation may be in-house or with a third party on the premises.
· Public Cloud: The cloud infrastructure is available to the public on a commercial basis by a cloud service provider. This enables a consumer to develop and deploy a service in the cloud with very little financial outlay compared to the capital expenditure requirements normally associated with other deployment options.
· Hybrid Cloud: The cloud infrastructure consists of a number of clouds of any type, but the clouds have the ability through their interfaces to allow data and/or applications to be moved from one cloud to another. This can be a combination of private and public clouds that support the requirement to retain some data in an organization, and also the need to offer services in the cloud.
The following are some of the possible benefits for those who offer cloud computing-based services and applications:
· Cost savings: Companies can reduce their capital expenditures and use operational expenditures for increasing their computing capabilities. This is a lower barrier to entry and also requires fewer in-house IT resources to provide system support.
· Scalability/Flexibility: Companies can start with a small deployment and grow to a large deployment fairly rapidly, and then scale back if necessary. Also, the flexibility of cloud computing allows companies to use extra resources at peak times, enabling them to satisfy consumer demands.
· Reliability: Services using multiple redundant sites can support business continuity and disaster recovery.
· Maintenance: Cloud service providers do the system maintenance, and access is through APIs that do not require application installations onto PCs, thus further reducing maintenance requirements.
· Mobile Accessible: Mobile workers have increased productivity due to systems accessible in an infrastructure available from anywhere.