1. INTRODUCTION
Cloud computing describes computation, software, data access, and storage services that do not require end-user knowledge of the physical location and configuration of the system that delivers the services
It is a technology that uses the internet and central remote servers to maintain data and applications. Cloud computing allows consumers and businesses to use applications without installation and access their personal files at any computer with internet access. This technology allows for much more efficient computing by centralizing storage, memory, processing and bandwidth.
A simple example of cloud computing is Yahoo email or Gmail etc. We don’t need software or a server to use them. All a consumer would need is just an internet connection and we can start sending emails. The server and email management software is all on the cloud ( internet) and is totally managed by the cloud service provider Yahoo , Google etc. The consumer gets to use the software alone and enjoy the benefits. The analogy is , 'If you only need milk , would you buy a cow ?' All the users or consumers need is to get the benefits of using the software or hardware of the computer like sending emails etc. Just to get this benefit (milk) why should a consumer buy a (cow) software /hardware?
The actual term "cloud" borrows from telephony in that telecommunications
companies, who until the 1990s primarily offered dedicated point-to-point data circuits,
began offering “VIRTUAL PRIVATE NETWORK (VPN)” services with comparable quality of service but at a much lower cost.
Cloud computing is a natural evolution of the widespread adoption of virtualization, service-oriented architecture, autonomic and utility computing. Details are abstracted from end-users, who no longer have need for expertise in, or control over, the technology infrastructure "in the cloud" that supports them
"Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction."
Most cloud computing infrastructures consist of services delivered through common centers and built on servers. Clouds often appear as single points of access for consumers' computing needs. Commercial offerings are generally expected to meet quality of service (QoS) requirements of customers, and typically include service level agreements (SLAs).
2. CHARACTERISTICS
ARCHITECTURE
cloud architecture, the systems architecture of the software systems involved in the delivery of cloud computing, typically involves multiple cloud components communicating with each other over application programming interfaces, usually web services and 3-tier architecture. This resembles the Unix philosophy of having multiple programs each doing one thing well and working together over universal interfaces. Complexity is controlled and the resulting systems are more manageable than their monolithic counterparts.
The two most significant components of cloud computing architecture are known as the front end and the back end. The front end is the part seen by the client, i.e. the computer user. This includes the client’s network (or computer) and the applications used to access the cloud via a user interface such as a web browser. The back end of the cloud computing architecture is the ‘cloud’ itself, comprising various computers, servers and data storage devices.
KEY CHARACTERISTICS
Agility improves with users' ability to rapidly and inexpensively re-provision technological infrastructure resources.
Application Programming Interface (API) accessibility to software that enables machines to interact with cloud software in the same way the user interface facilitates interaction between humans and computers.
Cost is claimed to be greatly reduced and capital expenditure is converted to operational expenditure. This ostensibly lowers barriers to entry, as infrastructure is typically provided by a third-party and does not need to be purchased for one-time or infrequent intensive computing tasks.
Device and location independence enable users to access systems using a web browser regardless of their location or what device they are using (e.g., PC, mobile).
Multi-tenancy enables sharing of resources and costs across a large pool of users thus allowing for:
o Centralization of infrastructure in locations with lower costs (such as real estate, electricity, etc.)
o Peak-load capacity increases (users need not engineer for highest possible load-levels)
o Utilization and efficiency improvements for systems that are often only 10–20% utilized.
Reliability is improved if multiple redundant sites are used, which makes well designed cloud computing suitable for business continuity and disaster recovery.
Scalability via dynamic ("on-demand") provisioning of resources on a fine-grained, self-service basis near real-time, without users having to engineer for peak loads.
Security could improve due to centralization of data, increased security-focused resources, etc., but concerns can persist about loss of control over certain sensitive data, and the lack of security for stored kernels.
Maintenance of cloud computing applications is easier, since they don't have to be installed on each user's computer. They are easier to support and to improve since the changes reach the clients instantly.
Metering means that cloud computing resources usage should be measurable and should be metered per client and application on a daily, weekly, monthly, and yearly basis.
3. LAYERS
The Internet functions through a series of network protocols that form a stack of layers, (client, application, platform, infrastructure, server)(or as described in more detail in the OSI model). Once an Internet Protocol connection is established among several computers, it is possible to share services within any one of the following layers.
4. CLIENT
A cloud client consists of computer hardware and/or computer software that relies on cloud computing for application delivery, or that is specifically designed for delivery of cloud services and that, in either case, is essentially useless without it.
5. APPLICATION
Cloud application services or "Software as a Service deliver software as a service over the Internet, eliminating the need to install and run the application on the customer's own computers and simplifying maintenance and support.
6. PLATFORM
Cloud platform services or "Platform as a Service deliver a computing platform and/or solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications.
7. INFRASTRUCTURE
Cloud infrastructure services, also known as "Infrastructure as a Service, delivers computer infrastructure - typically a platform virtualization environment - as a service. Rather than purchasing servers, software, data-center space or network equipment, clients instead buy those resources as a fully outsourced service.
8. SERVER
The server’s layer consists of computer hardware and/or computer software products that are specifically designed for the delivery of cloud services, including multi-core processors, cloud-specific operating systems and combined offerings
9. DEPLOYMENT MODELS
10. CLOUD COMPUTING TYPES
10.1 PUBLIC CLOUD
Public cloud or external cloud describes cloud computing in the traditional main stream sense, whereby resources are dynamically provisioned on a fine-grained, self-service basis over the Internet
10.2 COMMUNITY CLOUD
A community cloud may be established where several organizations have similar requirements and seek to share infrastructure so as to realize some of the benefits of cloud computing
10.3 HYBRID CLOUD
The term "hybrid cloud" has been used to mean either two separate clouds joined together (public, private, internal or external), or a combination of virtualized cloud server instances used together with real physical hardware.
10.4 PRIVATE CLOUD
Private cloud and internal cloud have been described as neologisms, however the concepts themselves pre-date the term cloud by 40 years. Some vendors have used the terms to describe offerings that emulate cloud computing on private networks. These (typically virtualization automation) products offer the ability to host applications or virtual machines in a company's own set of hosts. These provide the benefits of utility computing -shared hardware costs, the ability to recover from failure, and the ability to scale up or down depending upon demand.
11. CLOUD ENGINEERING
Cloud engineering is the application of a systematic, disciplined, quantifiable, and interdisciplinary approach to the ideation, conceptualization, development, operation, and maintenance of cloud computing, as well as the study and applied research of the approach, i.e., the application of engineering to cloud.
12. CLOUD STORAGE
Cloud storage is a model of networked computer data storage where data is stored on multiple virtual servers, generally hosted by third parties, rather than being hosted on dedicated servers.
13. THE INTER CLOUD
The Inter cloud is an interconnected global "cloud of clouds"
14. ISSUES
14.1 PRIVACY
The cloud model has been criticized by privacy advocates for the greater ease in which the companies hosting the cloud services control, and thus, can monitor at will, lawfully or unlawfully, the communication and data stored between the user and the host company.
14.2 COMPLIANCE
In order to obtain compliance with regulations including FISMA, HIPAA and SOX in the United States, the Data Protection Directive in the EU and the credit card industry's PCI DSS, users may have to adopt community or hybrid deployment modes which are typically more expensive and may offer restricted benefits.
14.3 OPEN SOURCE
Open source software has provided the foundation for many cloud computing implementations. In November 2007, the Free Software Foundation released the Affero General Public License, a version of GPLv3 intended to close a perceived legal loophole associated with free software designed to be run over a network.
14.4 OPEN STANDARDS
Most cloud providers expose APIs which are typically well-documented (often under a Creative Commons license) but also unique to their implementation and thus not interoperable.
14.5 SECURITY
The relative security of cloud computing services is a contentious issue which may be delaying its adoption. Issues barring the adoption of cloud computing are due in large part to the private and public sectors unease surrounding the external management of security based services. It is the very nature of cloud computing based services, private or public, that promote external management of provided services. This delivers great incentive amongst cloud computing service providers in producing a priority in building and maintaining strong management of secure services.
Organizations have been formed in order to provide standards for a better future in cloud computing services. One organization in particular, the Cloud Security Alliance is a non-profit organization formed to promote the use of best practices for providing security assurance within cloud computing.
14.6 AVAILABILITY AND PERFORMANCE
In addition to concerns about security, businesses are also worried about acceptable levels of availability and performance of applications hosted in the cloud.
14.7 SUSTAINABILITY AND SITING
Although cloud computing is often assumed to be a form of "green computing", there is as of yet no published study to substantiate this assumption. Siting the servers affects the environmental effects of cloud computing.
15. APPLICATIONS
The applications segment of cloud computing are the only segmenting that has proven useful as a 'business model.' By running business applications over the internet from centralized servers rather than from on-site servers, companies can cut some serious costs. Furthermore, while avoiding maintenance costs, licensing costs and the costs of the hardware required running servers on-site, companies are able to run applications much more efficiently from a computing stand point. Companies sell licenses to their users, who then run the software from on premise servers.
16. PLATFORMS
Many of the companies that started out providing On Demand application services have developed platform services as well. The platform segment of cloud computing refers to products that are used to deploy internet. NetSuite, Amazon, Google, and Microsoft have also developed platforms that allow users to access applications from centralized servers.
17. INFRASTRUCTURE
The final segment in cloud computing, known as the infrastructure, is very much the backbone of the entire concept. Infrastructure vendors environments (such as Google gears) that allow users to build applications. Cloud storage, such as Amazon's S3, is also considered to be part of the infrastructure segment.
17. CLOUD SERVICE MODELS
SaaS Software as a Service
PaaS Platform as a Service
IaaS Infrastructure as a Service
Important Questions:
1. Differentiate between Community Cloud & Public Cloud
Ans : Community Cloud — The cloud infrastructure is shared among a number of rganizations with similar interests and requirements & Costs are shared among the organizations.
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
2. Differentiate between Paas & IaaS
Ans : PaaS stands for Platform as a Service- Application platform onto which custom applications and services can be deployed
IaaS stands for Infrastructure as a Service-Physical infrastructure is abstracted to provide computing, storage, and networking as a service, avoiding the expense and need for dedicated systems
3. What are the Challenges associated with cloud computing
Ans: Lack of standards, security and privacy, continuous evolving(user requirements)