"Cloud Computing": Seminar Report
"Cloud Computing": Seminar Report
Seminar Report
On
“Cloud Computing”
(RCS-851)
Submitted in Partial Fulfilment of the requirement
For the Award of the Degree of
B. Tech in Computer Science & Engineering
Coordinator(s):
Mrs. Saroj Singh (Associate Professor)
Mr. Alok Kumar Gupta (Assistant Professor)
Submitted By:
Name: Roll No: Section:
RICHA
Richa MAURYA
Maurya
1750810058
CS-42
Declaration
We hereby declare that the project entitled as “Cloud Computing” has been personally
done by us under the guidance of Prof. Mrs. Saroj Singh and Mr. Alok Kumar Gupta in
partial fulfilment of Graduation program- during academic year. All the data represented
in this seminar is true and correct to the best of my knowledge and belief. This work has
not been submitted by any other degree elsewhere.
Signature:
Date:
Acknowledgement
I would like to express my sincere gratitude to our Faculty-in-charge of seminar Mrs. Saroj
Singh and Mr. Alok Kumar Gupta for their proper guidance and valuable suggestions
which helped me to improve my works. I am also greatly thankful to our Computer
Science & Engineering department and other faculty members for giving me this unique
opportunity to do this seminar.
Table of Content
1. Abstract 7
2. Introduction
1.1 Introduction 8
1.2 Cloud Computing 10
1.3 Characteristics of Cloud Computing 12
1.4 Need of Cloud Computing 14
1.5 Advantages 16
1.6 Disadvantages 17
3. History, Vision and Architecture of Cloud Computing
2.1 History of Cloud Computing 18
2.2 Vision of Cloud Computing 20
2.3 Cloud Computing Architecture 21
2.4 Components of Cloud Computing Architecture 23
4. Technologies
3.1 Cloud Computing Technologies 25
3.1.1 Virtualization 25
3.1.2 Service Oriented Architecture (SOA) 27
3.1.3 Grid Computing 28
3.1.4 Utility Computing 28
3.2 Comparison between Grid and Cloud Computing 30
3.3 Relation Between Cloud Computing and
Utility Computing 31
5. Cloud Computing Types and Models
4.1 Types of Cloud 32
List of Figures
Abstract
Computers have come to be an essential part of life. We need computers all over, be it work, research or
in any such field. As the utilization of computers in our everyday life builds, the computing system that
we need also go up. For large organizations like Google and Microsoft, using the resources as and when
they require it is not an issue. But when it reaches to smaller organizations budget becomes a great factor.
With the great framework come with an issue like machine breakdown, hard drive crashes, programming
bugs, etc., this may be a major headache for such a local area. Cloud computing provides a solution to this
problem.
Cloud computing is an internet-based computing technology, where shared assets such as software, plan,
platform, storage and data are provided to clients on request. It is a computing stage for sharing resources
that includes foundation, software, applications and business measures. Cloud computing is a virtual pool
of processing resources. Privacy, Integrity, Availability, Authenticity, furthermore, Privacy are
fundamental worries for both Cloud suppliers and buyers also.
Cloud computing is a model shift in which computing is moved away from computer system and even the
individual organization application host to a ‘cloud’ of computers. A cloud is a virtualized host pool
which can give the different computing resources of their customers. End users of this system require
only be concerned with the computing service being asked for. The fundamental details of how it is
attained are hidden from the end user. The information and the services provided live in highly scalable
data centres and can be everywhere accessed from any connected tools all over the world.
Cloud computing is the way of computing where highly scaled IT related abilities are provided as a
facility across the internet to various external clients and are charged by consumption. Many cloud
computing providers have popped up and there is a considerable growth in the usage of this service.
Google, Microsoft, Yahoo, IBM and Amazon have started providing cloud computing services. Amazon
is the pioneer in this field. Smaller companies like SmugMug, which is an online photo hosting site, has
used cloud services for the storing all the data and doing some of its services.
Cloud Computing is finding use in various areas like web hosting, parallel batch processing, graphics
rendering, financial modelling, web crawling, genomics analysis, etc. Cloud computing provides the
facility to access shared resources and common infra structure, offering services on demand over the
network to perform operations that meet changing business needs. The location of physical resources and
devices being accessed are typically not known to the end-user. It also provides facilities for users to
develop, deploy and manage their applications ‘on the cloud’, which entails virtualization of resources
that maintains and manages its
Chapter- 1
Introduction
1.1 Introduction
Cloud computing is an internet-based computing technology, where shared resources such as software,
platform, storage and information are provided to customers on demand. Cloud computing is a computing
platform for sharing resources that include infrastructures, software, applications, and business processes.
Cloud Computing is a virtual pool of computing resources. It provides computing resources in the pool
for users through internet. Cloud computing, as an emerging computing paradigm aiming to share storage,
computation, and services transparently among a massive user. The exact definition of cloud computing is
A large-scale distributed computing paradigm that is driven by economies of scale, in which a pool of
abstracted, virtualized, dynamically scalable, managed computing power, storage, platforms, and services
are delivered on demand to external customers over the Internet.
Cloud computing is an emerging paradigm in the computer industry where the computing is moved to a
cloud of computers. It has become one of the buzz words of the industry. The core concept of cloud
computing is, quite simply, that the vast computing resources that we need will reside somewhere out
there in the cloud of computers and we’ll connect to them and use them as and when needed.
Computing can be described as any activity of using and/or developing computer hardware and software.
It includes everything that sits in the bottom layer, i.e., everything from raw compute power to storage
capabilities. Cloud computing ties together all these entities and delivers them as a single integrated entity
under its own sophisticated management.
Cloud is a term used as a metaphor for the wide area networks (like internet) or any such large networked
environment. It came partly from the cloud-like symbol used to represent the complexities of the
networks in the schematic diagrams. It represents all the complexities of the network which may include
everything from cables, routers, servers, data centres and all such other devices.
Computing started off with the mainframe era. There were big mainframes and everyone connected to
them via “dumb” terminals. This old model of business computing was frustrating for the people sitting at
the dumb terminals because they could do only what they were “authorized” to do. They were dependent
on the computer administrators to give them permission or to fix their problems. They had no way of
staying up to the latest innovations.
The personal computer was a rebellion against the tyranny of centralized computing operations. There
was a kind of freedom in the use of personal computers. But this was later replaced by server
architectures with enterprise servers and others showing up in the industry. This made sure that the
computing was done and it did not eat up any of the resources that one had with him. All the computing
was performed at servers.
Internet grew in the lap of these servers. With cloud computing we have come a full circle. We come back
to the centralized computing infrastructure. But this time it is something which can easily be accessed via
the internet and something over which we have all the control.
Cloud computing is unlike grid computing, utility computing, or autonomic computing. In fact, it is a
very independent platform in terms of computing. The best example of cloud computing is Google Apps
where any application can be accessed using a browser and it can be deployed on thousands of computers
through the Internet.
Cloud is essentially provided by large distributed data centres. These data centres are often organized as
grid and the cloud is built on top of the grid services. Cloud users are provided with virtual images of the
physical machines in the data centres. This virtualization is one of the key concepts of cloud computing as
it essentially builds the abstraction over the physical system. Many cloud applications are gaining
popularity day by day for their availability, reliability, scalability and utility model. These applications
made distributed computing easy as the critical aspects are handled by the cloud provider itself.
Cloud computing is growing now-a-days in the interest of technical and business organizations but this
can also be beneficial for solving social issues. In the recent time E-Governance is being implemented in
developing countries to improve efficiency and effectiveness of governance. This approach can be
improved much by using cloud computing instead of traditional ICT. In India, economy is agriculture
based and most of the citizens live in rural areas. The standard of living, agricultural productivity etc can
be enhanced by utilizing cloud computing in a proper way. Both of these applications of cloud computing
have technological as well as social challenges to overcome.
A definition for cloud computing can be given as an emerging computer paradigm where data and
services reside in massively scalable data centres in the cloud and can be accessed from any connected
devices over the internet.
Cloud computing is a way of providing various services on virtual machines allocated on top of a large
physical machine pool which resides in the cloud. Cloud computing comes into focus only when we think
about what IT has always wanted – a way to increase capacity or add different capabilities to the current
setting on the fly without investing in new infrastructure, training new personnel or licensing new
software. Here ‘on the fly’ and ‘without investing or training’ becomes the keywords in the current
situation. But cloud computing offers a better solution.
We have lots of compute power and storage capabilities residing in the distributed environment of the
cloud. What cloud computing does is to harness the capabilities of these resources and make available
these resources as a single entity which can be changed to meet the current needs of the user. The basis of
cloud computing is to create a set of virtual servers on the available vast resource pool and give it to the
clients. Any web enabled device can be used to access the resources through the virtual servers. Based on
the computing needs of the client, the infrastructure allotted to the client can be scaled up or down.
From a business point of view, cloud computing is a method to address the scalability and availability
concerns for large scale applications which involves lesser overhead. Since the resource allocated to the
client can be varied based on the needs of the client and can be done without any fuss, the overhead is
very low.
One of the key concepts of cloud computing is that processing of 1000 times the data need not be 1000
times harder. As and when the amount of data increases, the cloud computing services can be used to
manage the load effectively and make the processing tasks easier. In the era of enterprise servers and
personal computers, hardware was the commodity as the main criteria for the processing capabilities
depended on the hardware configuration of the server. But with the advent of cloud computing, the
commodity has changed to cycles and bytes – i.e., in cloud computing services, the users are charged
based on the number of cycles of execution performed or the number of bytes transferred. The hardware
or the machines on which the applications run are hidden from the user. The amount of hardware needed
for computing is taken care of by the management and the client is charged based on how the application
uses these resources.
The architecture of cloud involves multiple cloud components communicating with each other over the
application programming interfaces (APIs), usually web services. 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 customer. This includes the client 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, which comprises of various computers, servers and data storage devices.
There are the following operations that we can do using cloud computing:
o Analysis of data
1. Self-Healing
Any application or any service running in a cloud computing environment has the property of self-
healing. In case of failure of the application, there is always a hot backup of the application ready to take
over without disruption. There are multiple copies of the same application – each copy updating itself
regularly so that at times of failure there is at least one copy of the application which can take over
without even the slightest change in its running state.
2. Multi-tenancy
With cloud computing, any application supports multi-tenancy – that is multiple tenants at the same
instant of time. The system allows several customers to share the infrastructure allotted to them without
any of them being aware of the sharing. This is done by virtualizing the servers on the available machine
pool and then allotting the servers to multiple users. This is done in such a way that the privacy of the
users or the security of their data is not compromised.
3. Linearly Scalable
Cloud computing services are linearly scalable. The system is able to break down the workloads into
pieces and service it across the infrastructure. An exact idea of linear scalability can be obtained from the
fact that if one server is able to process say 1000 transactions per second, then two servers can process
2000 transactions per second.
4. Service-oriented
Cloud computing systems are all service oriented – i.e., the systems are such that they are created out of
other discrete services. Many such Cloud Computing Division of Computer Science and Engineering,
School of Engineering, CUSAT 5 discrete services which are independent of each other are combined
together to form this service. This allows re-use of the different services that are available and that are
being created. Using the services that were just created, other such services can be created.
5. SLA Driven
Usually, businesses have agreements on the number of services. Scalability and availability issues cause
clients to break these agreements. But cloud computing services are SLA driven such that when the
system experiences peaks of load, it will automatically adjust itself so as to comply with the service-level
agreements. The services will create additional instances of the applications on more servers so that the
load can be easily managed.
6. Virtualized
The applications in cloud computing are fully decoupled from the underlying hardware. The cloud
computing environment is a fully virtualized environment.
7. Flexible
Another feature of the cloud computing services is that they are flexible. They can be used to serve a
large variety of workload types - varying from small loads of a small consumer application to very heavy
loads of a commercial application.
We are gathering statistics about every user using an application. With such CPU power at hand, we
could monitor every single user click and every user interaction such that we can gather all the statistics
about the user. We could improve the recommendation systems of users. We could model better price
plan choices. With this CPU power we could simulate the case where we have said 1,00,000 users in the
system without any glitches.
There are lots of other things we could do with so much CPU power and data capabilities. But what is
keeping us back. One of the reasons is the large-scale architecture which comes with these are difficult to
manage. There may be many different problems with the architecture we have to support. The machines
may start failing, the hard drives may crash, the network may go down and many other such hardware
problems. The hardware has to be designed such that the architecture is reliable and scalable. This large-
scale architecture has a very expensive upfront and has high maintenance costs. It requires different
resources like machines, power, cooling, etc. The system also cannot scale as and when needed and so is
not easily reconfigurable.
The resources are also constrained by the resources. As the applications become large, they become I/O
bound. The hard drive access speed becomes a limiting factor. Though the raw CPU power available may
not be a factor, the amount of RAM available clearly becomes a factor. This is also limited in this context.
If at all the hardware problems are managed very well, there arises the software problems. There may be
bugs in the software using this much of data. The workload also demands two important tasks for two
completely different people. The software has to be such that it is bug free and has good data processing
algorithms to manage all the data.
The cloud computing works on the cloud - so there are large groups of often low-cost servers with
specialized connections to spread the data-processing chores among them. Since there are a lot of low-
cost servers connected together, there are large pools of resources available. So, these offer almost
unlimited computing resources. This makes the availability of resources a lesser issue.
The data of the application can also be stored in the cloud. Storage of data in the cloud has many distinct
advantages over other storages. One thing is that data is spread evenly through the cloud in such a way
that there are multiple copies of the data and there are ways by which failure can be detected and the data
can be rebalanced on the fly. The I/O operations become simpler in the cloud such that browsing and
searching for something in 25GB or more of data becomes simpler in the cloud, which is nearly
impossible to do on a desktop.
The cloud computing applications also provide automatic reconfiguration of the resources based on the
service level agreements. When we are using applications out of the cloud, to scale the application with
respect to the load is a mundane task because the resources have to be gathered and then provided to the
users. If the load on the application is such that it is present only for a small amount of time as compared
to the time its working out of the load, but occurs frequently, then scaling of the resources becomes
tedious. But when the application is in the cloud, the load can be managed by spreading it to other
available nodes by making a copy of the application on to them. This can be reverted once the load goes
down. It can be done as and when needed. All these are done automatically such that the resources
maintain and manage themselves.
1.5 Advantages
Once the data is stored in the cloud, it is easier to get back-up and restore that data using the cloud.
2) Improved collaboration
Cloud applications improve collaboration by allowing groups of people to quickly and easily share
information in the cloud via shared storage.
3) Excellent accessibility
Cloud allows us to quickly and easily access store information anywhere, anytime in the whole world,
using an internet connection. An internet cloud infrastructure increases organization productivity and
efficiency by ensuring that our data is always accessible.
Cloud computing reduces both hardware and software maintenance costs for organizations.
5) Mobility
Cloud computing allows us to easily access all cloud data via mobile.
Cloud computing offers Application Programming Interfaces (APIs) to the users for access services on
the cloud and pays the charges as per the usage of service.
Cloud offers us a huge amount of storing capacity for storing our important data such as documents,
images, audio, video, etc. in one place.
8) Data security
Data security is one of the biggest advantages of cloud computing. Cloud offers many advanced features
related to security and ensures that data is securely stored and handled.
1.6 Disadvantages
1) Internet Connectivity
As you know, in cloud computing, every data (image, audio, video, etc.) is stored on the cloud, and we
access these data through the cloud by using the internet connection. If you do not have good internet
connectivity, you cannot access these data. However, we have no any other way to access data from the
cloud.
2) Vendor lock-in
Vendor lock-in is the biggest disadvantage of cloud computing. Organizations may face problems when
transferring their services from one vendor to another. As different vendors provide different platforms,
that can cause difficulty moving from one cloud to another.
3) Limited Control
As we know, cloud infrastructure is completely owned, managed, and monitored by the service provider,
so the cloud users have less control over the function and execution of services within a cloud
infrastructure.
4) Security
Although cloud service providers implement the best security standards to store important information.
But, before adopting cloud technology, you should be aware that you will be sending all your
organization's sensitive information to a third party, i.e., a cloud computing service provider. While
sending the data on the cloud, there may be a chance that your organization's information is hacked by
Hackers.
Chapter-2
History, Vision and Architecture of Cloud Computing
Cloud computing is one the most innovative technology of our time. Following is a brief history of
Cloud computing-
EARLY 1960S : - The computer scientist John McCarthy, come up with concept of timesharing,
and enabling Organization to simultaneously use an expensive mainframe. This computing is
described as a significant contribution to the development of the Internet, and a pioneer of Cloud
computing.
IN 1970 : - Using virtualization software like VMware. It becomes possible to run more than one
Operating System simultaneously in an isolated environment. It was possible to run a completely
different Computer (virtual machine) inside a different Operating System.
IN 1997 : - The first known definition of the term “Cloud Computing” seems to be by Prof.
Ramnath Chellappa in Dallas in 1997 – “A computing paradigm where the boundaries of computing
will be determined by economic rationale rather than technical limits alone.”
IN 1999 : - The arrival of Salesforce.com in 1999 pioneered the concept of delivering enterprise
applications via simple website. The services firm covered the way for both specialist and
mainstream software firms to deliver applications over the Internet.
IN 2003 : - The first public release of Xen, which creates a Virtual Machine Monitor (VMM) also
known as a hypervisor, a software system that allows the execution of multiple virtual guest
operating systems simultaneously on a single machine.
IN 2006 : - In 2006, Amazon expanded its cloud services. First was its Elastic Compute cloud
(EC2), which allowed people to access computers and run their own applications on them, all on the
cloud. Then they brought out Simple Storage Service (S3). This introduced the pay-as-you-go model
to both users and the industry as a whole, and it has basically become standard practice now.
IN 2013 : - The Worldwide Public Cloud Services Market totalled £78bn, up 18.5 per cent on
2012, with IaaS (infrastructure-as-a-service) the fastest growing market service.
IN 2014 : - In 2014, global business spending for infrastructure and services related to the cloud
will reach an estimated £103.8bn, up 20% from the amount spent in 2013 (Constellation Research).
Following are few forecasts of what we might expect in the coming future of Cloud computing:
Cloud computing will become even more prominent in the coming years with rapid,
continued growth of major global cloud data centres.
50% of all IT will be in the cloud within the next 5 – 10 years.
There will be a greater use of cloud technology as a whole across emerging markets such as
in the BRIC countries (Brazil, Russia, India and China) as they continue to develop and
progress. The uptake will be particularly evident in Asia where there is already a trend to stay
on the edge of the latest technology.
Data for companies and personal use will be available everywhere in standardized formats,
allowing us to easily consume and interact with one another at an even greater level.
The security and reliability of cloud computing will continue to evolve, ensuring that data
will be even more secure with numerous techniques employed.
We will not even consider ‘cloud’ as the key technology, instead we will focus on the
services and applications that it enables.
Combining cloud technology with the Internet of Things (IOT), Wearables and Bring Your
Own Device (BYOD) will become the norm in personal and working lives, so much so that
the presence of cloud technology as an enabler will be overlooked. An estimated 50% of
organisations will require employees to use their own devices by 2017.
The total global cloud computing spend will reach $241 Billion in 2020.
The future of the cloud is far from certain. The rapid pace at which technology has changed in
the last 5 years makes the next 5 near impossible to predict. However, it must be said that
ultimately the cloud is growing exponentially and will continue to do so for some time to come.
As we know, cloud computing technology is used by both small and large organizations to store the
information in cloud and access it from anywhere at any time using the internet connection.
o Front End
o Back End
Front End
The front end is used by the client. It contains client-side interfaces and applications that are required to
access the cloud computing platforms. The front end includes web servers (including Chrome, Firefox,
internet explorer, etc.), thin & fat clients, tablets, and mobile devices.
Back End
The back end is used by the service provider. It manages all the resources that are required to provide
cloud computing services. It includes a huge amount of data storage, security mechanism, virtual
machines, deploying models, servers, traffic control mechanisms, etc.
1. Client Infrastructure
Client Infrastructure is a Front-end component. It provides GUI (Graphical User Interface) to interact
with the cloud.
2. Application
The application may be any software or platform that a client wants to access.
3. Service
A Cloud Services manages that which type of service you access according to the client’s requirement.
i. Software as a Service (SaaS) – It is also known as cloud application services. Mostly, SaaS
applications run directly through the web browser means we do not require to download and install these
applications. Some important examples of SaaS are given below –
ii. Platform as a Service (PaaS) – It is also known as cloud platform services. It is quite similar
to SaaS, but the difference is that PaaS provides a platform for software creation, but using SaaS, we can
access software over the internet without the need of any platform.
iii. Infrastructure as a Service (IaaS) – It is also known as cloud infrastructure services. It is
responsible for managing applications data, middleware, and runtime environments.
Example: Amazon Web Services (AWS) EC2, Google Compute Engine (GCE), Cisco Metapod.
4. Runtime Cloud
Runtime Cloud provides the execution and runtime environment to the virtual machines.
5. Storage
Storage is one of the most important components of cloud computing. It provides a huge amount of
storage capacity in the cloud to store and manage data.
6. Infrastructure
It provides services on the host level, application level, and network level. Cloud infrastructure includes
hardware and software components such as servers, storage, network devices, virtualization software, and
other storage resources that are needed to support the cloud computing model.
7. Management
Management is used to manage components such as application, service, runtime cloud, storage,
infrastructure, and other security issues in the backend and establish coordination between them.
8. Security
9. Internet
The Internet is medium through which front end and back end can interact and communicate with each
other.
Chapter-3
Technologies
3.1 Cloud Computing Technologies
o Virtualization
o Service-Oriented Architecture (SOA)
o Grid Computing
o Utility Computing
3.1.1 Virtualization
Virtualization is the process of creating a virtual environment to run multiple applications and operating
systems on the same server. The virtual environment can be anything, such as a single instance or a
combination of many operating systems, storage devices, network application servers, and other
environments.
The concept of Virtualization in cloud computing increases the use of virtual machines. A virtual machine
is a software computer or software program that not only works as a physical computer but can also
function as a physical machine and perform tasks such as running applications or programs as per the
user's demand.
Types of Virtualization
i. Hardware virtualization
1) Hardware Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the
hardware system is known as hardware virtualization. The main job of hypervisor is to control and
monitoring the processor, memory and other hardware resources. After virtualization of hardware system,
we can install different operating system on it and run different applications on those OS.
Usage:
Hardware virtualization is mainly done for the server platforms, because controlling virtual machines is
much easier than controlling a physical server.
When the virtual machine software or virtual machine manager (VMM) is installed on the Host operating
system instead of directly on the hardware system is known as operating system virtualization.
Usage:
Operating System Virtualization is mainly used for testing the applications on different platforms of OS.
3) Server Virtualization:
When the virtual machine software or virtual machine manager (VMM) is directly installed on the Server
system is known as server virtualization.
Usage:
Server virtualization is done because a single physical server can be divided into multiple servers on the
demand basis and for balancing the load.
4) Storage Virtualization:
Storage virtualization is the process of grouping the physical storage from multiple network storage
devices so that it looks like a single storage device.
Usage:
Service Provider and Service consumer are the two major roles within SOA.
o In the air force, SOA infrastructure is used to deploy situational awareness systems.
Grid computing is also known as distributed computing. It is a processor architecture that combines
various different computing resources from multiple locations to achieve a common goal. In grid
computing, the grid is connected by parallel nodes to form a computer cluster. These computer clusters
are in different sizes and can run on any operating system.
use method. It minimizes the associated costs and maximizes the efficient use of resources. The
advantage of utility computing is that it reduced the IT cost, provides greater flexibility, and easier to
manage.
Large organizations such as Google and Amazon established their own utility services for computing
storage and application.
The cloud users enjoy utility computing model for interacting with cloud service providers. This Utility
computing is essentially not same as cloud computing. Utility computing is the aggregation of computing
resources, such as computation and storage, as a metered service similar to a traditional public utility like
electricity, water or telephone network. This service might be provided by a dedicated computer cluster
specifically built for the purpose of being rented out, or even an under-utilized supercomputer. And cloud
is one of such option of providing utility computing to the users.
Chapter-4
Cloud Computing Types and Models
4.1 Types of Cloud
There are the following 4 types of cloud that you can deploy according to the organization's needs-
o Public Cloud
o Private Cloud
o Hybrid Cloud
o Community Cloud
Public cloud is open to all to store and access information via the Internet using the pay-per-usage
method. In public cloud, computing resources are managed and operated by the Cloud Service Provider
(CSP).
Example: Amazon elastic compute cloud (EC2), IBM SmartCloud Enterprise, Microsoft, Google App
Engine, Windows Azure Services Platform.
o Public cloud is owned at a lower cost than the private and hybrid cloud.
o Public cloud is maintained by the cloud service provider, so do not need to worry about the
maintenance.
o Public cloud is easier to integrate. Hence it offers a better flexibility approach to consumers.
o Public cloud is location independent because its services are delivered through the internet.
o Performance depends upon the high-speed internet network link to the cloud provider.
Private cloud is also known as an internal cloud or corporate cloud. It is used by organizations to build
and manage their own data centres internally or by the third party. It can be deployed using Opensource
tools such as Openstack and Eucalyptus.
Based on the location and management, National Institute of Standards and Technology (NIST) divide
private cloud into the following two parts-
o Private cloud provides a high level of security and privacy to the users.
o Private cloud offers better performance with improved speed and space capacity.
o The organization has full control over the cloud because it is managed by the organization itself.
So, there is no need for the organization to depends on anybody.
o It is suitable for organizations that require a separate cloud for their personal use and data security
is the first priority.
o Private cloud is accessible within the organization, so the area of operations is limited.
o Private cloud is not suitable for organizations that have a high user base, and organizations that do
not have the prebuilt infrastructure, sufficient manpower to maintain and manage the cloud.
Hybrid Cloud is a combination of the public cloud and the private cloud. we can say:
Hybrid cloud is partially secure because the services which are running on the public cloud can be
accessed by anyone, while the services which are running on a private cloud can be accessed only by the
organization's users.
Example: Google Application Suite (Gmail, Google Apps, and Google Drive), Office 365 (MS Office on
the Web and One Drive), Amazon Web Services.
o Hybrid cloud is suitable for organizations that require more security than the public cloud.
o Hybrid cloud helps you to deliver new products and services more quickly.
o Hybrid cloud offers flexible resources because of the public cloud and secure resources because of
the private cloud.
o Managing a hybrid cloud is complex because it is difficult to manage more than one type of
deployment model.
o In the hybrid cloud, the reliability of the services depends on cloud service providers.
Community cloud allows systems and services to be accessible by a group of several organizations to
share the information between the organization and a specific community. It is owned, managed, and
operated by one or more organizations in the community, a third party, or a combination of them.
o Community cloud is cost-effective because the whole cloud is being shared by several
organizations or communities.
o Community cloud is suitable for organizations that want to have a collaborative cloud with more
security features than the public cloud.
o It provides better security than the public cloud.
o Community cloud allows us to share cloud resources, infrastructure, and other capabilities among
various organizations.
o The fixed amount of data storage and bandwidth is shared among all community members.
IaaS is also known as Hardware as a Service (HaaS). It is a computing infrastructure managed over the
internet. The main advantage of using IaaS is that it helps users to avoid the cost and complexity of
purchasing and managing the physical servers.
Characteristics of IaaS
Example: DigitalOcean, Linode, Amazon Web Services (AWS), Microsoft Azure, Google Compute
Engine (GCE), Rackspace, and Cisco Metacloud.
PaaS cloud computing platform is created for the programmer to develop, test, run, and manage the
applications.
Characteristics of PaaS
o Builds on virtualization technology, so resources can easily be scaled up or down as per the
organization's need.
o Support multiple languages and frameworks.
Example: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine, Apache
Stratos, Magento Commerce Cloud, and OpenShift.
SaaS is also known as "on-demand software". It is a software in which the applications are hosted by a
cloud service provider. Users can access these applications with the help of internet connection and web
browser.
Characteristics of SaaS
o Users are not responsible for hardware and software updates. Updates are applied automatically.
Example: BigCommerce, Google Apps, Salesforce, Dropbox, ZenDesk, Cisco WebEx, ZenDesk, Slack,
and GoToMeeting.
Chapter-5
Applications and Providers of Cloud Computing
While deploying an application, it is important to deploy it in a limited environment to test out the
workload and the comfort of using the application. Creating this environment is costly and would be a
complete waste if the application fails. Hence, many companies use the hybrid cloud approach, which
creates a platform for infrastructure and applications.
During limited peak usage, a hybrid cloud can expand – a feature that is preferred over hosting of large
infrastructures. You can even expand on the various services based on the pay-per-use service features
provided by Hybrid cloud services.
Cloud computing applications can help in creating a wonderful test and development environment for
many developers. Traditionally, such an environment would have required time, a hefty budget for setting
up the physical assets, and manpower. It is clear that setting up such an environment is not especially
cost-effective and will stretch the deadlines and budget for a project.
However, with the help of cloud computing, you can have all these resources delivered to you almost
instantly with a comparatively lower cost. This feature can also be combined with the automatic
allocation of virtual and physical resources.
Big data analysis means the use of advanced and diverse analytical techniques on large data sets (can be
terabytes or zettabytes). These data sets can be structured, unstructured, or semi-structured. One of the
biggest feats of cloud computing is its contribution to big data analysis. Due to the storage facility offered
by Cloud, people can now tap into unstructured, semi-structured, and structured data and convert them
into business value.
By analysing this data, businesses can find out market trends, buying patterns, and consumers and use this
knowledge for targeted marketing and advertisements. Social media often uses big data analysis to
understand the behavioural patterns of users and gain meaningful insight about them and suggest tailored
recommendations. Learn more about how big data analysis helps business.
5. Storage
Storage of data locally has always been a bit of a hassle. As we grew technologically, we required more
and more space to store data. For example, if we talk about something as simple as a game – a 1990s
game would only require about 8MB storage while games after 2017 would probably require above 30GB
of space.
Nowadays, people can use cloud to store and access their files. You can store it from multiple devices and
access the file from these devices as well as use other cloud-based services. Not only is storage on cloud
convenient, but it also comes with high speed, benefits of scalability, and has integrated security too.
The storage is almost unlimited against a specific amount paid, and there is no need for daily maintenance
of the data. Companies can store data on the premises or off-premises based on their compliance
requirements. It is also stored by the third party based on customer specifications.
6. Recovery
Traditionally, due to the lack of proper cloud-based services, recovery was difficult or almost near
impossible. Companies used to rely on different storage tools so that any loss of data can be retrieved
from
another storage. It wasn’t a very cost-effective process. There were rigid procedures for recovery, and the
fixed assets required regular maintenance.
However, with the help of cloud, disaster recovery solutions have become more cost-effective. Disaster
recovery solutions in cloud help in speeding up the recovery process from a mesh of varying physical
locations at a much cheaper cost than traditional, locally placed disaster recovery systems.
7. Backup
Backing up data is a complicated process, and many computer scientists and engineers are always trying
to modify and improve it. Previously, a set of drives or tapes were used. Data was manually collected and
dispatched to the backup facility. This came with a host of problems, like the loss of data between the
originating site and the backup site.
One of the common problems was running out of backup media. Human errors were often common too.
Plus, recovery from the backup devices took a lot of time. With the use of cloud-based backup services, it
is possible to dispatch the data automatically from any location using a wire. It is a secure means to
activate the backup process. The capacity of the cloud server is not an issue, and the backup can be
readily available from any device as well, making it so much more convenient.
The Amazon Web Services is flexible, scalable, and reliable and due to this many companies are
implementing it in their work. There is no upfront cost and the customer has to pay only for what they
have used. It is one of the leading cloud service providers among all.
With the help of the internet, the customer can access highly durable storage such as Amazon Glacier,
Amazon S3, and Amazon EBS. It also has a high-performance database such as Amazon Redshift,
Amazon Dynamo DB, Amazon ElastiCache and Amazon RDS.
VMs are based on the latest 2nd Gen Intel Scalable CPUs with 3.1 GHz frequency and deliver a
revolutionary new level of cloud computing. Fast-speed solid-state drives with awesome IOPS rate. Data
is stored 3x and always available with no lags.
Lightweight bhyve hypervisor and OS FreeBSD with simplified codebase help build new generation
virtual machines.
This hypervisor emulates all the functionality of the physical machine such as hardware and server into a
virtual one. There are numerous amounts of virtual machine available and each virtual machine can run
many operating systems.
In the data centre of Microsoft, there are many servers and each server consists of a hypervisor through
which multiple virtual machines can operate. With the help of Azure, it is easy for developers and IT
professionals to manage and deploy their applications and services.
The Google cloud platform is basically used for Google search and YouTube. There are various services
offered by Google Cloud such as data analysis, machine learning, and data storage.
The data stored in Google Cloud is secure and can access easily. It offers varieties of services from
infrastructure as a service to platform as a service. Google also provides a strong commitment to
security and stability.
With the help of the Google cloud platform, the user is free to think about the code and the feature which
are needed to develop without worrying about the operations side.
Here most of the services fully manage and details quite easy for the customer to concentrate on their
work. In this, machine learning and the use of API are very easy. The API also helps in speech detection
language translation very easily. So, it prefers among the customers.
The speed and agility of the cloud fulfil the requirement of the customer and make them feel satisfied. A
customer using IBM cloud can easily find growth opportunities, generating new revenue schemes and
improving the operational efficiency.
The uses of IBM cloud don’t have many barriers as compared to traditional technologies.
IBM cloud eliminates the complex problem and the problems which face by large companies. IBM Cloud
computing services are also helping home appliance manufacturer, retailer, and medical supply
businesses. It uses in because it offers the best services with the price as low as possible.
It provides many facilities to the beginner as well as professionals for easy access to the cloud.
It consists of many applications and services that provide access to a collection of software which uses
for video editing, web development, photography, and graphic designs. There are mobile applications as
well as computer applications which can use by the customers.
Creative Cloud allows you to work from anywhere and from any device as the files can save to the cloud
and can access at anytime from anywhere.
Creative Cloud was the first host on Amazon Web Services but as per the new agreement with
Microsoft, the Adobe creative cloud now hosted on Microsoft Azure.
Some most common Security Risks of Cloud Computing are given below-
Data Loss
Data loss is the most common cloud security risks of cloud computing. It is also known as data leakage.
Data loss is the process in which data is being deleted, corrupted, and unreadable by a user, software, or
application. In a cloud computing environment, data loss occurs when our sensitive data is somebody
else's hands, one or more data elements cannot be utilized by the data owner, hard disk is not working
properly, and software is not updated.
Data Breach
Data Breach is the process in which the confidential data is viewed, accessed, or stolen by the third party
without any authorization, so organization's data is hacked by the hackers.
Vendor lock-in
Vendor lock-in is the of the biggest security risks in cloud computing. Organizations may face problems
when transferring their services from one vendor to another. As different vendors provide different
platforms, that can cause difficulty moving one cloud to another.
Migrating, integrating, and operating the cloud services is complex for the IT staff. IT staff must require
the extra capability and skills to manage, integrate, and maintain the data to the cloud.
Spectre & Meltdown allows programs to view and steal data which is currently processed on computer. It
can run on personal computers, mobile devices, and in the cloud. It can store the password, your personal
information such as images, emails, and business documents in the memory of other running programs.
Denial of service (DoS) attacks occur when the system receives too much traffic to buffer the server.
Mostly, DoS attackers target web servers of large organizations such as banking sectors, media
companies, and government organizations. To recover the lost data, DoS attackers charge a great deal of
time and money to handle the data.
Account hijacking
Account hijacking is a serious security risk in cloud computing. It is the process in which individual user's
or organization's cloud account (bank account, e-mail account, and social media account) is stolen by
hackers. The hackers use the stolen account to perform unauthorized activities.
5.4 Conclusion
Cloud computing is a powerful new abstraction for large scale data processing systems which is scalable,
reliable and available. In cloud computing, there are large self-managed server pools available which
reduces the overhead and eliminates management headache. Cloud computing services can also grow and
shrink according to need. Cloud computing is particularly valuable to small and medium businesses,
where effective and affordable IT tools are critical to helping them become more productive without
spending lots of money on in-house resources and technical equipment. Also, it is a new emerging
architecture needed to expand the Internet to become the computing platform of the future.
References
Bhaskar Prasad Rimal, Eunmi Choi, and Ian Lumb. (2009). A taxonomy and survey of cloud
computing systems. Networked Computing and Advanced Information Management, International
Conference on, 0:44–51.
D. Chen and H. Zhao. (2012). “Data Security and Privacy Protection Issues in Cloud Computing”, in
International Conference on Computer Science and Electronics Engineering (ICCSEE), vol.1, pp.647-
651.
F.M. Aymerich, G. Fenu, and S. Surcis. (2008, August). An approach to a cloud computing network.
Applications of Digital Information and Web Technologies, 2008. ICADIWT 2008., pages 113 –118.
K.I. Juster. (2011, 8 Nov). Cloud Computing Can Close the Development Gap. http://www.
salesforce.com/assets/pdf/misc/IT-development-paper.pdf.
https://www.javatpoint.com/cloud-computing-tutorial.
Michael Armbrust, Armando Fox, Rean Griffith, Anthony D. Joseph, Randy H. Katz, Andrew
Konwinski, Gunho Lee, David A. Patterson, Ariel Rabkin, Ion Stoica, and Matei Zaharia. (2009,
Feb): Above the clouds: A Berkeley view of cloud computing. Technical Report UCB/EECS-2009-28,
EECS Department, University of California, Berkeley.
P. Mell and T. Grance. (2011). “The NIST Definition of Cloud Computing,” NIST Special Publication
800-145. http://csrc.nist.gov/publications//800-145/SP800-145.pdf.
Ryan PhD, Patrick Spaulding and Merchant, Ronak and Falvey, Sarah. (2011, July 30). Regulation
of the Cloud in India. Journal of Internet Law, Vol. 15, No. 4, p. 7, October 2011, Available at SSRN:
https://ssrn.com/abstract=1941494.
S.L. Garfinkel. (2007). Commodity grid computing with amazon’s S3 and EC2.
https://www.usenix.org/publications/login/2007-02/openpdfs/ garfinkel.pdf.